Android

Chgrp-kommando i Linux (ändra grupp)

9. Linux - Change owner and group owner of file and directory in linux using "chown"

9. Linux - Change owner and group owner of file and directory in linux using "chown"

Innehållsförteckning:

Anonim

I Linux är varje fil associerad med en ägare och en grupp och har behörigheter som avgör vilka användare som kan läsa, skriva eller köra filen.

chgrp kommandot ändrar gruppägande av givna filer.

Den här guiden förklarar hur man använder chgrp .

chgrp Kommandosyntax

chgrp kommandot har följande form:

chgrp GROUP FILE..

  • GROUP , namn på den nya gruppen eller grupp-ID (GID). Numeriskt GID måste förinställas med symbolen + . FILE.. , namn på en eller flera filer.

Till skillnad från chown kommandot som låter dig ändra användar- och gruppägande, ändrar chgrp endast gruppägande.

ls -l kommandot ls -l att ta reda på vilken grupp filen tillhör.

Endast root eller användare med sudo-privilegier kan ändra gruppägande till en fil.

Hur man ändrar filgruppsägande

För att ändra gruppägarskapet för en fil eller katalog påkallar du chgrp kommandot följt av det nya gruppnamnet och målfilen som argument.

För att till exempel ändra gruppen med filename till www-data du skulle köra:

chgrp www-data filename

Du kan också skicka flera filer som argument till chgrp kommandot:

chgrp www-data file1 file2 dir1

Använd alternativet -v att få information om filerna som behandlas:

chgrp www-data file1 file2

changed group of 'file1' from nginx to www-data group of 'file2' retained as www-data

För att bara skriva ut information om de filer som gruppen faktiskt ändrar använder -c istället för -v .

Numerisk grupp-ID (GID) kan användas istället för användarnamn. Följande exempel ändrar filens gruppägande till en ny grupp med GID på 1000:

chgrp +1000 filename

Hur man ändrar Symlinks-gruppägande

När du inte arbetar rekursivt är standardbeteendet för chgrp kommandot att ändra gruppägande till symlinkmålen, inte själva symbollänkar.

Om du till exempel försöker ändra gruppen för den symboliska länken symlink1 som pekar på /opt/file1 kommer chgrp att ändra ägandet av filen eller kataloga symlinkpunkterna till:

chgrp www-data symlink1

Chansen är stor att du istället för att ändra målgruppen får ett "inte kan förändra 'symlink1': Tillstånd nekad" -fel.

Felet händer eftersom symlänkar som standard är de flesta av Linux-distributioner skyddade och du inte kan använda målfiler. Det här alternativet anges i /proc/sys/fs/protected_symlinks . 1 betyder aktiverat och 0 inaktiverat. Vi rekommenderar att du inte inaktiverar symlink-skyddet.

För att ändra gruppägande av själva symlänken använder du alternativet -h :

chgrp -h www-data symlink1

Hur man ändrar rekursivt gruppägande

För att rekursivt ändra gruppägande av alla filer och kataloger under en given katalog, använd alternativet -R .

Till exempel kommer följande kommando att ändra äganderätten till alla filer och kataloger under katalogen /var/www till www-data datagruppen:

chgrp -R www-data /var/www

När det rekursiva alternativet anges kommer chgrp inte att gå igenom de symboliska länkarna och kommer inte att göra några ändringar i symlänkarna. För att ändra gruppägande av symboliska länkar, passera alternativet -h :

chgrp -hR www-data /var/www

Andra alternativ som kan användas vid rekursivt ändring av gruppägande är -H och -L .

Om argumentet som skickas till chgrp kommandot är en symbolisk länk kommer alternativet -H att få kommandot att korsa det. -L ber chgrp att korsa varje symlink till en katalog som stöds på. I de flesta fall bör du inte använda de här alternativen eftersom du kan skada ditt system eller skapa en säkerhetsrisk.

Slutsats

chgrp ändrar gruppägande av filer, kataloger och symlänkar.

Även om du kan använda det mer populära chown kommandot för att ändra gruppen, har chgrp en enkel syntax som är lätt att komma ihåg.

För mer information om chgrp kommandot, besök chgrp man-sidan eller skriv man chgrp i din terminal.

chgrp terminal