Apagado "¿no hay tty presente y no se ha especificado el programa de paso de preguntas"?

1

Estoy intentando ejecutar una secuencia de comandos de apagado de forma remota en varios Mac. El comando que utilizo para iniciarlo a través de ssh es:

ssh ADMIN@mac123 'bash -s' sudo < ./documents/ShutdownUPTIME.sh

Por supuesto, me pide una contraseña de sudo, que escribo correctamente. El único mensaje después de eso es: sudo: no tty present and no askpass program specified

¿Alguna idea de cómo puedo solucionar esto? Mi usuario es definitivamente un superusuario

    
pregunta Gunter 13.12.2016 - 09:04

1 respuesta

2

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.

    
respondido por el techraf 13.12.2016 - 09:30

Lea otras preguntas en las etiquetas