Mise à jour : Debian 10.8
Terminologie
uid : identifiant utilisateur
Attention dans les commandes ci-dessous à ne pas confondre :
adduser, useradd
deluser, userdel
usermod, groupmod
Sommaire
Debian GNU /Linux 10 debian tty1
debian login: root
Passwd: xxxxxxxxx
....
root@debian:~
user@debian:~$ su -l
Mot de passe : xxxxxx
root@debian:~# echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
user@debian:~$ su
Mot de passe : xxxxx
user@debian:~# echo $PATH
/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games
$ su -l -c 'echo $PATH'
Mot de passe :
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
user@debian:~$ su -c 'echo $PATH'
/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games
$ sudo -l
Entrées par défaut pour philippe sur buster :
env_reset, mail_badpass, secure_path=/usr/local/sbin\:/usr/local/bin\:/usr/sbin\:/usr/bin\:/sbin\:/bin
L'utilisateur philippe peut utiliser les commandes suivantes sur buster :
(ALL : ALL) ALL
Installation de sudo
$ su -c 'apt install sudo'
Ajouter un utilisateur au groupe sudo
$ su -l -c 'adduser pengouin sudo'
Ajout de l'utilisateur « pengouin » au groupe « sudo »...
Ajout de l'utilisateur pengouin au groupe sudo
Fait.
Fermer la session de l'utilisateur (et donc sa session graphique éventuelle), ouvrir une nouvelle session, puis vérifier le fonctionnement de sudo :
$ sudo echo Bonjour
We trust you have received the usual lecture from the local System
Administrator. It usually boils down to these three things:
#1) Respect the privacy of others.
#2) Think before you type.
#3) With great power comes great responsibility.
[sudo] password for pengouin:
.............
user@debian:~$ sudo su
root@debian:/home/user# echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
Passer une commande en tant que super-utilisateur
$ sudo id
uid=0(root) gid=0(root) groupes=0(root)
$ sudo sh -c 'chroot --userspec nom_utilisateur:nom_utilisateur /mnt'
$ sudo --chroot --userspec nom_utilisateur:nom_utilisateur /mnt
Passer une commande incluant des redirections nécessitant les droits super-utilisateur
$ sudo sh -c 'echo Bonjour >>/root/test'
Passer une commande incluant des pipes necessitant des droits super-utilisateur
$ echo Bonjour | sudo tee -a /root/test
Bonjour
Passer une commande en tant qu'un autre utilisateur
$ sudo su nom_utilisateur wget ....... -O /home/nom_utilisateur