logo

Hvordan kontrolleres de grupper, en bruger tilhører i Linux?

Denne artikel viser, hvordan du kontrollerer de grupper, en bruger tilhører Linux operativsystemer. Vi introducerer nogle begreber relateret til emnet og beskriver derefter, hvordan man gør det ved hjælp af grupper kommando tilgængelig på terminalen.

Grupper i Linux

Alle Linux-operativsystemer er designet som flerbruger operativsystemer . Det betyder, at de giver de muligheder og relaterede værktøjer til at oprette og håndtere flere brugere i et system. Et sådant værktøj er brugergrupper. En brugergruppe er simpelthen en samling af brugere. Det er praktisk, når en systemadministrator ønsker at håndtere flere brugere samtidigt (især for håndtering af tilladelser). Vi definerer en regel for gruppen, og den gælder automatisk for alle dens medlemsbrugere.



Syntaks:

$ sudo useradd>

Når en ny bruger oprettes, oprettes en ny gruppe med samme navn, og brugeren føjes til den. Denne gruppe kaldes brugerens primære gruppe. For eksempel opretter vi en bruger ved navn demoBruger3 i følgende skærmbillede fra terminalen:

sudo groupadd demo_group sudo useradd demo_user sudo groupmod -a -U demo_user demo_group groups demo_user>
Oprettelse af en gruppe, en bruger og tilføjelse af brugeren til gruppen.

Oprettelse af en gruppe, en bruger og tilføjelse af brugeren til gruppen.

Vi bruger kommandoen grupper (som vi vil forklare i detaljer i næste afsnit) til at se brugerens grupper og bemærke, at den er i en gruppe med navnet demoBruger3 som forventet. Vi kan tilføje brugeren i andre grupper ved hjælp af kommandoen -



$ sudo groupmod -a -U>

Hvor vil vi tilføje det angivne brugernavn til det angivne gruppenavn? Når brugeren føjes til en gruppe på denne måde, kaldes det en sekundær gruppe af brugeren. Med andre ord kaldes alle de grupper, som brugeren tilhører, undtagen hans/hendes primære gruppe, hans/hendes sekundære grupper.

række af strenge i c-programmering

En bruger kan være til stede i én primær gruppe og så mange sekundære grupper som nødvendigt. Alle grupperelaterede oplysninger er til stede i /etc/group fil.

Hvordan kontrollerer man, hvilke grupper en bruger tilhører i Linux?

Nedenfor er de metoder, hvorigennem vi kan kontrollere, hvilke grupper en bruger tilhører i Linux-operativsystemet:



Metode 1: Kommandoen grupper

For at se listen over grupper (både primære og sekundære), som en bruger tilhører, kan vi bruge grupper kommando. Kommandoen er en del af 'GNU coreutils', derfor kræves ingen installation. Man kan åbne terminalen og begynde at bruge den. Det distribueres under ' GPLv3+ ' software licens .

Åbn terminalen og skriv følgende kommando for at se, om den virker:

$ groups --version>

Dette udsender versionsoplysningerne på terminalen.

Syntaks:

$ sudo groups []>

Det betyder, at kommandoen kan bruges med eller uden at angive et brugernavn. Hvis brugernavnet er angivet, viser det alle de grupper, som det angivne brugernavn tilhører. Hvis brugernavnet ikke er angivet, viser det alle de grupper, som aktiv/aktuel bruger tilhører.

Eksempel 1: Brug af kommandoer grupper med et brugernavn

$ groups liveuser>

Følgende skærmbillede viser det livebruger er til stede i livebruger & hjul grupper –

Grupper, som bruger liveuser tilhører.

Grupper, som brugeren liveuser tilhører.

Søger liste over grupper for nogle andre brugere siger demoBruger1

$ groups demoUser1>

Følgende skærmbillede viser det demoBruger1 er til stede i demoBruger1 , Demogruppe & Demogruppe 2 grupper:

Brug af grupper kommando med brugernavn, eksempel 2

Brug af grupper kommando med brugernavn, eksempel 2

Eksempel 2: Brug af kommandoer grupper uden et brugernavn

$ groups>

Følgende skærmbillede viser outputtet:

Bruger kommandoen grupper uden brugernavn.

Bruger kommandoen grupper uden et brugernavn.

Se, at output er det samme som output for livebruger som forventet (fordi liveuser er den aktive bruger).

liste java

Metode 2: id-kommandoen

Dette er vores andet alternativ. Det id kommando oprettes for at hente id-oplysningerne for en bruger. Det leveres forudinstalleret med Linux og kan bruges på terminalen med det samme. Ingen installation er nødvendig. Vi kan udnytte det til at hente de grupper, en bruger tilhører ved hjælp af følgende syntaks:

Syntaks:

