Table des matières

Liste de commandes pour gérer les utilisateurs et groupes sur Unix

Gérer les utilisateurs et les groupes

Commande Résultat
adduser Ajout d'un utilisateur avec ses informations
deluser Supprime l'utilisateur
delgroup Supprime un groupe ?
useradd commande de bas niveau pour ajouter un utilisateur
userdel commande de bas niveau pour supprimer un utilisateur
groupadd commande de bas niveau pour ajouter un groupe
groupdel commadne de bas niveau pour supprimer un group

Exemples d'utilisations

# usermod -a -G adm,sudo mon_utilisateur

Par exemple, ici on autorise l'utilisateur à mettre à jour le système.

# visudo

On ajout cette ligne :

mon_utilisateur ALL = NOPASSWD:/usr/bin/apt-get,/usr/bin/aptitude

Par la suite, il lui sera possible d'utiliser ces commandes :

$ sudo apt-get update

Changer des informations sur l'utilisateur en question

Commande Résultat
chfn Changer les infos administrative d'un utilisateur
chsh Changer le shell d'un utilisateur
chage Change les conditions d’expiration d'un mot de passe utilisateur
chage -l <user> Affiche la data d'expiration du mot de passe
passwd -e Oblige le changement du mot de passe d'un utilsateur lors de sa prochaine connexion
passwd -l Désactive temporairement un compte
passwd -u Active un compte
vipw Editer le fichier /etc/passwd de manière sûre
vigr Editer le fichier /etc/group de manière sûre

Changer d'UID ou de GUID

~~~ usermod -u 9383 $USER groupmod -g 9383 $USER ~~~

Créer un groupe d'utilisateur

Ce groupe pourra écrire dans le dossier des autres utilisateurs appartenant uniquement au même groupe.

Créons le groupe mon-groupe avec l'utilisateur toto et tata :

addgroup mon-groupe 
adduser ­­home /home/toto ­­shell /bin/false ­­ingroup mon-groupe ­­disabled­password toto
adduser ­­home /home/tata ­­shell /bin/false ­­ingroup mon-groupe ­­disabled­password tata

Ne pas définir de shell est utilise dans le cas d'un utilisateur rattaché à un service vu qu'il ne nécessite pas d'un terminal.

setfacl ­Rm u:toto:rwx /tmp/dossier_a_partager

Intervention temporaires

Il peut arriver que l'on souhaite donner certains droits/accès à un utilisateur de manière temporaire.

newgrp users

Avec la commande id on remarque ce changement

root@light:/home/light# newgrp users
root@light:/home/light# id
uid=0(root) gid=100(users) groupes=100(users),0(root)

Pour quiter le groupe :

exit

Ce qui nous donne :

root@light:/home/light# exit
exit
root@light:/home/light# id
uid=0(root) gid=0(root) groupes=0(root)
sg toto 'touch fichier'

Modifier l'environnement de base des utilisateurs

Par exemple, on demande à nos utilisateurs d'utiliser la commande suivante pour éditer un fichier :

editor fichier.txt

Par défaut, celui-ci s'ouvrira avec la paquet “nano”. Admettons que l'administrateur veut que ses utilisateurs utilisent “vim”. Il procédera alors de cette manière :

update-alternatives --set editor /bin/vim

S'il souhaite connaitre les éditeurs installé sur la machine, il peut lancer cette comande :

update-alternatives --list editor