On fait des groupes ?

Niveau : Star Empty Empty Empty Empty
Résumé : newgrp ; gpassword ; id

Sous unix, les groupes, c'est connu. Un utilisateur est nécessairement dans un groupe primaire, celui qui sert lors de la création de fichiers et répertoires. Il est aussi dans un nombre indéfini de groupes secondaires, qui servent pour les droits d'accès sur ces fichiers et répertoires.

La commande id permet de savoir quels sont vos groupes :

$ id
uid=1000(peck) gid=1000(peck) groupes=1000(peck),1002(toto)

Mais cette notion de groupe primaire n'est pas pratique si on veut créer des fichiers pour un autre groupe que le groupe primaire. Faire un chgrp à chaque nouveau fichier n'est pas des plus sympa. C'est pourquoi il existe la commande newgrp qui permet de changer de groupe primaire (celle-ci lance un nouveau shell).

$ newgrp toto
$ id
uid=1000(peck) gid=1002(toto) groupes=1000(peck),1002(toto)

Mieux, il est même possible de prendre un groupe primaire qui ne vous appartient pas. Mais cette fois un mot de passe vous sera demandé. Si vous connaissez le mot de passe le groupe deviendra votre groupe primaire (puis un groupe secondaire au prochain newgrp). Pour définir un mot de passe sur un groupe (stocké dans gshadow) :

$ gpasswd groupe

Petite bizarrerie, newgrp ne prend en compte que les groupes secondaires pour les groupes autorisés, il ne voudra donc pas vous redonner votre groupe d'origine, sauf s'il est aussi listé en groupe secondaire. Il suffit en pratique de vous déconnecter du shell pour revenire au groupe d'origine.
Remarquez que vous mettre dans le même groupe primaire et secondaire ne pose aucun problème puisqu'on le fait régulièrement lorsqu'on est branché sur un ldap.

Et voilà pourquoi il peut parfois être utile de créer des groupe alors que personne n'est dedans. Il s'agit simplement d'un mot de passe permettant de partager des fichiers sur un système.

Si vous travaillez en équipe sur des machines, pensez à cette fonctionnalité (par exemple dans vos scripts de gestion du système) cela peut vous simplifier la vie en plus de l'umask et du bit suid sur les répertoires.

Vus : 302
Publié par Peck : 100