Dernier message de la page précédente :
Bonjour,Je viens de lire beaucoup de chose avec du bon et du moins bon, je vais rajouter ma petite pierre sur le sujet concernant ces commandes : su, sudo, gksu et gksudo.
La commande 'su' permet de s'authentifier en tant qu'un autre utilisateur, mais par défaut c'est root (ayant pour id 0) mais on peut s'authentifer avec n'importe quel autre compte pour autant que ce compte existe.
Exemple:
Code : Tout sélectionner
warlocg@linux:~$ useradd toto
useradd: Permission denied.
useradd : impossible de verrouiller /etc/passwd ; veuillez réessayer plus tard.
warlocg@linux:~$ sudo useradd toto
warlocg@linux:~$ su -l toto
Mot de passe :
su : Échec d'authentification
warlocg@linux:~$ sudo passwd toto
Entrez le nouveau mot de passe UNIX :
Retapez le nouveau mot de passe UNIX :
passwd : le mot de passe a été mis à jour avec succès
warlocg@linux:~$ su -l toto
Mot de passe :
Pas de répertoire, connexion avec HOME=/
$ id
uid=1001(toto) gid=1003(toto) groupes=1003(toto)
$ exit
warlocg@linux:~$ userdel toto
userdel: Permission denied.
userdel : impossible de verrouiller /etc/passwd ; veuillez réessayer plus tard.
warlocg@linux:~$ sudo userdel toto
PS: J'avais déjà utilisé la commande sudo avant, c'est pourquoi il ne me redemande pas le mot de passe ici.
La commande 'sudo' permet de lancer une commande depuis le compte root, c'est une sécurité pour éviter de lancer n'importe quelle commande depuis le compte utilisateur. Si je lance un rm -rf sans savoir ce que ca fait, en tant qu'utilisateur, je risque de faire le con. Enfin, là encore, les dossiers et fichiers disposent de permissions et l'utilisateur ne peut pas supprimer ce qui appartient à root. Avec la commande 'sudo' je passe temporairement à root pour lancer ma commande ce qui me permet de forcer la commande à s'executer si celle-ci nécessite des privilèges élevés.
Exemple:
Code : Tout sélectionner
warlocg@linux:~$ id
uid=1000(warlocg) gid=1000(warlocg) groupes=1000(warlocg),24(cdrom),29(audio),33(www-data),44(video),110(netdev),120(pulse-access),1002(semiroot)
warlocg@linux:~$ sudo id
Password (warlocg):
uid=0(root) gid=0(root) groupes=0(root),33(www-data),105(scanner),120(pulse-access),132(saned),1002(semiroot)
En configurant le fichier /etc/sudoers, on peut donner des règles particulières par rapport a certaines commandes. Personnellement, j'en ai créé une pour que les commandes 'shutdown', 'halt', 'reboot', ainsi que 'apt-get','aptitude' et 'dpkg' ne me demande pas de mot de passe pour les executer. Il faut cependant garder à l'esprit de ne pas mettre n'importe quelle commande (avec n'importe quel globbing) comme règle, autrement cela compromet la sécurité du système.
Finalement, gksu et gksudo, c'est su et sudo en version graphique.
Cordialement.