Bli bättre på användarhantering genom att lära dig mer om de befintliga användargrupperna på din Linux-dator.
Användargrupper på Linux hjälper dig att definiera en uppsättning behörigheter som du sedan kan ålägga andra användare. Unix och Linux kommer med några förkonfigurerade användargrupper, och som administratör är det enkelt att skapa ytterligare grupper för att ytterligare kategorisera och hantera användare.
Men innan du skapar en ny grupp vill du veta mer om de befintliga. Lyckligtvis finns det flera sätt att lista alla användargrupper som finns på Linux, och du kan till och med se listan över grupper som en specifik användare är en del av. Låt oss börja.
Använda filen /etc/group
De /etc/group filen innehåller information om alla lokala användargrupper som är konfigurerade på en Linux-maskin. Med filen /etc/group kan du se gruppnamn, lösenord, grupp-ID: n och medlemmar som är associerade med varje grupp.
Visa innehållet i filen med kommandot cat:
cat /etc/group
Utdata kan vara förvirrande till en början. Var finns gruppnamnen? Och vad är dessa "x" och kolon i utdata?
Den första kolumnen (texten före det första kolonet) är vad du letar efter. Du kan visa en förfinad version av filen och bara visa gruppnamnen med kommandot cut:
katt /etc/grupp | skär -d: -f1
Denna enkla lista är både lättare för ögonen och perfekt att använda i skript.
Du kan också räkna det totala antalet lokala grupper på din maskin med hjälp av wc:
katt /etc/grupp | wc -l
För att göra saker intressanta, skapa en ny grupp med kommandot groupadd och se sedan det totala antalet användargrupper på ditt system. Som självklart kommer antalet att öka med en och du kommer att kunna se gruppnamnet listat i utgången.
Lista grupper med kommandot getent
getent, förkortning för "get entries," är ett Linux-kommando för att visa innehållet i systeminformationsfiler, även kända som databaser, på Linux. /etc/group, /etc/passwd, och /etc/shadow filer är bra exempel på sådana databaser.
Att använda kommandot gegent för att se användargruppsinformation på Linux är enkelt. Allt du behöver göra är att skriva gegent följt av filen du vill visa. I det här fallet är det gruppfilen.
gegent grupp
Utgången av "gegent grupp" kommer att skilja sig något från cat /etc/group kommando. Detta beror på att getent hämtar gruppinformation från andra liknande databaser på ditt system (till exempel LDAP).
Använd kommandot cut för att analysera utdata och visa endast gruppnamn:
gegent grupp | skär -d: -f1
Kommandot gegent är mångsidigt. Du kan lista namnen på alla användare på Linux genom att få alla poster från /etc/passwd fil och sedan analysera utdata för användarnamn.
Visa grupplista för en specifik användare som använder grupper
Det är svårt att visuellt matcha användarnamn med deras grupper med de tidigare metoderna. Om du bara vill lista grupper som en viss användare är en del av, överväg att använda kommandot groups istället.
Den grundläggande syntaxen för kommandot är:
gruppens användarnamn
Om du inte anger ett användarnamn kommer utdata att visa alla grupper för den aktuella användaren. Men för tydlighetens skull är det bäst att ange ett användarnamn som argument.
För att få en lista över grupper för en användare som heter "testuser", kör:
gruppers testanvändare
Grupper Förenkla användaråtkomstkontroll på Linux
Rent tekniskt är rotanvändaren ägare till hela systemet och har behörigheter som ingen annan användare har. Grupper är ett sätt för superanvändaren att kategorisera användare, ge dem behörigheter och införa begränsningar för att hindra dem från att utföra oönskade operationer.
Istället för att ge behörigheter till varje användare kan du skapa en grupp och lägga till alla användare i den. Sedan är allt du behöver göra att hantera behörigheterna för nämnda grupp och reglerna kommer att påtvingas medlemmarna automatiskt. Detta är ett av många sätt att hantera användare på Linux och andra Unix-relaterade operativsystem.