Chmod: Skillnad mellan sidversioner

Från Wiki.linux.se
Hoppa till navigering Hoppa till sök
Ingen redigeringssammanfattning
 
(En mellanliggande sidversion av samma användare visas inte)
Rad 1: Rad 1:
=== NAMN ===
Självklart, här är en översatt manualsida för `chmod`-kommandot i MediaWiki-format, inklusive alla parametrar, exempel och skillnader mellan macOS och Linux:
chmod - ändra fillägesbitar


==== SYNOPSIS ====
```mediawiki
chmod [OPTION]... MODE[,MODE]... FILE...
== chmod - Ändra filers rättigheter ==
Kommandot `chmod` används för att ändra åtkomsträttigheter för filer och kataloger i ett Unix-liknande operativsystem.


chmod [OPTION]... OCTAL-MODE FILE...
=== Syntax ===
chmod [ALTERNATIV]... MODE [FIL]...
chmod [ALTERNATIV]... --reference=RFILE FIL...


chmod [OPTION]... --reference=RFILE FILE...
=== Beskrivning ===
Kommandot `chmod` ändrar åtkomsträttigheter för de angivna filerna och katalogerna enligt det specificerade modet (MODE). Rättigheterna kan anges symboliskt eller numeriskt.


==== BESKRIVNING ====
=== Alternativ ===
Denna manualsida dokumenterar GNU-versionen av chmod. chmod ändrar fillägesbitarna för varje given fil enligt läge, vilket kan vara antingen en symbolisk representation av ändringar som ska göras, eller ett oktalt tal som representerar bitmönstret för de nya modbitarna.
Kommandot `chmod` stöder flera alternativ som kan användas för att justera hur rättigheterna ändras:


Formatet för ett symboliskt läge är [ugoa...][[-+=][perms...]...], där perms är antingen noll eller fler bokstäver från mängden rwxXst, eller en enstaka bokstav från mängden ugo. Flera symboliska lägen kan anges, separerade med kommatecken.
* -c, --changes - Rapportera endast ändringar som görs.
* -f, --silent, --quiet - Undertryck felmeddelanden.
* -v, --verbose - Rapportera alla filer som bearbetas.
* --no-preserve-root - Tillåt förändringar av / (standard).
* --preserve-root - Tillåt inte förändringar av /.
* --reference=RFILE - Använd rättigheterna från RFILE istället för att ange MODE.
* -R, --recursive - Ändra rättigheter rekursivt för kataloger och deras innehåll.


En kombination av bokstäverna ugoa styr vilka användares åtkomst till filen som kommer att ändras: användaren som äger den (u), andra användare i filens grupp (g), andra användare som inte ingår i filens grupp (o), eller alla användare (a). Om ingen av dessa anges är effekten som om (a) gavs, men bitar som är satta i umasken påverkas inte.
=== Symbolisk notation ===
Rättigheter kan anges symboliskt med följande format:
<code>
chmod [who][operator][permission] fil
</code>
* `who` kan vara:
  * u - user (ägare)
  * g - group (grupp)
  * o - others (andra)
  * a - all (alla)
* `operator` kan vara:
  * + - lägg till rättigheter
  * - - ta bort rättigheter
  * = - sätt rättigheter
* `permission` kan vara:
  * r - läs
  * w - skriv
  * x - exekvera


Operatören + gör att de valda fillägesbitarna läggs till de befintliga fillägesbitarna för varje fil; - gör att de tas bort; och = gör att de läggs till och gör att onämnda bitar tas bort förutom att en katalogs onämnda set användar- och grupp-ID-bitar inte påverkas.
Exempel:
<code>
chmod u+x fil - Lägg till exekveringsrättigheter för ägaren
chmod g-w fil - Ta bort skrivrättigheter för gruppen
chmod o=r fil - Sätt läsrättigheter för andra


Bokstäverna rwxXst väljer fillägesbitar för de berörda användarna: läs (r), skriv (w), kör (eller sök efter kataloger) (x), kör/sök endast om filen är en katalog eller redan har körrättighet för vissa användare (X), ställ in användar- eller grupp-ID vid exekvering (s), begränsad raderingsflagga eller sticky bit (t). Istället för en eller flera av dessa bokstäver kan du ange exakt en av bokstäverna ugo: behörigheterna som ges till användaren som äger filen (u), behörigheterna som beviljas andra användare som är medlemmar i filens grupp (g), och de behörigheter som beviljats ​​användare som inte tillhör någon av de två föregående kategorierna (o).
=== Numerisk notation ===
Rättigheter kan också anges numeriskt med en tresiffrig oktalrepresentation, där varje siffra representerar rättigheter för user (ägare), group (grupp) och others (andra):
<code>
chmod 755 fil - Sätt rättigheter till rwxr-xr-x
chmod 644 fil - Sätt rättigheter till rw-r--r--
chmod 777 fil - Sätt rättigheter till rwxrwxrwx
</code>


Ett numeriskt läge är från en till fyra oktala siffror (0-7), härledda genom att lägga ihop bitarna med värdena 4, 2 och 1. Utelämnade siffror antas vara inledande nollor. Den första siffran väljer inställt användar-ID (4) och grupp-ID (2) och begränsad radering eller sticky (1) attribut. Den andra siffran väljer behörigheter för användaren som äger filen: läs (4), skriv (2) och kör (1); den tredje väljer behörigheter för andra användare i filens grupp, med samma värden; och den fjärde för andra användare som inte ingår i filens grupp, med samma värden.
=== Exempel ===
Här är några praktiska exempel som visar hur du kan använda `chmod`-kommandot:


chmod ändrar aldrig tillstånden för symboliska länkar; chmod-systemanropet kan inte ändra sina behörigheter. Detta är inget problem eftersom tillstånden för symboliska länkar aldrig används. Men för varje symbolisk länk som listas på kommandoraden ändrar chmod behörigheterna för den pekade till filen. Däremot ignorerar chmod symboliska länkar som påträffas under
* För att ge ägaren läs-, skriv- och exekveringsrättigheter, och ge gruppen och andra endast läs- och exekveringsrättigheter:
<code>
chmod 755 fil
</code>


rekursiva kataloggenomgångar.
* För att ge alla användare skrivrättigheter:
<code>
chmod a+w fil
</code>


==== SETUID OCH SETGID BITS ====
* För att rekursivt ändra rättigheter för en katalog och dess innehåll:
chmod rensar set-group-ID-biten i en vanlig fil om filens grupp-ID inte matchar användarens effektiva grupp-ID eller ett av användarens kompletterande grupp-ID, om inte användaren har lämpliga behörigheter. Ytterligare begränsningar kan göra att bitarna för set-user-ID och set-group-ID för MODE eller RFILE ignoreras. Detta beteende beror på policyn och funktionen hos det underliggande chmod-systemanropet. Vid tveksamhet, kontrollera det underliggande systemets beteende.
<code>
chmod -R 755 katalog
</code>


För kataloger bevarar chmod set-user-ID och set-group-ID bitar om du inte uttryckligen anger något annat. Du kan ställa in eller rensa bitarna med symboliska lägen som  u+s  och  g-s. För att rensa dessa bitar för kataloger med ett numeriskt läge krävs ytterligare en inledande nolla, eller inledande = som 00755 eller =755
* För att använda rättigheter från en annan fil:
<code>
chmod --reference=exempelfil fil
</code>


===== '''BEGRÄNSAD RADERINGSFLAGGA ELLER KLIFTIG BIT''' =====
=== Skillnader mellan macOS och Linux ===
Den begränsade raderingsflaggan eller sticky biten är en enda bit, vars tolkning beror på filtypen. För kataloger förhindrar det oprivilegierade användare från att ta bort eller byta namn en fil i katalogen om de inte äger filen eller katalogen. detta kallas flaggan för begränsad radering för katalogen och finns vanligtvis i kataloger som är skrivbara i världen som /tmp. För vanliga filer på vissa äldre system sparar biten programmets textbild växlingsenheten så att den laddas snabbare när den körs; detta kallas den klibbiga biten.
Det finns några viktiga skillnader att tänka när man använder `chmod`-kommandot macOS jämfört med Linux:


===== ALTERNATIV =====
* Standardinstallationer: På de flesta Linux-distributioner är `chmod` en del av GNU coreutils, medan macOS använder BSD-versionen av `chmod`. Detta innebär att vissa alternativ och beteenden kan skilja sig åt.
Ändra läget för varje FIL till MODE. Med --reference, ändra läget för varje FIL till det för RFILE.
* Alternativ och funktioner: GNU `chmod` (Linux) och BSD `chmod` (macOS) kan ha olika uppsättningar av alternativ och stöd för olika funktioner. Till exempel kan vissa avancerade alternativ vara specifika för GNU `chmod`.


===== ''-c, ---changes'' =====
Här är några exempel som visar skillnaderna:
som utförligt men rapportera bara när en ändring görs


===== ''-f, --silent, --quiet'' =====
* På Linux kan du använda `chmod --reference` för att använda rättigheter från en annan fil:
dämpa de flesta felmeddelanden
<code>
chmod --reference=exempelfil fil
</code>
På macOS kan samma alternativ saknas eller ha begränsad funktionalitet.


===== ''-v, --verbose'' =====
Det är alltid bra att konsultera `man`-sidan för `chmod` på din specifika plattform för att se vilka alternativ och funktioner som är tillgängliga.
mata ut en diagnostik för varje fil som bearbetas


===== ''--no-preserve-root'' =====
=== Felsökning ===
behandla inte '/' speciellt (standardinställningen)
Om du får ett felmeddelande när du använder `chmod`, kontrollera följande:


===== ''--preserve-root'' =====
* Att filen eller katalogen du försöker ändra rättigheter för faktiskt existerar.
misslyckas med att fungera rekursivt på '/'
* Att du har tillräckliga rättigheter för att ändra rättigheterna för filen eller katalogen.
* Att syntaxen för ditt kommando är korrekt. Kontrollera att du använder rätt alternativ och parametrar.


===== ''--referens=RFIL'' =====
=== Se även ===
använd RFILEs läge istället för MODE-värden
* [[chown]] - Ändra ägare och grupp för filer och kataloger.
* [[ls]] - Lista innehållet i en katalog med detaljerad information, inklusive rättigheter.
* [[umask]] - Sätt standardrättigheter för nya filer och kataloger.


===== -R, --rekursiv =====
=== Källor ===
ändra filer och kataloger rekursivt
* [https://www.gnu.org/software/coreutils/manual/coreutils.html#chmod-invocation GNU coreutils manual]


===== --help visa denna hjälp och avsluta =====
[[Kategori:Linuxkommandon]]
 
===== --version =====
mata ut versionsinformation och avsluta
 
Varje MODE har formen '[ugoa]*([-+=]([rwxXst]*|[ugo]))+|[-+=][0-7]+'.
 
===== FÖRFATTARE =====
Skriven av David MacKenzie och Jim Meyering.
 
==== REPORTING BUGS ====
      GNU coreutils online help: <https://www.gnu.org/software/coreutils/>
 
      Report chmod translation bugs to <https://translationproject.org/team/>
 
==== COPYRIGHT ====
      Copyright © 2018 Free Software Foundation, Inc.  License GPLv3+: GNU GPL version 3 or later <<nowiki>https://gnu.org/licenses/gpl.html</nowiki>>.
 
      This is free software: you are free to change and redistribute it.  There is NO WARRANTY, to the extent permitted by law.
 
==== SE ÄVEN ====
      [[chmod]](2)
 
      Full documentation at: <https://www.gnu.org/software/coreutils/chmod>
 
      or available locally via: info '(coreutils) chmod invocation'
 
[[Kategori:Linux kommando]]
[[Kategori:Linux filkommando]]

Nuvarande version från 26 maj 2024 kl. 07.16

Självklart, här är en översatt manualsida för `chmod`-kommandot i MediaWiki-format, inklusive alla parametrar, exempel och skillnader mellan macOS och Linux:

```mediawiki

