Come rendere automatico il tuo PC Linux Wake From Sleep
Vuoi mettere il tuo PC Linux in modalità sospensione o ibernazione e farlo scattare automaticamente in un momento specifico? Puoi farlo facilmente con il comando rtcwake, incluso di default con la maggior parte dei sistemi Linux.
Questo può essere utile se vuoi che il tuo computer faccia qualcosa in un momento specifico, ma non vuoi che funzioni 24 ore su 24, 7 giorni su 7. Ad esempio, puoi spegnere il computer la notte e farlo svegliare prima di eseguire alcuni download.
Utilizzando rtcwake
Il rtcwake il comando richiede i permessi di root, quindi deve essere eseguito con sudo su Ubuntu e altre distribuzioni derivate da Ubuntu. Nelle distribuzioni Linux che non usano sudo, dovrai accedere come root con il su comando prima.
Ecco la sintassi di base del comando:
sudo rtcwake -m [tipo di sospensione] -s [numero di secondi]
Ad esempio, il seguente comando sospende il sistema su disco (lo mette in ibernazione) e lo riattiva 60 secondi dopo:
sudo rtcwake -m disk -s 60
Tipi di sospensione
Il -m switch accetta i seguenti tipi di sospensione:
- pausa - Lo standby offre pochi risparmi energetici, ma il ripristino di un sistema in esecuzione è molto rapido. Questa è la modalità predefinita se si omette l'opzione -m.
- mem - Sospendi nella RAM. Ciò offre significativi risparmi energetici: tutto viene messo in uno stato di basso consumo, ad eccezione della RAM. I contenuti della tua memoria sono preservati.
- disco - Sospendi su disco. I contenuti della tua memoria sono scritti su disco e il tuo computer è spento. Il computer si accenderà e il suo stato verrà ripristinato al termine del timer.
- via - Spegnere completamente il computer. La pagina man di rtcwake nota che il ripristino da "off" non è ufficialmente supportato dalle specifiche ACPI, ma funziona comunque con molti computer.
- no - Non sospendere immediatamente il computer, è sufficiente impostare il tempo di attivazione. Ad esempio, potresti dire al tuo computer di svegliarsi alle 6 del mattino. Dopo di che, può metterlo a dormire manualmente alle 23:00 o alle 11:00 - in entrambi i casi, si sveglierà alle 6 del mattino.
Secondi vs Tempo specifico
Il -S l'opzione richiede un numero di secondi in futuro. Ad esempio, -s 60 riattiva il tuo computer in 60 secondi, mentre -s 3600 riattiva il tuo computer in un'ora.
Il -t l'opzione ti consente di riattivare il tuo computer in un momento specifico. Questa opzione richiede un numero di secondi dall'epoca Unix (00:00:00 UTC del 1 gennaio 1970). Per fornire facilmente il numero corretto di secondi, combinare il Data comando con il comando rtcwake.
Il -l switch dice a rtcwake che l'orologio hardware è impostato sull'ora locale, mentre il -u switch dice a rtcwake che l'orologio hardware (nel BIOS del tuo computer) è impostato sull'ora UTC. Le distribuzioni Linux spesso impostano l'orologio hardware sull'ora UTC e lo traducono all'ora locale.
Ad esempio, per fare in modo che il computer si riattivi domani alle 6:30, ma non sospendere immediatamente (supponendo che l'orologio hardware sia impostato sull'ora locale), eseguire il seguente comando:
sudo rtcwake -m no -l -t $ (data +% s -d 'domani 06:30')
Più suggerimenti
Utilizzare l'operatore && per eseguire un comando specifico dopo che rtcwake riattiva il sistema dalla modalità sospensione. Ad esempio, il seguente comando sospende il tuo computer nella RAM, lo riattiva due minuti dopo e quindi avvia Firefox:
rtcwake -m mem -s 120 && firefox
Integrare il comando rtcwake in uno script di cron per riattivare automaticamente il computer in un momento specifico. Il -m no switch può anche essere utile in uno script di cron. Ad esempio, potresti eseguire il rtcwake -m no -s 28800 comando in uno script cron alle 22:00 ogni giorno. In questo modo il tuo computer si accenderà in 28800 secondi alle 6:00. Tuttavia, il tuo computer non andrebbe a dormire immediatamente - potresti metterlo a dormire alle 23:00 o alle 1:00 e si sveglierebbe comunque alle 6:00 normalmente.
Avvertenze
- RTC sta per orologio in tempo reale. rtcwake utilizza l'orologio hardware del tuo computer, che puoi impostare nel tuo BIOS, per determinare quando il tuo computer si sveglierà. Se stai usando un vecchio computer con una batteria CMOS morente che non può mantenere l'orologio funzionante correttamente, questo non funzionerà.
- Se la sospensione, la sospensione dalla RAM o l'ibernazione non funzionano correttamente con il tuo sistema Linux - forse perché Linux non ha i driver per farli funzionare correttamente con l'hardware - potrebbe non funzionare.
- Fare attenzione quando si imposta un laptop per riattivarsi automaticamente in un momento specifico. Non vorrai che svegliandosi, correndo e surriscaldando o scarichi la batteria in una borsa per laptop.