Il messaggio di errore appare quando provi ad eseguire un comando all'interno della tua chiamata bash con sudo
e, sebbene l'utente ADMIN
sul sistema di destinazione mac123
disponga delle autorizzazioni per eseguire comandi con sudo
, l'opzione NOPASSWD
non è specificato per questo particolare utente (in /etc/sudoers
).
Il sistema dovrebbe richiedere all'utente e attendere che la password venga fornita dalla tastiera, tuttavia poiché non è collegato alcun terminale, il prompt si bloccherà per sempre.
Come misura contro tale situazione, il sistema fallisce con il messaggio di errore che hai ottenuto.
Se hai avuto tempo per capire la mia risposta di ieri :
provided ADMIN has passwordless sudo permissions for shutdown or all commands on macxxx machine)
Non ti imbatterai in questo problema.
Devi modificare lo script:
...
if [ $DAYS_UP -ge ${MAX_UPDAYS} ];then
echo Mac is going to shutdown
sudo shutdown -h now
else
...
Modifica il file sudoers su mac123
, in modo che contenga, ad esempio (deve corrispondere al comando nello script):
ADMIN ALL=(ALL) NOPASSWD: /sbin/shutdown -h now
Ricorda che devi eseguirlo utilizzando visudo
, altrimenti potresti interrompere completamente il sistema.
In alternativa puoi usare la variabile di ambiente SUDO_ASKPASS
e indirizzarla a uno script che fornisce la password (la seconda parte del messaggio di errore). Non consiglio questo metodo.