Gids voor verschillende commando's en technieken in Linux om groepen weer te geven
In het Linux-ecosysteem wordt de verzameling gebruikers een 'Groep' genoemd. Wanneer een gebruiker aan een groep wordt toegevoegd, definiëren we de machtigingen van een Linux-gebruiker. Groepen bepalen ook tot welke bestanden, instellingen en mappen de gebruiker toegang moet hebben.
In de eenvoudigste bewoordingen helpen groepen u om de privileges te achterhalen en in te stellen, zoals lezen (R
), schrijven (met wie
) en voer uit (x
) over een bron die door de gebruikers wordt gedeeld. U kunt deze machtigingen ook naar behoefte wijzigen.
Door groepen te vinden waartoe een gebruikersaccount behoort, kunt u meer te weten komen over de machtigingen die een bepaalde gebruiker heeft en ook de machtigingen wijzigen wanneer dat nodig is.
Deze korte tutorial helpt je de groepen te achterhalen waartoe een gebruiker behoort met behulp van enkele vrij eenvoudige commando's en technieken.
Belangrijke vereisten
Voordat je diep in de tutorial gaat, zou het handig zijn als je een basisoverzicht hebt van enkele van de concepten. Ik zou beginners aanraden om eerst deze concepten door te nemen.
Groep: Een verzameling gebruikers op het Linux-systeem. Een enkele gebruiker kan lid zijn van meer dan één groep. Een groep definieert welke rechten een gebruiker heeft.
Primaire groep: De primaire groep is de hoofdgroep die is gekoppeld aan het gebruikersaccount. Elke gebruiker moet lid zijn van één primaire groep. Het wordt aangemaakt op het moment dat het gebruikersaccount wordt aangemaakt en de gebruiker wordt automatisch toegevoegd aan deze groep. Meestal is de naam van de primaire groep gelijk aan de naam van de gebruiker.
Secundaire groep:Secundaire groep is optioneel en een gebruiker kan al dan niet een secundaire groep hebben. Het wordt gebruikt om enkele extra rechten aan de gebruiker te verlenen. De gebruiker kan lid zijn van meerdere secundaire groepen.
/etc/groep
het dossier: In Linux wordt het groepslidmaatschap beheerd door de /etc/groep
het dossier. Het is een eenvoudig tekstbestand met een lijst van groepen en de gebruikers die bij elke groep horen.
/etc/passwd
het dossier: Dit bestand bevat informatie voor alle gebruikersaccounts op het systeem. Er is een invoer van één gebruikersaccount per regel die in dit bestand wordt weergegeven.
De ... gebruiken groepen
opdracht
De ... gebruiken groepen
commando is een supereenvoudig proces om de groepen op te sommen waartoe de huidige gebruiker behoort. U kunt deze opdracht ook gebruiken om de groepen weer te geven van een specifieke gebruiker die bij het systeem is geregistreerd.
Syntaxis:
groepen
Uitgang:
gaurav@ubuntu:~$ groepen gaurav adm cdrom sudo dip plugdev lpadmin sambashare gaurav@ubuntu:~$
Een groep van een bepaalde gebruiker zoeken.
Syntaxis:
groepen [gebruikersnaam]
Voorbeeld:
gaurav@ubuntu:~$ groepen kater kater: kater lpadmin sambashare gaurav@ubuntu:~$
In dit voorbeeld heb ik de groepen vermeld waarnaar de gebruiker heeft genoemd kater behoort.
De ... gebruiken ID kaart
opdracht
De ... gebruiken ID kaart
commando geeft de groepsinformatie van de gebruiker weer. Het toont parameters zoals: uid
(gebruikersnaam), gid
(groeps-ID) en de lijst met groepen waartoe de gebruiker behoort.
Syntaxis:
id [gebruikersnaam]
Voorbeeld:
gaurav@ubuntu:~$ id tomcat uid=1002(tomcat) gid=1002(tomcat) groups=1002(tomcat),113(lpadmin),128(sambashare) gaurav@ubuntu:~$
ID kaart
commando wanneer gebruikt zonder een argument retourneert de groepsinformatie over de huidige gebruiker.
Voorbeeld:
gaurav@ubuntu:~$ id uid=1000(gaurav) gid=1000(gaurav) groepen=1000(gaurav),4(adm),24(cdrom),27(sudo),30(dip),46(plugdev) ,113(lpadmin),128(sambashare) gaurav@ubuntu:~$
Hier wordt de groepsinformatie van de huidige gebruiker weergegeven.
Het /etc/group-bestand gebruiken
Zoals besproken in het vereiste blok, weten we dat: /etc/groep
bestand bevat alle informatie van de groepen die beschikbaar zijn op het systeem. We kunnen dit bestand gebruiken om de lijst met groepen te bekijken met een eenvoudig commando als volgt.
Je kunt gebruiken kat
, minder
of grep
commando om de inhoud van dit bestand te openen.
minder /etc/groep
Uitgang:
root:x:0: daemon:x:1: bin:x:2: sys:x:3: adm:x:4:syslog,gaurav tty:x:5: disk:x:6: lp:x:7 : mail:x:8: nieuws:x:9: uucp:x:10: man:x:12: proxy:x:13: kmem:x:15: dialout:x:20: fax:x:21: spraak :x:22: cdrom:x:24:gaurav diskette:x:25: band:x:26: sudo:x:27:gaurav audio:x:29:pulse dip:x:30:gaurav,batman www-data :x:33:
Hiermee worden de volledige groepen op het Linux-systeem weergegeven.
Alle groepen weergeven met getent
opdracht
getent
commando kan worden gebruikt om een lijst weer te geven van alle beschikbare groepen op uw Linux-systeem. De uitvoer is vergelijkbaar met die van de inhoud van /etc/groep
het dossier.
Gebruik makend van getent groep
opdracht geeft de gegevens weer van databases die zijn geconfigureerd in /etc/nsswitch.conf
het dossier.
Syntaxis:
getent groep
Voorbeeld:
gaurav@ubuntu:~$ getent group root:x:0: daemon:x:1: bin:x:2: sys:x:3: adm:x:4:syslog,gaurav tty:x:5: disk:x :6: lp:x:7: mse dip:x:30:gaurav,batman :x:39: stmp:x:43: video:x:44: sasl:x:45: plugdev:x:46:gaurav personeel :x:50: games:x:60: gebruikers:x:100: 106: crontab:x:107: vahi:x:120: bluetooth:x:121: scanner:x:122:saned colord:x:123: pulse:x:124: pulse-access:x:125: rtkit:x:126: saned:x:127: trinity:x:1000: sambashare:x:128:gaurav mongodb:x:130:mongodb guest-tqrhc7: x:999: gast-piinii:x:998: scala:x:997: sbt:x:996: gast-oi9xaf:x:995: kater:x:1001: kater7:x:132: kater8:x:133: geoclue:x:105: gdm:x:134: mysql:x:129: couchdb:x:131: tijdelijk:x:1002:
Gebruik de volgende opdracht om de groep van een bepaalde gebruiker te vinden.
getent groep | grep [gebruikersnaam]
Voorbeeld:
gaurav@ubuntu:~$ getent groep | grep gaurav adm:x:4:syslog,gaurav cdrom:x:24:gaurav sudo:x:27:gaurav dip:x:30:gaurav,batman plugdev:x:46:gaurav lpadmin:x:113:gaurav gaurav: x:1000: sambashare:x:128:gaurav gaurav@ubuntu:~$
Alle groepen die aan de gebruiker gaurav zijn gekoppeld, worden nu op de terminal weergegeven.
Gebruik makend van libuser-deksel
opdracht
libuser-deksel
opdracht geeft informatie weer over groepen die de gebruikersnaam bevatten, of gebruikers die in de groepsnaam staan.
NOTITIE:Dit commando vereist sudo
voorrechten. Anders zult u als volgt een fout tegenkomen-
Fout bij initialiseren van libuser: wordt niet uitgevoerd met superuser-privilegesGeen gebruikersnaam opgegeven,
In het geval dat libuser-deksel
hulpprogramma niet beschikbaar is op uw distributies, kunt u het volgende commando gebruiken om het te installeren.
Voor Ubuntu en Debian gebruikers:
sudo apt-get update
sudo apt-get install libuser
Voor CentOS, Fedora en andere distro's:
sudo yum install libuser
Syntaxis:
sudo libuser-lid [gebruikersnaam]
Voorbeeld:
gaurav@ubuntu:~$ sudo libuser-lid gaurav
Uitgang:
adm(gid=4) cdrom(gid=24) sudo(gid=27) dip(gid=30) plugdev(gid=46) lpadmin(gid=13) trinity(gid=1000) sambashare(gid=128)
Hier worden alle groepen weergegeven die bij de ingevoerde gebruikersnaam horen.
Gevolgtrekking
In deze supereenvoudige tutorial hebben we nu geleerd om de groepen weer te geven die beschikbaar zijn op de Linux-systemen. De opdrachten die in deze tutorial worden uitgelegd, kunnen op dezelfde manier op alle Linux-distributies worden toegepast.