Posso avere un elenco di nomi di gruppo "Sistema" e i loro rispettivi gid?


15

So che ci sono nomi di gruppo come "Staff" e "Admin", ma questi sono gli unici? Sospetto che anche l'utente root debba essere assegnato a un gruppo. L'uso del comando dscacheutil -q usermi dice il gid di root - 0. E se un account utente è un amministratore, non lo è nei gruppi "Admin" e "Staff"?

Eseguendo il comando ls -la /Users, ottengo il seguente output:

Nicholass-MacBook:~ Ee$ ls -la /Users
total 32
drwxr-xr-x  12 root     admin    408 Nov  3 15:11 .
drwxr-xr-x@ 35 root     wheel   1258 Oct 29 20:21 ..
-rw-r--r--@  1 root     admin  12292 Oct 27 09:02 .DS_Store
-rw-r--r--   1 root     wheel      0 Aug 25 16:58 .localized
drwxrwx---   5 root     admin    170 Nov  3 08:00 Deleted Users
drwxr-xr-x+ 21 Ee       staff    714 Nov  3 08:06 Ee
drwx------+ 84 root     admin   2856 Oct 26 06:49 Ee (Deleted)
drwxr-xr-x+ 11 EeJ      staff    374 Nov  3 15:07 EeJ
drwxr-xr-x+ 14 900      admin    476 Oct 24  2012 Ee******** (Deleted)
drwxr-xr-x   3 root     admin    102 Oct 27 06:50 Old Ee (frm Snow Leopard)
drwxr-xr-x+ 11 ParAcnt  staff    374 Nov  3 15:11 ParAcnt
drwxrwxrwt   6 root     wheel    204 Nov  1 18:18 Shared

Risposte:


22

Il comando dscacheutil -q groupgenererà tutti i gruppi con il loro nome, i numeri ID e l'elenco dei membri. Attenzione, quando dico che produrrà tutti i gruppi, intendo tutti i gruppi, compresi quelli che i mortali non dovrebbero mai vedere. Sto solo dicendo, non preoccuparti, ci sono così tanti gruppi per un sistema a utente singolo.

rootpoiché il superutente è in un gruppo da solo e implicitamente anche un membro di ogni altro gruppo. Qualsiasi account utente può essere membro di più gruppi. Sul mio sistema l'unico membro di staffè root; gli amministratori sono tutti nel admingruppo. wheelè un altro nome di gruppo che vedrai spesso per alcuni file di sistema; è un nome di gruppo popolare sui sistemi Linux da assegnare ai file in modo che gli amministratori possano modificarli senza usare la password sudo.

Va inoltre notato che Mac OS X supporta elenchi di controllo di accesso che forniscono un controllo più granulare sulle autorizzazioni dei file rispetto alle autorizzazioni Unix tradizionali; IIRC +nell'elenco delle autorizzazioni dei file indica che esistono tali autorizzazioni estese associate al file.


13

Metodi alternativi per la quotazione groupse il loro gid:

Elenco ordinato per nome gruppo:

dscl . list /Groups PrimaryGroupID

Elenco ordinato per gruppo gid:

dscl . list /Groups PrimaryGroupID | tr -s ' ' | sort -n -t ' ' -k2,2

Elenco dei gruppi con membri:

dscl . list /Groups GroupMembership

Nota: dscacheutildsclelencare membri del gruppo staffdiversi da root. Utilizzare dsmemberutilper confermare che un membro appartiene al gruppo staff.

Esempio di un utente con uid 501:

dsmemberutil checkmembership -u 501 -g 20

1
Caspita, una bella raccolta di comandi utili!
Yongwei Wu,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.