Problème commande inconnue

Bonjour

Par défaut, la commande su permet de se loger sous le compte root
donc, il n’est pas nécessaire de spécifier root à la suite de la commande su


Il faut utiliser l’option login de la commande su
Voir la page man de la commande su

man su

L’option login de la commande su peut être entrée sous sa forme raccourcie en un seul tiret,
ce qui donne :

su -

et après, tu entres le mot de passe du compte root
et tu te retrouveras sous le compte root avec les variables d’environnement du compte root
ce qui fait que le chemin /usr/sbin sera dans la liste des chemins contenus dans la variable d’environnement PATH
et donc, tu n’auras pas à entrer le chemin absolu de la commande reboot


Depuis mon compte utilisateur non privilégié,
je fais s’afficher le contenu de la variable PATH :

michel@debsid:~$ echo $PATH
/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games
michel@debsid:~$ 

On voit ci-dessus, que le chemin /usr/sbin n’est PAS dans la liste des chemins contenus dans la variable PATH

Par contre, si je passe sous le compte root en utilisant la commande su et l’option login :

michel@debsid:~$ su -
Mot de passe : 
root@debsid:~# echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
root@debsid:~# 

le chemin /usr/sbin est dans la liste des chemins contenus dans la variable PATH
ce qui fait que je n’ai pas besoin de spécifier le chemin absolu de la commande reboot :

J’ai juste à taper les premières lettres de la commande reboot : reb
et taper ensuite sur la touche TAB pour que l’auto-complétion entre automatiquement pour moi la suite du nom de la commande : oot
et je n’ai plus qu’à valider la ligne de commande en appuyant sur la touche Entrée