Comment puis-je suspendre la ligne de commande pendant une durée prédéterminée?
Par exemple, dans le terminal, je peux faire "pm-suspend", et cela suspend l'ordinateur.
Mais je veux que l'ordinateur sorte de cette suspension quelques jours plus tard, tout seul, et je ne sais pas comment faire.
Je suppose que vous voulez suspendre la RAM ( ACPI S ).
Voici ce qui fonctionne pour moi.
Sudo rtcwake --verbose --mode mem --time `date '+%s' -d '+ 130 minutes'`
La sous-commande est passée comme argument à --time
est le moyen facile de générer l'horodatage int requis par cet argument.
Notez que sur mon système, je dois tricher un peu: la commande ci-dessus ne suspend que 10 minutes - doit être liée à l'horloge interne n'utilisant pas UTC.
Notez également que --mode
peut prendre d'autres valeurs:
disk
vers Suspend-to-disk (ACPI S4)no
pour simplement régler l'alarme mais ne suspend pasman rtcwake
)Si vous utilisez no
, vous pouvez alors vérifier l'état de l'alarme avec
cat /proc/driver/rtc
Regardez les 6 premières lignes:
rtc_time : 10:34:45
rtc_date : 2012-02-29
alrm_time : 10:44:36
alrm_date : 2012-02-29
alarm_IRQ : yes
alrm_pending : no
alrm_pending
affiche toujours no
pour moi, allez comprendre ... Mais le plus intéressant est le alarm_IRQ
, qui est défini sur yes
lorsqu'une alarme est définie.