Para *nix, tienes los módulos pwd y grp. Se itera a través de pwd.getpwall()
para obtener todos los usuarios. Buscas los nombres de sus grupos con grp.getgrgid(gid)
.
import pwd, grp
for p in pwd.getpwall():
print p[0], grp.getgrgid(p[3])[0]
sh/golpe:
getent passwd | cut -f1 -d: | while read name; do echo -n "$name " ; groups $name ; done
el grp
El módulo es tu amigo. Mira grp.getgrall()
para obtener una lista de todos los grupos y sus miembros.
EDITAR ejemplo:
import grp
groups = grp.getgrall()
for group in groups:
for user in group[3]:
print user, group[0]