Si usted lee la grp module documentation verá que grp.getgrnam (nombre de grupo) devolverá una entrada de la base de datos del grupo, que es un objeto tupla similar. Usted puede tener acceso a la información por índice o por atributos:
>>> import grp
>>> groupinfo = grp.getgrnam('root')
>>> print groupinfo[2]
0
>>> print groupinfo.gr_gid
0
Otras entradas son el nombre, la contraseña cifrada (generalmente vacío, si se utiliza un archivo de sombra, que va a ser un valor ficticio) y todos los miembros del grupo nombres. Esto funciona bien en cualquier sistema Unix, incluyendo mi Mac OS X portátil:
>>> import grp
>>> admin = grp.getgrnam('admin')
>>> admin
('admin', '*', 80, ['root', 'admin', 'mj'])
>>> admin.gr_name
'admin'
>>> admin.gr_gid
80
>>> admin.gr_mem
['root', 'admin', 'mj']
El módulo también ofrece un método para obtener las entradas por GID, y como has descubierto, un método para recorrer todas las entradas en la base de datos:
>>> grp.getgrgid(80)
('admin', '*', 80, ['root', 'admin', 'mj'])
>>> len(grp.getgrall())
73
por último, pero no menos importante, pitón ofrece una funcionalidad similar para obtener información sobre los archivos de contraseñas y sombras, en los módulos pwd y spwd, que tienen una API similar.
Tenga en cuenta que debido a que existe un límite para la cantidad de miembros que un grupo de Unix puede tener, algunos sistemas (grandes) tienen múltiples grupos de Unix con el mismo GID pero diferentes nombres, por ejemplo: 'admin',' admin2', 'admin3', etc. Es posible que no lo sepa porque los archivos se almacenan con su UID/GID numérico, y herramientas como 'ls' buscan el GID y muestran el primer nombre encontrado, que en mi ejemplo sería' admin'. Así que es posible que se sorprenda al descubrir que una cuenta de usuario determinada no está en el grupo 'admin', sino que en realidad es' admin2' u otro alias. Debe filtrar todos los grupos por GID para encontrar los alias AFAICT. – RobM