Como posso desligar automaticamente o sistema após um tempo específico?

34

Como posso desligar automaticamente o sistema depois de um certo tempo de personalização?

    
por NES 02.01.2011 / 23:33

4 respostas

45

Abra uma janela de terminal e digite:

sudo shutdown -h +60

e substitua 60 por qualquer número de minutos que você queira tirar.

Mais informações aqui:

link link

    
por Daniel 02.01.2011 / 23:57
8
  • Você pode usar gshutdown
  • Após a instalação, pode ser encontrado em Aplicações → Acessórios → GShutdown
  • Veja também este método
por karthick87 03.01.2011 / 06:14
1

Você pode usar

ComplexShutdown link

ou EasyShutdown link

    
por Emad Habib 06.09.2013 / 14:49
0

Como o tópico desligar o PC após determinado período de inatividade é redirecionado para este tópico, explicarei este problema aqui.

Eu gastei muito tempo para resolver esse problema, então acho útil compartilhá-lo, para tornar o mesmo problema simples para os outros. Eu tentei programas diferentes, mas eles não funcionam para mim, então eu encontrei usando script curto com cronjob a melhor solução.

Primeiramente eu me refiro a postar Timed Shutdown - desligamento após 30 minutos

Vou copiá-lo abaixo e depois explicar melhorias para que funcione:

  

Instale o xprintidle. Essa ferramenta fornece o tempo ocioso de um usuário.

sudo apt-get install xprintidle
     

Crie um script autoshutdown.sh que verifica o tempo ocioso e   instrui o computador a desligar se ficar ocioso por 30 minutos.

idle=$(xprintidle)

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

Faça um cronjob para isso que verifica de tempos em tempos se o sistema   ficou inativo por muito tempo e se ficou ocioso por mais de   30 minutos ele será desligado. Note que o cronjob tem que ser feito para   o usuário root.

Este script precisa de algumas melhorias para funcionar, como:

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

OUR_USER é o usuário ao qual nos referimos para verificar o tempo ocioso (não usuário root)

DISPLAY=:0 está correto para uma exibição da área de trabalho (execute o comando env para ler DISPLAY na sua situação)

se o script for executado por OUR_USER , a linha acima poderá ser reduzida:

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

Este tópico é descrito como link

se o script for executado pelo comando OUR_USER , shutdown deve ser precedido por sudo

sudo shutdown -h now

Meu script foi executado de cron por linha no arquivo cron:

*/5 * * * * /home/OUR_USER/autoshutdown.sh 
  • a cada 5 minutos
  • OUR_USER deve ser substituído como antes para o usuário ao qual nos referimos.

Se o script não for executado pelo root, devemos nos lembrar de adicionar a linha:

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

no arquivo sudoers , então o comando shutdown não precisará de uma senha para ser executado.

Eu tentei tais cronjobs em 2 distro similar Lubuntu 12.04.4 RC LXLE 32 bits ( link )

Em um sistema, ele funciona apenas usando o cronjob root definido no arquivo:

/ var / spool / cron / crontabs / root

CAVEAT

Outro problema é que xprintidle no meu sistema forneceu valores às vezes aleatórios para mim e algumas vezes logicamente incremental. O resultado final - o meu sistema normalmente foi desligado após 20 minutos, talvez, se eu definir o valor máximo de inatividade para 30 minutos. Eu acho que o culpado é xscreensaver que não funciona como é definido pelos parâmetros inseridos.

    
por Michał 24.04.2014 / 19:27