Sospendi e riattiva il PC in un determinato momento


Risposte:


9

Puoi farlo (almeno la metà) con Gnome Schedule . ( sudo apt-get install gnome-schedule) (NB: viene messo nel tuo programma di avvio come Operazioni pianificate , anche se digitando gnome-schedule lo porta ancora.)

Dopo averlo avviato, "Nuovo" -> "Attività ricorrente". Compila il modulo come ritieni opportuno.

Il comando per ibernare è /usr/sbin/pm-hibernate(Suspend is /usr/sbin/pm-suspend)

Per quanto riguarda il risveglio, vedere "Come posso programmare il risveglio dal letargo?"


In alternativa, è possibile installare "l'interfaccia di gestione dell'alimentazione". ( sudo apt-get install powermanagement-interface)

Quindi crea uno script come questo:

#!/bin/bash
# This script puts the system under standby mode for x hours
usage() {
echo "usage: $0 <n-hours>"
echo "where <n-hours> is the number of hours to be on standby"
exit 0

}
if [ $# -ne 1 ]
then
usage
fi

PATH=$PATH:/usr/sbin
hours=$1
echo 0 > /sys/class/rtc/rtc0/wakealarm
echo `date '+%s' -d "+ $hours hours"` > /sys/class/rtc/rtc0/wakealarm
## Edit the above line to get the exact length of hibernation you want
pmi action suspend

E programmalo nel crontab della radice.

fonte


19

Come riattivare automaticamente il PC Linux dallo stato di sospensione

Vuoi mettere il tuo PC Linux in modalità sospensione o ibernazione e farlo riattivare automaticamente in un momento specifico? Puoi farlo facilmente con il comando rtcwake, incluso di default nella 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/7. Ad esempio, è possibile mettere in sospensione il computer durante la notte e farlo svegliare prima di eseguire alcuni download.

Usando rtcwake

Il comando rtcwake richiede i permessi di root, quindi deve essere eseguito con sudo su Ubuntu e altre distribuzioni derivate da Ubuntu. Sulle distribuzioni Linux che non usano sudo, dovrai prima accedere come root con il comando su.

Ecco la sintassi di base del comando:

sudo rtcwake -m [type of suspend] -s [number of seconds]

Ad esempio, il comando seguente sospende il sistema su disco (ibernalo) e lo riattiva 60 secondi dopo:

sudo rtcwake -m disk -s 60

Tipi di sospensione

L' opzione -m accetta i seguenti tipi di sospensione:

standby : lo standby offre pochi risparmi energetici, ma il ripristino su un sistema in esecuzione è molto rapido. Questa è la modalità predefinita se si omette l'opzione -m.

mem - Sospendi su RAM. Ciò offre un notevole risparmio energetico: tutto viene messo in uno stato di basso consumo, tranne la RAM. Il contenuto della tua memoria viene conservato.

disk - Sospendi su disco. Il contenuto della memoria viene scritto su disco e il computer è spento. Il computer si accenderà e il suo stato verrà ripristinato al termine del timer.

spento : spegne completamente il computer. La pagina man di rtcwake osserva che il ripristino da "off" non è ufficialmente supportato dalla specifica ACPI, ma funziona comunque con molti computer.

no - Non sospendere immediatamente il computer, basta impostare l'ora di sveglia. Ad esempio, potresti dire al tuo computer di svegliarsi alle 6 del mattino. Dopodiché, puoi metterlo a dormire manualmente alle 23:00 o all'01: in entrambi i casi, si sveglia alle 6:00.

Secondi vs. Tempo specifico

L' opzione -s richiede un numero di secondi in futuro. Ad esempio, -s 60 riattiva il computer in 60 secondi, mentre -s 3600 riattiva il computer in un'ora.

L' opzione -t ti consente di riattivare il computer in un momento specifico. Questo passaggio richiede alcuni secondi dall'epoca di Unix (00:00:00 UTC del 1 ° gennaio 1970). Per fornire facilmente il numero corretto di secondi, combinare il comando date con il comando rtcwake.

L' opzione -l dice a rtcwake che l'orologio hardware è impostato sull'ora locale, mentre l'opzione -u dice a rtcwake che l'orologio hardware (nel BIOS del computer) è impostato sull'ora UTC. Le distribuzioni Linux spesso impostano l'orologio hardware sull'ora UTC e lo traducono nell'ora locale.

Ad esempio, per riavviare il computer alle 6:30 di domani ma non sospenderlo immediatamente (supponendo che l'orologio hardware sia impostato sull'ora locale), eseguire il comando seguente:

sudo rtcwake -m no -l -t $(date +%s -d ‘tomorrow 06:30’)

Aiuto


1
Un bel rtcwake è su questa domanda. Offre una soluzione completa: askubuntu.com/questions/61708/…
gare

6
Per favore, quando copi la pasta da un sito web, dai almeno l'url: howtogeek.com/121241/…
hanoo,

Sembra che rtcwake non ricordi più istanze, quindi come faccio a far svegliare il computer, ad esempio, ogni ora?
Yan King Yin,

1

Puoi provare a configurare il BIOS per un evento di sveglia, quasi tutte le schede madri hanno quella funzione, usa il tuo manuale mb e scoprilo, in alcuni bios AMI, si chiama Wake up by RTC alarm, penso che sia il modo semplice per riattivare il PC in un momento specifico


0

Quindi, se qualcuno è interessato, questo è quello che ho scoperto che funziona, senza dover installare nulla e come non root.

Usa questo codice di comando:

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

e per ritardarlo usa il comando sleep con un numero con smh o d (sec, min, giorno, ora) e con a;

codice di esempio:

sleep 60s; dbus-send --print-reply --system --dest=org.freedesktop.UPower /org/freedesktop/UPower org.freedesktop.UPower.Suspend

Ciò sospende il computer dopo 60 secondi

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.