chmod - Ändra filers rättigheter

Kommandot `chmod` används för att ändra åtkomsträttigheter för filer och kataloger i ett Unix-liknande operativsystem.

Syntax

chmod [ALTERNATIV]... MODE [FIL]...
chmod [ALTERNATIV]... --reference=RFILE FIL...

Beskrivning

Kommandot `chmod` ändrar åtkomsträttigheter för de angivna filerna och katalogerna enligt det specificerade modet (MODE). Rättigheterna kan anges symboliskt eller numeriskt.

Alternativ

Kommandot `chmod` stöder flera alternativ som kan användas för att justera hur rättigheterna ändras:

  • -c, --changes - Rapportera endast ändringar som görs.
  • -f, --silent, --quiet - Undertryck felmeddelanden.
  • -v, --verbose - Rapportera alla filer som bearbetas.
  • --no-preserve-root - Tillåt förändringar av / (standard).
  • --preserve-root - Tillåt inte förändringar av /.
  • --reference=RFILE - Använd rättigheterna från RFILE istället för att ange MODE.
  • -R, --recursive - Ändra rättigheter rekursivt för kataloger och deras innehåll.

Symbolisk notation

Rättigheter kan anges symboliskt med följande format:


chmod [who][operator][permission] fil

  • `who` kan vara:
 * u - user (ägare)
 * g - group (grupp)
 * o - others (andra)
 * a - all (alla)
  • `operator` kan vara:
 * + - lägg till rättigheter
 * - - ta bort rättigheter
 * = - sätt rättigheter
  • `permission` kan vara:
 * r - läs
 * w - skriv
 * x - exekvera

