¿Cómo puedo apagar automáticamente el sistema después de un tiempo específico?

Respuestas:

49

Abra una ventana de terminal y escriba:

sudo shutdown -h +60

y simplemente reemplace 60 con la cantidad de minutos que quiera tomar.

Más información aquí:

http://ubuntuforums.org/archive/index.php/t-473173.html http://www.linux.org/lessons/beginner/l5/lesson5a.html

Daniel
fuente
2
El -Pparámetro (apagado) también parece ser una buena idea.
htorque
shutdown + m 60 no funciona para mí. me da un mensaje de error y dice que hay un valor de tiempo no válido.
NES
Pensé que era extraño ... no debería ser "+ m 60", debería ser "+60" (o quizás más como "-h +60". La parte inferior de esta página parece saber cómo funciona: linux.org/lessons/beginner/l5/lesson5a.html .
Daniel
"shutdown -P 1": funciona bien y apaga el sistema en 1 minuto, no necesita unidad de tiempo.
n3rd
2
en realidad es sudo ..... porque necesita privilegios de root
Shirish Herwade
8
  • Puedes usar gshutdown Instalar gshutdown
  • Después de la instalación, se puede encontrar en Aplicaciones → Accesorios → GShutdown texto alternativo
  • También eche un vistazo a este método .
karthick87
fuente
¿Alguien puede decirme por qué rechazan votar?
karthick87
2
No rechacé el voto. Pero Gshutdown no funciona sin problemas aquí. Cuando elijo apagar, ¿en lugar de cerrar la sesión del usuario?
NES
Yo también, cierra la sesión del usuario y la computadora portátil entra en modo de suspensión
lewis4u
2

Debido a que el tema sobre el apagado de la PC después de cierto período de inactividad se redirige a este tema, explicaré este problema aquí.

Pasé mucho tiempo para resolver este problema, por lo que me parece útil compartirlo, para que el mismo problema sea simple para otros. Probé diferentes programas, pero no me han funcionado, así que encontré que usar un script corto con cronjob es la mejor solución.

En primer lugar, me referí a publicar el apagado programado - apagado después de 30 minutos

Lo copiaré a continuación y luego explicaré las mejoras para que funcione:

Instalar xprintidle. Esta herramienta proporciona el tiempo de inactividad de un usuario.

sudo apt-get install xprintidle

Cree un script autoshutdown.sh que verifique el tiempo de inactividad e indique a la computadora que se apague si está inactivo durante 30 minutos.

idle=$(xprintidle)

if [ $idle -gt 1800000 ]; then
    shutdown -h now
fi

Haga un cronjob para esto que comprueba de vez en cuando si el sistema ha estado inactivo durante demasiado tiempo y si ha estado inactivo durante más de 30 minutos, se apagará. Tenga en cuenta que el cronjob debe hacerse para el usuario root.


Este script necesita algunas mejoras para funcionar, como:

idle=`env DISPLAY=:0 su OUR_USER -c xprintidle 2>&1`

OUR_USER es el usuario al que nos referimos para verificar el tiempo de inactividad (no usuario root)

DISPLAY=:0es correcto para una pantalla de escritorio (ejecute el envcomando para leer DISPLAYen su situación)

Si el script se ejecuta OUR_USER, la línea anterior se puede reducir:

idle=`env DISPLAY=:0 xprintidle 2>&1`

Este tema se describe http://ubuntuforums.org/showthread.php?t=1069602

Si el script se ejecuta OUR_USER, el shutdowncomando debe ir precedido desudo

sudo shutdown -h now

Mi script se ejecutó desde cron por línea en el archivo cron:

*/5 * * * * /home/OUR_USER/autoshutdown.sh 
  • cada 5 minutos
  • NUESTRO_USUARIO debe ser reemplazado como antes por el usuario al que nos referimos.

Si el script no es ejecutado por root, debemos recordar agregar la línea:

ALL ALL=(ALL) NOPASSWD: /sbin/shutdown 

en el archivo sudoers , por lo que el comando de apagado no necesitará una contraseña para ejecutarse.


Probé tales cronjobs en 2 distribuciones similares Lubuntu 12.04.4 RC LXLE 32-bit ( http://www.lxle.net/ )

En un sistema, solo funciona usando el cronjob raíz establecido en el archivo:

/ var / spool / cron / crontabs / root


ADVERTENCIA

Otro problema es que xprintidle en mi sistema ha dado a veces valores aleatorios para mí y, a veces, lógicamente incrementales. El resultado final: mi sistema generalmente se ha apagado después de 20 minutos, tal vez, si configuro el valor máximo de inactividad en 30 minutos. Creo que el culpable es xscreensaver, que no funciona según lo establecido por los parámetros ingresados.

Michał
fuente