Reiniciar automaticamente un script como root

Si usas sudo puedes reiniciar automáticamente un script que se necesite ser ejecutado como root, añadiendo un check al inicio del script y ejecutando sudo si el script no esta ejecutándose como root:
  if [[ $UID -ne 0 ]]; then
sudo -p 'Restarting as root, password: ' bash $0 "$@"
exit $?
fi

La inclusión de bash en el comando sudo es para evitar problemas si es que el script no tiene su bit de ejecutar configurado. El código "exit $?" hace que el shell salga con el estatus del script de ejemplo que ejecuta sudo.

Código desarrollado por Mitch Frazier Administrador de Sistemas de Linux Journal.

Comentarios

Entradas populares de este blog

Habilitar ñ o tildes en un teclado de laptop usando Ubuntu

Todo sobre el espacio SWAP en Linux

Crear, Compilar y Ejecutar un Programa en Haskell