Exempel:


chmod u+x fil - Lägg till exekveringsrättigheter för ägaren
chmod g-w fil - Ta bort skrivrättigheter för gruppen
chmod o=r fil - Sätt läsrättigheter för andra

Numerisk notation

Rättigheter kan också anges numeriskt med en tresiffrig oktalrepresentation, där varje siffra representerar rättigheter för user (ägare), group (grupp) och others (andra):


chmod 755 fil - Sätt rättigheter till rwxr-xr-x
chmod 644 fil - Sätt rättigheter till rw-r--r--
chmod 777 fil - Sätt rättigheter till rwxrwxrwx

Exempel

Här är några praktiska exempel som visar hur du kan använda `chmod`-kommandot:

  • För att ge ägaren läs-, skriv- och exekveringsrättigheter, och ge gruppen och andra endast läs- och exekveringsrättigheter:

chmod 755 fil

  • För att ge alla användare skrivrättigheter:

chmod a+w fil

  • För att rekursivt ändra rättigheter för en katalog och dess innehåll:

chmod -R 755 katalog

  • För att använda rättigheter från en annan fil:

chmod --reference=exempelfil fil

Skillnader mellan macOS och Linux

Det finns några viktiga skillnader att tänka på när man använder `chmod`-kommandot på macOS jämfört med Linux:

  • Standardinstallationer: På de flesta Linux-distributioner är `chmod` en del av GNU coreutils, medan macOS använder BSD-versionen av `chmod`. Detta innebär att vissa alternativ och beteenden kan skilja sig åt.
  • Alternativ och funktioner: GNU `chmod` (Linux) och BSD `chmod` (macOS) kan ha olika uppsättningar av alternativ och stöd för olika funktioner. Till exempel kan vissa avancerade alternativ vara specifika för GNU `chmod`.

Här är några exempel som visar skillnaderna:

  • På Linux kan du använda `chmod --reference` för att använda rättigheter från en annan fil:

chmod --reference=exempelfil fil

På macOS kan samma alternativ saknas eller ha begränsad funktionalitet.

Det är alltid bra att konsultera `man`-sidan för `chmod` på din specifika plattform för att se vilka alternativ och funktioner som är tillgängliga.

Felsökning

Om du får ett felmeddelande när du använder `chmod`, kontrollera följande:

  • Att filen eller katalogen du försöker ändra rättigheter för faktiskt existerar.
  • Att du har tillräckliga rättigheter för att ändra rättigheterna för filen eller katalogen.
  • Att syntaxen för ditt kommando är korrekt. Kontrollera att du använder rätt alternativ och parametrar.

Se även

  • chown - Ändra ägare och grupp för filer och kataloger.
  • ls - Lista innehållet i en katalog med detaljerad information, inklusive rättigheter.
  • umask - Sätt standardrättigheter för nya filer och kataloger.

Källor