Cómo ejecutar sudo en un script bash en Linux
En ocasiones cuando automatizamos algunas tareas en Linux con Bash, se nos viene la necesidad de ejecutar sudo en un script bash para algunos pasos con privilegios de root. En ese caso tenemos dos opciones; activar el bit SUID del comando en cuestión, ó, pasando la contraseña como parámetro dentro del script.
La secuencia es la siguiente:
#!/bin/bash sudo -k echo contraseña | sudo -v -S el_comando
Con el comando echo seguido de la tubería enviamos la contraseña hacia sudo, y éste a su vez captura la contraseña con la opción -S. La opción -k es para quitar de la cache cualquier sesión sudo. Y así podremos ejecutar comandos con privilegios de root dentro de un script Bash.
También lo puedes usar de la siguiente forma:
#!/bin/bash
echo contraseña | sudo -S el_comando
Nota: No está demás recordar que este método no es seguro, porque la contraseña puede ser vista de manera llana si otros logran tener lectura en este script.
Valora este artículo:

