Come elencare i gruppi in Linux

Guida a vari comandi e tecniche in Linux per elencare i gruppi

Nell'ecosistema Linux, la raccolta di utenti è chiamata "Gruppo". Quando un utente viene aggiunto a un gruppo, stiamo definendo i permessi di un utente Linux. I gruppi definiscono anche a quali file, impostazioni e cartelle l'utente deve avere accesso.

In parole povere, i gruppi ti aiutano a scoprire e impostare i privilegi come read (R), scrivere (w) ed eseguire (X) su una risorsa condivisa tra gli utenti. Puoi anche modificare queste autorizzazioni come e quando richiesto.

Scoprire i gruppi a cui appartiene un account utente ti aiuterà a conoscere le autorizzazioni di un determinato utente e anche a modificare le autorizzazioni ogni volta che è necessario.

Questo breve tutorial ti aiuterà a scoprire i gruppi a cui appartiene un utente usando alcuni comandi e tecniche piuttosto semplici.

Prerequisiti importanti

Prima di approfondire il tutorial, sarebbe utile avere una panoramica di base di alcuni concetti. Consiglierei ai principianti di esaminare prima questi concetti.

Gruppo: Una raccolta di utenti sul sistema Linux. Un singolo utente può essere membro di più di un gruppo. Un gruppo definisce le autorizzazioni di cui dispone un utente.

Gruppo primario: Il gruppo primario è il gruppo principale associato all'account utente. Ogni utente deve essere membro di un singolo gruppo principale. Viene creato contemporaneamente alla creazione dell'account utente e l'utente viene automaticamente aggiunto a questo gruppo. Di solito, il nome del gruppo primario è lo stesso del nome dell'utente.

Gruppo Secondario:Il gruppo secondario è facoltativo e un utente può avere o meno un gruppo secondario. Viene utilizzato per concedere alcuni diritti aggiuntivi all'utente. L'utente può essere membro di più gruppi secondari.

/etc/group file: In Linux, l'appartenenza al gruppo è controllata dal /etc/group file. È un semplice file di testo contenente un elenco di gruppi e gli utenti appartenenti a ciascun gruppo.

/etc/passwd file: Questo file contiene informazioni per tutti gli account utente nel sistema. C'è una voce di un account utente per riga rappresentata in questo file.

Usando il gruppi comando

Usando il gruppi comando è un processo semplicissimo per elencare i gruppi a cui appartiene l'utente corrente. È inoltre possibile utilizzare questo comando per elencare i gruppi di un utente specifico registrato nel sistema.

Sintassi:

gruppi

Produzione:

gaurav@ubuntu:~$ gruppi gaurav adm cdrom sudo dip plugdev lpadmin sambashare gaurav@ubuntu:~$

Trovare un gruppo di un particolare utente.

Sintassi:

gruppi [nome utente]

Esempio:

gaurav@ubuntu:~$ gruppi tomcat tomcat : tomcat lpadmin sambashare gaurav@ubuntu:~$ 

In questo esempio, ho elencato i gruppi a cui l'utente ha chiamato micio appartiene.

Usando il ID comando

Usando il ID Il comando visualizza le informazioni sul gruppo dell'utente. Mostra parametri come uid (ID utente), gid (ID gruppo) e l'elenco dei gruppi a cui appartiene l'utente.

Sintassi:

ID [nome utente]

Esempio:

gaurav@ubuntu:~$ id tomcat uid=1002(tomcat) gid=1002(tomcat) groups=1002(tomcat),113(lpadmin),128(sambashare) gaurav@ubuntu:~$

ID comando se utilizzato senza un argomento restituisce le informazioni sul gruppo sull'utente corrente.

Esempio:

gaurav@ubuntu:~$ id uid=1000(gaurav) gid=1000(gaurav) groups=1000(gaurav),4(adm),24(cdrom),27(sudo),30(dip),46(plugdev) ,113(lpadmin),128(sambashare) gaurav@ubuntu:~$

Qui vengono visualizzate le informazioni sul gruppo dell'utente corrente.

Utilizzo del file /etc/group

Come discusso nel blocco dei prerequisiti, sappiamo che /etc/group file contiene tutte le informazioni dei gruppi disponibili sul sistema. Possiamo utilizzare questo file per visualizzare l'elenco dei gruppi utilizzando un semplice comando come segue.

Puoi usare gatto, meno o grep comando per elencare aprire il contenuto di questo file.

less /etc/group

Produzione:

root:x:0: demone: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: news:x:9: uucp:x:10: man:x:12: proxy:x:13: kmem:x:15: dialout:x:20: fax:x:21: voice :x:22: cdrom:x:24:gaurav floppy:x:25: tape:x:26: sudo:x:27:gaurav audio:x:29:pulse dip:x:30:gaurav,batman www-data :x:33:

Questo elencherà gli interi gruppi sul sistema Linux.

Elenco di tutti i gruppi utilizzando getente comando

getente Il comando può essere utilizzato per visualizzare un elenco di tutti i gruppi disponibili sul tuo sistema Linux. L'output è simile a quello del contenuto di /etc/group file.

Usando gruppo get comando visualizza le voci dai database configurati in /etc/nsswitch.conf file.

Sintassi:

gruppo get

Esempio:

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 staff :x:50: giochi:x:60: utenti: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: guest-piinii:x:998: scala:x:997: sbt:x:996: guest-oi9xaf:x:995: tomcat:x:1001: tomcat7:x:132: tomcat8:x:133: geoclue:x:105: gdm:x:134: mysql:x:129: couchdb:x:131: temporaneo:x:1002:

Per trovare il gruppo di un particolare utente, utilizzare il seguente comando.

gruppo get | grep [nome utente]

Esempio:

gaurav@ubuntu:~$ gruppo getent | 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:~$ 

Tutti i gruppi associati all'utente gaurav sono ora elencati sul terminale.

Usando libuser-lid comando

libuser-lid Il comando visualizza le informazioni sui gruppi contenenti il ​​nome utente o sugli utenti contenuti nel nome del gruppo.

NOTA:Questo comando richiede sudo privilegi. Altrimenti incontrerai un errore come segue-

Nessun nome utente specificato,

Errore durante l'inizializzazione di libuser: non in esecuzione con i privilegi di superutente

Nel caso in cui libuser-lid utility non è disponibile sulle tue distribuzioni, puoi utilizzare il seguente comando per installarlo.

Per Ubuntu e Debian utenti:

sudo apt-get update
sudo apt-get install libuser

Per CentOS, Fedora e altre distro:

sudo yum install libuser

Sintassi:

sudo libuser-lid [nome utente]

Esempio:

gaurav@ubuntu:~$ sudo libuser-lid gaurav 

Produzione:

adm(gid=4) cdrom(gid=24) sudo(gid=27) dip(gid=30) plugdev(gid=46) lpadmin(gid=113) trinity(gid=1000) sambashare(gid=128)

Qui sono elencati tutti i gruppi associati al nome utente inserito.

Conclusione

In questo tutorial super semplice, abbiamo ora imparato a visualizzare i gruppi disponibili sui sistemi Linux. I comandi spiegati in questo tutorial possono essere applicati su tutte le distribuzioni Linux allo stesso modo.