Chmod: Skillnad mellan sidversioner

Från Wiki.linux.se
Hoppa till navigering Hoppa till sök
Ingen redigeringssammanfattning
 
(5 mellanliggande sidversioner av 2 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
* -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.


lägen kan anges, separerade med kommatecken.
=== 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


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.
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


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.
=== 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>


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).
=== Exempel ===
Här är några praktiska exempel som visar hur du kan använda `chmod`-kommandot:


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.
* 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>


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 alla användare skrivrättigheter:
<code>
chmod a+w fil
</code>


rekursiva kataloggenomgångar.
* För att rekursivt ändra rättigheter för en katalog och dess innehåll:
<code>
chmod -R 755 katalog
</code>


==== SETUID OCH SETGID BITS ====
* För att använda rättigheter från en annan fil:
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 --reference=exempelfil fil
</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
=== 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:


===== '''BEGRÄNSAD RADERINGSFLAGGA ELLER KLIFTIG BIT''' =====
* 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.
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 på 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 på växlingsenheten så att den laddas snabbare när den körs; detta kallas den klibbiga biten.
* 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`.


===== ALTERNATIV =====
Här är några exempel som visar skillnaderna:
Ändra läget för varje FIL till MODE. Med --reference, ändra läget för varje FIL till det för RFILE.


===== ''-c, ---changes'' =====
* På Linux kan du använda `chmod --reference` för att använda rättigheter från en annan fil:
som utförligt men rapportera bara när en ändring görs
<code>
chmod --reference=exempelfil fil
</code>
På macOS kan samma alternativ saknas eller ha begränsad funktionalitet.


===== ''-f, --silent, --quiet'' =====
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.
dämpa de flesta felmeddelanden


===== ''-v, --verbose'' =====
=== Felsökning ===
mata ut en diagnostik för varje fil som bearbetas
Om du får ett felmeddelande när du använder `chmod`, kontrollera följande:


===== ''--no-preserve-root'' =====
* Att filen eller katalogen du försöker ändra rättigheter för faktiskt existerar.
behandla inte '/' speciellt (standardinställningen)
* 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.


===== ''--preserve-root'' =====
=== Se även ===
misslyckas med att fungera rekursivt på '/'
* [[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.


===== ''--referens=RFIL'' =====
=== Källor ===
använd RFILEs läge istället för MODE-värden
* [https://www.gnu.org/software/coreutils/manual/coreutils.html#chmod-invocation GNU coreutils manual]


===== -R, --rekursiv =====
[[Kategori:Linuxkommandon]]
ändra filer och kataloger rekursivt
 
===== --help visa denna hjälp och avsluta =====
 
===== --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: <<nowiki>https://www.gnu.org/software/coreutils/</nowiki>>
 
      Report chmod translation bugs to <<nowiki>https://translationproject.org/team/</nowiki>>
 
==== 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: <<nowiki>https://www.gnu.org/software/coreutils/chmod</nowiki>>
 
      or available locally via: info '(coreutils) chmod invocation'

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