93 votes

Comment éviter d'être invité à entrer un mot de passe par sudo ?

Je sais que je peux devenir root (super utilisateur) par le biais de la fonction su mais je dois l'autoriser après avoir entré les commandes. Existe-t-il un moyen de devenir root et de l'autoriser (avec un mot de passe) en une seule ligne ?

2voto

mattsmom Points 11

Vader, d'après votre commentaire sur votre question initiale, vous souhaitez passer à un Shell interactif s'exécutant avec les droits de super-utilisateur, n'est-ce pas ?

Sudo a un argument spécifique pour demander un Shell :

-s [command]
The -s (shell) option runs the shell specified by the SHELL environment variable if
it is set or the shell as specified in the password database. If a command is
specified, it is passed to the shell for execution via the shell's -c option. If no 
command is specified, an interactive shell is executed.

Cela évite les inconvénients de sécurité déjà mentionnés, et permet de "passer en root" en utilisant la commande suivante :

sudo -s

SI Je dois vraiment exécuter un Shell root (dans la plupart des cas, je ne le fais pas), alors je trouve très utile d'avoir la variable d'environnement HOME du Shell définie en conséquence (pour refléter l'exécution en tant que "root"), cela peut être fait en utilisant le drapeau "-H". Ainsi, la commande complète serait

sudo -s -H

Vous pouvez trouver beaucoup plus de détails dans la page de manuel de sudo .

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X