Agendamento de inicialização e desligamento

28

Eu uso Torrents frequentemente, então preciso saber como iniciar e desligar automaticamente o computador. O Wi-Fi é ativado às seis da manhã no meu hotel e desligado às duas da manhã. (Posso agendar torrents, isso não é um problema), não quero que meu computador esteja sempre conectado a uma fonte de alimentação.

kernel_panic
fonte

Respostas:

20

Para um desligamento único, você pode usar

shutdown -h 02:00

Para agendá-lo, você pode usar o cron . Existem algumas GUIs para isso, como o gnome-schedule .

Mas, para iniciar a máquina dentro do cronograma, é necessário examinar as configurações de BIOS / UEFI.

Atualização : verifique as respostas sobre MythTV e Wake on Plan abaixo para agendar a inicialização.

int_ua
fonte
1
Esta pergunta pode ser útil: Como agendar o despertar da hibernação?
Alba Mendez
12

O MythTV pode desligar o computador quando não estiver mais em uso e ativá-lo alguns minutos antes do início da próxima gravação. Ele faz isso usando as funções da ACPI para definir o tempo de ativação antes de desligar. Há um extenso tutorial sobre como configurar isso, que basicamente se resume a:

Primeiro verifique se o kernel do Linux é 2.6.22 ou mais recente e se a função de atualização do HWclock foi desabilitada conforme descrito acima.

Teste simples para ativar a máquina daqui a 5 minutos

sudo sh -c "echo 0 > /sys/class/rtc/rtc0/wakealarm"
sudo sh -c "echo `date '+%s' -d '+ 5 minutes'` > /sys/class/rtc/rtc0/wakealarm"
cat /sys/class/rtc/rtc0/wakealarm

Verifica

cat /proc/driver/rtc

Isso deve retornar uma lista de parâmetros. Verifique se "alrm_time" é de 5 minutos no futuro e "alrm_date" é hoje.

Desligue o computador e verifique se ele volta a funcionar em ~ 5 minutos.

sudo shutdown -h now  

(no Ubuntu 10.4 "sudo shutdown -P now" (-h pode causar a reinicialização do sistema))

Obviamente, se você sempre precisa desligar o computador ao mesmo tempo e ativá-lo ao mesmo tempo, basta configurar o tempo de ativação no BIOS (se houver essa opção) e agendar um desligamento diretamente nos scripts init

Sergey
fonte
Ótimo, não sabia disso. Alrm_pending deve ser 'yes' se o alarme estiver definido?
int_ua 29/11
Na minha máquina, alarm_pending é "no" mesmo depois de definir o horário de ativação usando o script acima. A máquina acorda perfeitamente, então acho que esse parâmetro significa outra coisa.
Sergey
7

Use cronjob para derrubar automaticamente e ligar automaticamente. O comando abaixo desligará o computador às 02:00 e iniciará a máquina 4 horas depois (14400 segundos)

00 2 * * * root /usr/sbin/rtcwake -m off -s 14400
Jom32y
fonte
1
Esta parece ser a solução mais simples. Obrigado!
MJ
6

Eu escrevi um aplicativo para agendar a inicialização, chamado Wake on Plan .

Ainda não está disponível no repositório oficial ( revisão pendente), mas você pode começar a usá-lo no PPA:

https://launchpad.net/~xintx-ua/+archive/wakeonplan

Atualização 2014-2015:

Eu criei a versão QML com o Ubuntu SDK usando o telefone como alvo e esperando a fácil transferência para a área de trabalho há mais de um ano. Mas os pacotes de clique nunca estavam prontos para uso na área de trabalho e agora estou aguardando até que os pacotes rápidos estejam. Por favor, avise-me quando estiverem. No momento, ele até snappy list -uvtravou na minha instalação de 15.04x64 e ela não parece pronta. Ou você pode tentar criar um pacote deb você mesmo, tentarei ajudar o máximo que puder.

int_ua
fonte
1
Eu tentei (18 de janeiro de 2013) e funciona bem sob as 12.10 - embora não exista um pacote "Quantal". Está em desenvolvimento ativo?
Ed Villegas
Obrigado pela informação :) Não muito ativo, pois ainda não foi aprovado devido a uma pasta vazia no pacote da qual não consigo me livrar, verifique aqui: askubuntu.com/questions/221701
int_ua
E o Quickly 12.08.x, destinado ao uso sob 12.10, quebra muito, então eu queria terminar a versão 12.04.
int_ua
1
Isso ainda funciona? Se sim, você pode criar pacotes para versões mais recentes do Ubuntu, por favor? :)
Seth
Curto: o mais rápido possível. Long: Obrigado pela pergunta, estou planejando fazê-lo, mas um pouco sobrecarregado com o trabalho atualmente.
int_ua 13/07/2015
1

Estou usando um sistema Ubuntu 10.04.4 LTS mais antigo e tive algum sucesso com o comando rtcwake . Use-o assim na linha de comando:

# wake the system in 1 Hour:
sudo rtcwake -s 3600 -m disk

A -m diskopção deve colocá-lo em um estado de baixo consumo de energia e, dependendo do suporte de hardware (ou seja: seu próprio computador), você pode ser capaz de usá-lo -m offcom êxito para desligar totalmente.

Além disso, você pode colocar o item acima no / etc / crontab para agendá-lo automaticamente todos os dias.

Salmo Ogro33
fonte
0

Você pode usar o shutdowncomando para agendar um desligamento. Para encerrar às 2 da manhã, você pode usar o seguinte comando:

sudo shutdown -h 2:00

Você precisará executar este comando no terminal e deixar o terminal aberto.

Em relação à inicialização, não acho possível que o Ubuntu ou qualquer aplicativo em execução nele ligue um computador. Você precisará de assistência de hardware para isso. Por exemplo, você pode usar o Wake on Lan .

binW
fonte
Em relação à inicialização - você está correto em um sentido técnico muito restrito (porque o Ubuntu não está sendo executado quando o computador está inoperante), mas com alguns truques é possível agendar uma ativação a partir de um programa / script. :)
Sergey
Eu não acho que você precise manter o terminal aberto. Você pode interromper o trabalho ctrl-ze usá bg-lo em segundo plano. Saia, faça login e ps ax | grep shutdowndeve mostrar que ainda está em execução.
Jared Beck
-1

Eu sugiro este comando no seu cron:

dbus-send --system --print-reply --dest=org.freedesktop.UPower /org/freedesktop/UPower org.freedesktop.UPower.Suspend

Isso não precisa de raiz.

eexpress
fonte