Gebruikers en groepen
Inhoudsopgave:
- Linux groepen
- Lijst met alle groepen waarvan een gebruiker lid is
- Met behulp van de opdracht
groups - Het commando
idgebruiken - Lijst met alle leden van een groep
- Lijst met alle groepen
- Conclusie
In Linux is een groep een verzameling gebruikers. Het hoofddoel van de groepen is het definiëren van een reeks privileges, zoals lezen, schrijven of machtigingen uitvoeren voor een bepaalde bron die kan worden gedeeld tussen de gebruikers binnen de groep. Gebruikers kunnen worden toegevoegd aan een bestaande groep om de rechten te gebruiken die het verleent.
In deze zelfstudie wordt uitgelegd hoe u alle groepen kunt weergeven waarvan een gebruiker lid is. We zullen ook uitleggen hoe we alle leden van een groep kunnen vermelden.
Linux groepen
Er zijn twee soorten groepen waartoe een gebruiker kan behoren:
-
Primaire of inloggroep - is de groep die is toegewezen aan de bestanden die door de gebruiker zijn gemaakt. Gewoonlijk is de naam van de primaire groep dezelfde als de naam van de gebruiker. Elke gebruiker moet tot precies één primaire groep behoren.
Secundaire of aanvullende groep - wordt gebruikt om bepaalde rechten aan een set gebruikers toe te kennen. Een gebruiker kan lid zijn van nul of meer secundaire groepen.
Lijst met alle groepen waarvan een gebruiker lid is
Er zijn meerdere manieren om erachter te komen tot welke groepen een gebruiker behoort.
De primaire gebruikersgroep wordt opgeslagen in het bestand
/etc/passwd
en de eventuele aanvullende groepen worden vermeld in het bestand
/etc/group
.
Een manier om de gebruikersgroepen te vinden is om de inhoud van die bestanden te vermelden met behulp van
cat
,
less
of
grep
. Een andere eenvoudigere optie is om een opdracht te gebruiken die tot doel heeft informatie te verstrekken over de gebruikers en groepen van het systeem.
Met behulp van de opdracht
groups
De meest memorabele opdracht om alle groepen weer te geven waarvan een gebruiker lid is, is de groepsopdracht. Bij uitvoering zonder argument drukt de opdracht een lijst af van alle groepen waartoe de momenteel aangemelde gebruiker behoort:
groups
De eerste groep is de primaire groep.
john adm cdrom sudo dip plugdev lpadmin sambashare
Om een lijst te krijgen van alle groepen waartoe een specifieke gebruiker behoort, geeft u de gebruikersnaam als argument op voor de opdracht
groups
:
groups linuxize
Hetzelfde als voorheen is de eerste groep de primaire groep.
Het commando
id
gebruiken
De opdracht
id
drukt informatie af over de opgegeven gebruiker en zijn groepen. Als de gebruikersnaam wordt weggelaten, geeft deze informatie weer voor de huidige gebruiker.
Als u bijvoorbeeld informatie wilt krijgen over de
linuxize
van de gebruiker,
linuxize
u:
id linuxize
De opdracht toont de gebruikersnaam (
uid
), de primaire groep van de gebruiker (
gid
) en de secundaire groepen van de gebruiker (
groups
)
uid=1001(linuxize) gid=1001(linuxize) groups=1001(linuxize), 27(sudo)
Gebruik de optie
-n
om alleen de namen af te drukken zonder de gebruikers- en groeps-ID's. Optie
-g
drukt alleen de primaire groep en
-G
alle groepen af.
Met de volgende opdracht worden de namen afgedrukt van de groepen waarvan de huidige gebruiker lid is:
id -nG
john adm cdrom sudo dip plugdev lpadmin sambashare
Lijst met alle leden van een groep
Gebruik de opdracht
getent group
gevolgd door de groepsnaam om alle leden van een groep weer te geven.
Als u bijvoorbeeld de leden van een groep met de naamontwikkelaars wilt achterhalen, gebruikt u de volgende opdracht:
getent group developers
Als de groep bestaat, drukt de opdracht de groep en alle leden af:
developers:x:126:frank, mary
Als er geen uitvoer is, betekent dit dat de groep niet bestaat.
Lijst met alle groepen
Om alle op het systeem aanwezige groepen te bekijken, opent u eenvoudig het bestand
/etc/group
. Elke regel in dit bestand vertegenwoordigt informatie voor één groep.
less /etc/group
Een andere optie is om de opdracht
getent
gebruiken die vermeldingen weergeeft van databases die zijn geconfigureerd in het bestand
/etc/nsswitch.conf
, inclusief de
getent
waarmee we een lijst van alle groepen kunnen opvragen.
Typ de volgende opdracht om een lijst met alle groepen te krijgen:
getent group
De uitvoer is hetzelfde als bij het weergeven van de inhoud van het bestand
/etc/group
. Als u LDAP gebruikt voor gebruikersauthenticatie, toont het
getent
alle groepen uit zowel
/etc/group
file als LDAP-database.
U kunt ook
awk
of
cut
gebruiken om alleen het eerste veld met de naam van de groep af te drukken:
getent group | awk -F: '{ print $1}'
Conclusie
In deze zelfstudie hebt u geleerd hoe u de groepen kunt vinden waarvan een gebruiker lid is. Dezelfde opdrachten zijn van toepassing op elke Linux-distributie, inclusief Ubuntu, CentOS, RHEL, Debian en Linux Mint.
Als je nog vragen hebt, kun je een reactie achterlaten.
terminalSidekickles: back-up maken, back-ups maken, back-ups maken
Verzameling: 4 back-uphulpprogramma's voor mobiele apparaten om u te stoten om uw dierbare te beschermen data.
Hoe ram op macbook vrij te maken om de ventilator stil te maken
Leer hoe u RAM op uw MacBook vrijmaakt en die stille ventilator.
Hoe geneste lijsten in Google Keep te gebruiken: een gedetailleerde gids
Wilt u subitems toevoegen aan uw lijsten? Nu kunt u dat doen met geneste lijsten in Google Keep. Controleer het bericht om te weten hoe u inspringende lijsten kunt maken.







