GNU/Linux >> Tutoriels Linux >  >> Ubuntu

Sudo expire pendant un script de longue durée ?

J'ai un long script qui émet plusieurs sudo commandes préfacées. Le temps d'exécution du script est variable, et occasionnellement sudo expire pendant l'exécution du script, ce qui signifie que je dois ressaisir le mot de passe.

Comment puis-je exécuter ce script sans avoir besoin de vérifier le programme et de m'assurer qu'il fonctionne toujours ?

Réponse acceptée :

Si le script lui-même est exécuté en tant que sudo , il n'expirera pas tant que le script n'aura pas fini de s'exécuter. Pour s'assurer que sudo est utilisé pour exécuter le script, j'ai inséré les lignes suivantes en haut de mon script :

if [ `whoami` != 'root' ];
then
    echo "This program needs to be run using 'sudo'"
    exit
fi

Cela garantit que le script a été démarré avec sudo , et ne tente aucunement de stocker les mots de passe…


Ubuntu
  1. Expiration du délai dans un script shell ?

  2. Exécution du script avec ". » Et avec « source » ?

  3. Le service Systemctl a expiré lors du démarrage ?

  4. Planifier le script Apt-get à l'aide de Cron ?

  5. Erreur lors de l'exécution de Sudo Apt-get -f Install ?

Comment savoir depuis combien de temps un processus s'exécute sous Linux

Confirmation automatique lors de l'exécution de scripts bash ?

Modifier le script shell pendant son exécution

Exécuter Pycharm en tant que root depuis le lanceur

L'authentification Wi-Fi expire

déterminer le shell dans le script pendant l'exécution