id -G -n>
  • -G: Det -G flag fortæller om at hente alle gruppe-id'erne for brugeren og
  • -n: Det -n flag fortæller om at udlæse navnene på grupper (ellers ville det udsende gruppe-id'er).

Følgende skærmbillede viser f.eks. hentning af grupperne af demoBruger1 ved hjælp af id kommandoen:

id -G -n demoUser1>
Brug af id-kommandoen til at hente de grupper, en bruger tilhører.

Brug af id-kommandoen til at hente de grupper, en bruger tilhører.

Metode 3: /etc/group-filen

Dette er vores tredje alternativ. Som tidligere nævnt er /etc/group fil indeholder alle gruppeoplysninger, og derfor kan vi naturligvis hente alle grupperelaterede oplysninger fra den, inklusive kontrol af de grupper, en bruger tilhører.

1. Indtastningsformat i filen /etc/group

Hver linje indeholder oplysningerne for en separat gruppe. Hver linje har følgende format:

Group-Name:Password:Group-id:Usernames belonging to this group separated by comma or user-list>

2. Manuel søgning i /etc/group fil

Brug en af ​​følgende kommandoer til at udlæse indholdet af filen/etc/group på skærmen:

1.   less   etc/group 2.   more   etc/group 3.   cat   etc/group>

List nu alle grupperne, hvor gruppenavn er det samme som brugernavnet (dette er brugerens primære gruppe), eller brugerlisten indeholder brugernavnet (disse er brugerens sekundære grupper). Her er et eksempel på et skærmbillede af outputtet af poster på skærmen –

Indholdet af filen /etc/group.

Indholdet af filen /etc/group.

Denne proces er dog kedelig og meget ineffektiv, da filen er stor. Det behandler vi i næste afsnit.

Eksempel 1: Brug af kommandoen grep til søgning

Selv grep kommando er forudinstalleret, så ingen installation er påkrævet. greb kommando bruges til mønstermatchning i strenge. Vi bruger det her til kun at udskrive de linjer fra /etc/group fil, hvor vores pågældende brugernavn vises, ved hjælp af denne syntaks:

Syntaks:

$ grep -w /etc/group>

Det -I flag bruges her til at dirigere det til kun at outputte de linjer, der indeholder brugernavnet. Her er et eksempel på et skærmbillede, hvor vi henter grupperne demoBruger1 tilhører:

grep -w demoUser1 /etc/group>
Brug af grep-kommandoen til bekvemt at hente gruppeoplysninger fra filen/etc/group.

Brug af grep-kommandoen til bekvemt at hente gruppeoplysninger fra filen/etc/group.

Læs nu bare gruppenavnene på alle disse linjer for at få listen over grupper, som brugernavnet tilhører. For ovenstående skærmbillede er det [demoUser1, DemoGroup, DemoGroup].

Metode 4: Getent-kommandoen

Dette er vores fjerde alternativ. Det dygtig kommando bruges til at hente indtastninger af mange vigtige filer i et Linux-system som adgangskodefiler, netværksfiler osv. inklusive /etc/group filer. Så vi kan skrive følgende kommando for at få indtastningerne af /etc/group fil på skærmen og søg derefter manuelt som vi gjorde i sidste afsnit:

Syntaks:

$ getent group>

Men vi støder på det samme problem – at søge manuelt. Og løsningen er også den samme - brug kommandoen grep! Vi har lige rør ud outputtet af getent-kommandoen til grep-kommandoen, der instruerer grep til kun at outputte de linjer, hvor det pågældende brugernavn vises. Her er syntaksen:

Syntaks:

$ getent group|grep -w>

Her er et skærmbillede ved hjælp af ovenstående tilgang til at få grupperne til demoBruger1 tilhører

getent group|grep -w demoUser1>
Brug af intent- og grep-kommandoer sammen for at hente de grupper, som brugeren tilhører.

Brug af intent- og grep-kommandoer sammen for at hente de grupper, som brugeren tilhører.

Læs nu bare gruppenavnene fra alle linjerne som gjort tidligere for at få listen over grupper, som brugernavnet tilhører.

Ofte stillede spørgsmål

1. Hvordan kontrollerer jeg, hvilke grupper en bruger tilhører i Linux?

For at kontrollere, hvilke grupper en bruger tilhører i Linux, kan du brugegroups>kommando efterfulgt af brugernavnet.

For eksempel:

groups username>

Denne kommando viser en liste over grupper, som den angivne bruger tilhører.

2. Hvad er kommandoen til at liste alle grupper en bruger er medlem af i Linux?

Kommandoen til at liste alle grupper en bruger er medlem af i Linux er:

id -Gn username>

Detid>kommando med-Gn>option giver en mellemrumssepareret liste over gruppenavne for den angivne bruger.

3. Kan jeg kontrollere gruppemedlemskaber for flere brugere samtidigt i Linux?

Ja, du kan kontrollere gruppemedlemskaber for flere brugere samtidigt ved at give flere brugernavne tilgroups>ellerid>kommando.

For eksempel:

groups username1 username2>

Denne kommando viser grupperne for begge ` username1`> og ` username2`> .

4. Hvordan finder man ud af den primære gruppe af en bruger i Linux?

For at finde ud af den primære gruppe for en bruger i Linux, kan du bruge ` id`> kommandoen med ` -gn`> mulighed.

til loops java

For eksempel:

id -gn username>

Dette vil udlæse det primære gruppenavn for den angivne bruger.

5. Findes der grafiske værktøjer eller applikationer til kontrol af brugergruppeoplysninger i Linux?

Ja, der er tilgængelige grafiske værktøjer til at kontrollere brugergruppeoplysninger i Linux. Et sådant værktøj er Brugere og grupper eller Brugerkonti i systemindstillingerne i skrivebordsmiljøer som GNOME eller KDE. Alternativt kan værktøjer som ` gpasswd`> give en grafisk grænseflade til styring af brugergrupper.

Konklusion

I Linux er det en ligetil proces at bestemme de grupper, som en bruger tilhører, som kan udføres ved hjælp af grupper kommando eller id -Gn kommando. Disse kommandoer giver en hurtig måde at hente en liste over alle de grupper, der er knyttet til en bestemt bruger. Disse oplysninger er afgørende for både systemadministratorer og brugere, da de hjælper med at administrere fil- og bibliotekstilladelser, tillade eller begrænse adgang til ressourcer og sikrer systemets sikkerhed og integritet.