29Jun

Como fazer o seu PC Linux apagar do sono automaticamente

Deseja colocar seu PC Linux no modo de suspensão ou hibernação e fazê-lo acordar automaticamente em um horário específico? Você pode facilmente fazer isso com o comando rtcwake, incluído por padrão com a maioria dos sistemas Linux.

Isso pode ser útil se você quiser que seu computador faça algo em um momento específico, mas não quer que ele seja executado 24/7.Por exemplo, você pode colocar seu computador em uma cama à noite e fazê-lo acordar antes de fazer para executar alguns downloads.

Usando o rtcwake

O comando rtcwake requer permissões de root, portanto, ele deve ser executado com sudo no Ubuntu e outras distribuições derivadas do Ubuntu. Nas distribuições de Linux que não usam sudo, você deve fazer o login como root com o comando su primeiro.

Aqui está a sintaxe básica do comando:

sudo rtcwake -m [tipo de suspensão] -s [número de segundos]

Por exemplo, o seguinte comando suspende seu sistema no disco( o hiberna) e o levanta 60 segundos depois:

sudo rtcwake -m disco -s 60

Tipos de Suspensão

O -m switch aceita os seguintes tipos de suspensão:

  • standby - O modo de espera oferece poucas economias de energia, mas a restauração para um sistema em execução é muito rápida. Este é o modo padrão se você omitir a opção -m.
  • mem - Suspender para RAM.Isso oferece economia de energia significativa - tudo é colocado em um estado de baixa potência, exceto sua RAM.O conteúdo da sua memória é preservado.
  • disco - Suspender no disco. O conteúdo da sua memória está escrito no disco e seu computador está desligado. O computador liga e seu estado será restaurado quando o temporizador for concluído.
  • desligado - desligue completamente o computador. A página man do rtcwake observa que a restauração de "off" não é oficialmente suportada pela especificação ACPI, mas isso funciona com muitos computadores de qualquer maneira.
  • não - Não suspenda o computador imediatamente, basta configurar o tempo de ativação. Por exemplo, você poderia dizer ao seu computador para acordar às 6 da manhã.Depois disso, pode colocá-lo para dormir manualmente às 11h ou 1am - de qualquer forma, ele vai acordar às 6h.

Segundos vs. Tempo específico

A opção do leva um número de segundos no futuro. Por exemplo, -s 60 levanta seu computador em 60 segundos, enquanto -s 3600 levanta seu computador em uma hora.

A opção -t permite que você acorde seu computador em um horário específico. Este interruptor quer um número de segundos desde a época do Unix( 00:00:00 UTC em 1 de janeiro de 1970).Para fornecer facilmente o número correto de segundos, combine o comando da data com o comando rtcwake.

O interruptor -l diz ao rtcwake que o relógio do hardware está configurado para a hora local, enquanto o interruptor -u informa ao rtcwake que o relógio do hardware( no BIOS do seu computador) está configurado para a hora UTC.As distribuições de Linux geralmente definem seu relógio de hardware para a hora UTC e traduzem isso para a hora local.

Por exemplo, para que seu computador acorde às 6:30 da manhã amanhã, mas não suspenda imediatamente( assumindo que seu relógio de hardware está configurado para hora local), execute o seguinte comando:

sudo rtcwake -m não -l -t $( data +% s -d 'tomorrow 06:30')

Mais dicas

Use o & &operador para executar um comando específico depois que o rtcwake acende seu sistema do sono. Por exemplo, o seguinte comando suspende o seu computador para a RAM, o faz dois minutos depois e, em seguida, inicia o Firefox:

rtcwake -m mem -s 120 & amp;firefox

Integre o comando rtcwake em um script cron para ativar automaticamente o seu computador em um momento específico. O -m sem interruptor também pode ser útil em um script cron. Por exemplo, você pode executar o comando rtcwake -m não -s 28800 em um script cron às 10 horas todos os dias. Isso configuraria seu computador para acordar em 28800 segundos às 6:00 da manhã.No entanto, seu computador não iria dormir imediatamente - você poderia dormir até as 11:00 da manhã ou 1 da manhã e ainda acordaria às 6 da manhã normalmente.

Advertências

  • RTC significa relógio em tempo real. O rtcwake usa o relógio de hardware do seu computador, que você pode configurar no BIOS, para determinar quando o seu computador irá acordar. Se você estiver usando um computador antigo com uma bateria CMOS morrendo que não consiga manter o relógio funcionando corretamente, isso não funcionará.
  • Se dormir, suspender a RAM ou hibernar não funcionar corretamente com seu sistema Linux - talvez porque o Linux não tenha os drivers para fazê-los funcionar corretamente com seu hardware - isso pode não funcionar.
  • Tenha cuidado ao configurar um laptop para se acender automaticamente em um horário específico. Você não gostaria de acordar, correr e sobreaquecer ou correr a bateria em uma bolsa de laptop.