Utilizar sudo sin contraseña

sudo_passwordEvitar tener que introducir la contraseña en sudo es tan sencillo como añadir lo siguiente al final del archivo /etc/sudoers:

username ALL = NOPASSWD : ALL

username, por supuesto, ha de ser el nombre de usuario del que se trate.

Si embargo, en esta entrada se indica cómo evitar tener que introducir la contraseña al utlizar sudo para un script concreto. En este caso, vamos a ajustar la fecha y hora al inicio de la sesión ejecutando un comando que necesita privilegios sin contraseña. Concretamente ejecutaremos un script llamado ajustarfechayhora.sh que contendrá el siguiente código:

nano ~/ajustarfechayhora.sh
#!/bin/sh
ntpd -qg && hwclock --systohc

A este archivo hay que darle permisos de ejecución:

chmod +x ~/ajustarfechayhora.sh

Y ahora lo añadiremos al archivo /etc/sudoers para que al ejecutarlo con sudo no nos pida la contraseña.

username ALL=(ALL) NOPASSWD: /home/usuario/ajustarfechayhora.sh

Decía antes que este scritp ha de ejecutarse al inicio de cada sesión, con lo que lo añadiremos al archivo .xinitrc antes de la linea que empieza por exec.

(sudo ~/ajustarfechayhora.sh) &

Ahora el script debería ejecutarse al inicio de cada sesión con privilegios de superusuario sin necesidad de introducir la contraseña.

Para probar si funciona sin tener que reiniciar la sesión se puede probar directamente desde la terminal:

sudo ~/ajustarfechayhora.sh

El script se ejecutará sin pedir la contraseña.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *