I Linux används kommandot change group eller chgrp huvudsakligen för att ändra systemets användargrupp. Kommandot chgrp fungerar för både Linux och andra Unix-liknande operativsystem. Om du är systemadministratör måste du redan veta att kommandona chgrp, chmod och chown är de mest kraftfulla och mest använda terminalkommandona.
Vanligtvis körs chgrp-kommandot med sudo- eller root-privilegiet på systemet, men om du är ägaren till den specifika filen eller katalogen kan du också köra kommandot change group. De vanligaste användningsområdena för kommandot change group är att installera ett nytt paket i gruppen, flytta en fil till en annan katalog i användargruppen och redigera en fil som inte går att läsa/skriva. Detta chgrp-kommando kan vara mycket användbart och en livräddare i kritiska situationer.
Varför chgrp, när chown kan göra samma sak?
Du kanske har undrat varför du behöver använda kommandot gruppändring medan du kan ändra hela ägandet med ett chown-kommando. Här är svaret varför; Utan tvekan är kommandot chown ett mycket kraftfullt kommando. Ibland kan kommandot chown göra oönskade och oacceptabla ändringar. För att skydda dina filer från vårdslös och oavsiktlig användning av kommandot chown är det säkert att använda kommandot chgrp.
kommandot chgrp (Change Group) i Linux
Kommandot chgrp används ofta för att ändra äganderätten till en enskild fil eller en grupp. Om du är ägare till projektet och nu vill lämna över dina filer, eller om du vill lägga till en ny gruppmedlem till ditt team utan att ändra hela katalogen, kan du tycka att kommandot ändra grupp är mycket användbart.
Även om du inte är den primära ägaren av filen, men tillhör gruppen och har sudo-åtkomst, kan du lägga till medlemmar, ändra gruppbehörighet, lägga till fler medlemmar i huvud- eller följegruppen. I det här inlägget kommer vi att titta på de vanligaste och mest använda chgrp-kommandona i Linux.
1. Kontrollera gruppinformation med chgrp
I början av chgrp-kommandot kanske du vill veta gruppnamnet för att vara säker på att du är med i gruppen. För att göra det kan du helt enkelt köra kommandot i ditt terminalskal. I gengäld kommer du att kunna se användarens namn, grupp och fildetaljer.
ls -l
2. chgrp kommandosyntax
Syntaxen för gruppändringskommandot i Linux är mycket enkel och problemfri att förstå. Detta plattformsoberoende terminalkommando kan köras på alla större Linux-datorer, servrar och Unix-liknande operativsystem. Detta är det grundläggande syntaxmönstret för kommandot chgrp.
chgrp [OPTION]… GROUP path/FILE_NAME sudo addgroup ubuntupitdemo sudo chgrp ubuntupitdemo test.txt ls -l
3. Lägg till användare i gruppen
Som jag redan nämnt kan du lägga till fler personer i din arbetsgrupp eller kataloggrupp om du har sudo-åtkomst. Här är kommandot som du kan köra i terminalskalet. Här har jag till exempel lagt till användaren i användargruppen.
$ sudo useradd ubuntupitdemo # touch test.txt # ls -lt test.txt
4. chgrp-kommandoegenskap
Om du behöver ändra äganderätten till en fil, mapp eller katalog kan du enkelt köra följande chgrp-kommando i ditt skal. Här kommer jag till exempel att skapa en ny katalog och ändra gruppen för denna katalog.
sudo mkdir New_Dir sudo chgrp ubuntupitdemo New_Dir
5. Ändra gruppbehörighet rekursivt
På Linux kan du ändra ägandet av en katalog genom kommandot ändra grupp. Följande chgrp-kommando med en -R-flagga låter dig definiera de element inom gruppen som exakt du behöver ändra från den aktiva kataloguppsättningen.
sudo chgrp -R ubuntupitdemo New_Dir
6. chgrp-kommando med referensfil
Om du behöver använda en tidigare referens eller referens eller matcha en annan grupp kan du använda följande ändra gruppkommando i ditt skal. Här måste du lägga till flaggan -R med referenssyntaxen.
sudo chgrp -R --reference=test.txt New_Dir
7. chgrp kommando med mjuk länk
I Linux finns det många operationer och mappar i filsystemet, där den mjuka länken i en katalog används för att indikera den ursprungliga katalogen. Men om du behöver ändra gruppen för den mappen kan du använda syntaxen –dereference/ och –no-dereference med kommandot change group.
sudo chgrp --dereference ubuntupitdemo symbolic_link
När du använder syntaxen -dereference kommer det att ändra det ursprungliga namnet på den gruppen. Å andra sidan kommer syntax som inte avviker från endast att byta namn på den symboliska länken eller mjuka länken medan den ursprungliga mappen behålls oförändrad.
8. Visa chgrp-exekveringsdetaljer
För systemadministratörer och avancerade Linux-användare kommer detta kommando att vara användbart. Om du vill se ändringsloggen för en fil på ditt system, kör det nämnda kommandot.
sudo chgrp -c -R [GROUP_NAME] [DIRECTORY/FILE_NAME] sudo chgrp -c -R ubuntupitdemo example
9. Dölj chgrp-kommandofel
Om du bara behöver visa den slutliga utmatningen av ett kommando och behöver dölja alla fel från terminalskalet, kommer kommandot för switchgrupp som nämns nedan med en -f-flagga att dölja alla fel.
sudo chgrp -f [GROUP_NAME] [DIRECTORY/FILE_NAME]
10. Lägg till flera filer med kommandot chgrp
Om du behöver ändra gruppen med flera filer samtidigt, kan du använda kommandot ändra grupp som nämns nedan som ett array-argument i skalet.
sudo chgrp www-data file1 file2 dir1
11. Kör kommandon chown och chgrp tillsammans
Om du funderar på att använda chown och chgrp kombinerade i samma kommando är det inte heller omöjligt. På ett sätt kan du först lägga till kommandot chown och sedan kan du definiera vilken användargrupp du vill tilldela för det kommandot. Kommandot nedan kan hjälpa dig att förstå kommandona och syntaxen.
$ chown someusername:somegroupname filename.ext $ sudo chown user_name:group _name file_name
Du kan hänvisa till man-sidorna för chown- och chgrp-kommandona på ditt Linux-system.
man chown man chgrp
Bonustips: Problem du kan möta i kommandot chgrp
Här kommer jag att dela med mig av svaren på några av de vanligaste frågorna om kommandot switch group i Linux. Kontrollera om du behöver lösa någon av följande situationer.
Om du stöter på fel när du kör kommandot chgrp på din Linux-server eller skrivbord, se till att du har inkluderat katalogsökvägen. I de flesta fall orsakar det inga problem på skrivbordet, men var försiktig när du kör kommandot chgrp på Linux-, Apache-, Nginx- eller SSH-servrar.
Om du behöver återställa gruppväxlingsregler på ditt filsystem kan du använda kommandot setfacl för att återställa katalogägandet. Kommandona setfacl och getfacl som nämns nedan är effektiva för att återställa gruppägande.
setfacl --restore={dir}.facl
getfacl -R {dir} >{dir}.facl
I vissa fall kan du också få problem med att köra kommandot chgrp på Linux. I så fall kan du redigera sudoers-filen på ditt system. Sudoers-filen är drivrutinen som kan definiera vilken grupp användare som kan utföra vilka kommandon. Du kan hitta sudoers-filerna i katalogen /etc/sudoers.
Perspektiv!
Att använda kommandot switch group gör din Linuxanvändningsupplevelse mer professionell och kraftfull. Det är mycket säkert att utföra om du vet vad du gör. Var försiktig när du kör kommandot chgrp för att undvika att överge filsystemet. Med rätt kunskap om växlingsgruppskommandot kan det vara den schweiziska armékniven för en Linuxanvändare. I hela inlägget har vi sett de grundläggande och kraftfulla kommandona för kommandot chgrp i Linux.
Om du tycker att det här inlägget är användbart och informativt, vänligen dela det med dina vänner och Linux-communityt. Du kan också skriva dina åsikter om det här inlägget i kommentarsfältet.
