El mensaje de error aparece cuando intenta ejecutar un comando dentro de su llamada bash con sudo
y, aunque el usuario ADMIN
en el sistema de destino mac123
tiene permisos para ejecutar comandos con sudo
, la opción% no se especifica NOPASSWD
para este usuario en particular (en /etc/sudoers
).
El sistema tendría que avisar al usuario y esperar a que se proporcionara la contraseña desde el teclado, sin embargo, como no se adjunta ningún terminal, el aviso se bloquearía para siempre
Como medida contra esta situación, el sistema falla con el mensaje de error que recibió.
Si se tomó el tiempo de entender mi respuesta de ayer :
siempre que ADMIN tenga sin contraseña permisos sudo para el apagado o todos los comandos en la máquina macxxx)
No se encontraría con este problema.
Debes modificar tu script:
...
if [ $DAYS_UP -ge ${MAX_UPDAYS} ];then
echo Mac is going to shutdown
sudo shutdown -h now
else
...
Y edite el archivo sudoers en mac123
, para que contenga, por ejemplo (debe coincidir con el comando en el script):
ADMIN ALL=(ALL) NOPASSWD: /sbin/shutdown -h now
Tenga en cuenta que debe hacerlo utilizando el programa visudo
, de lo contrario, es probable que rompa su sistema por completo.
Alternativamente, puede usar la variable de entorno SUDO_ASKPASS
y señalarla a un script que proporcione la contraseña (la segunda parte del mensaje de error). No recomiendo este método.