Dnes budeme diskutovat o užitečném tématu, které popisuje, jak automaticky probudit váš systém Linux z režimu spánku nebo hibernace pomocí 'Rtcwake' užitečnost. rtcwake se používá k přechodu do režimu spánku nebo hibernace systému Linux a jeho automatickému probuzení v určitou dobu. Není třeba vypínat a znovu zapínat váš systém. Jednoduše přepněte systém do režimu spánku nebo hibernace a po uplynutí stanovené doby se vraťte a začněte pracovat.
Doporučené stažení - Zdarma e-kniha:"Výukový program elastického vyhledávání"Upozornění:
Vezměte prosím na vědomí, že RTC znamená hodiny v reálném čase. Jsou to vlastně vaše hardwarové hodiny, které lze nastavit v BIOSu. Pokud máte problém s CMOS baterií nebo biosem, tento příkaz nebude fungovat. Pro správné používání rtcwake musíte nastavit správný čas v BIOSu. Při používání tohoto nástroje musíte být opatrní, protože ke svému fungování vyžaduje oprávnění root. Jakékoli zneužití tohoto nástroje může způsobit zhroucení jádra a/nebo systému.
Automatické probuzení systému Linux z režimu spánku nebo hibernace pomocí nástroje „rtcwake“
Rtcwake je standardně předinstalovaný na většině operačních systémů Linux, takže se s jeho instalací neobtěžujte. Dovolte mi, abych vám ukázal několik praktických příkladů. Následující příkazy jsem testoval na svém desktopu Arch Linux a fungovaly dobře, jak jsem očekával.
Typická syntaxe příkazu rtcwake je:
$ rtcwake [options] [-d device] [-m standby_mode] {-s seconds|-t time_t}
Probuzení systému po určité době
Před spuštěním tohoto programu se nejprve ujistěte, že jste zavřeli všechny spuštěné programy nebo uložili všechny otevřené dokumenty. Příkaz rtcwake vyžaduje root oprávnění k práci.
Pojďme nyní pozastavit náš systém a probudit jej po 60 sekundách. Chcete-li to provést, spusťte:
$ sudo rtcwake -m disk -s 60
Ukázkový výstup by byl:
rtcwake: assuming RTC uses UTC ... rtcwake: wakeup from "disk" using /dev/rtc0 at Fri Apr 21 09:04:49 2017
Tady,
- -m označuje režim.
- -s označuje čas probuzení systému. V našem případě jsme dali 60 sekund.
Příkaz rtcwake podporuje následující režimy.
- pohotovostní režim - Toto je výchozí režim, pokud jste nezmínili -m přepněte svůj příkaz. Tento stav nabízí minimální, i když skutečné úspory energie, a zároveň poskytuje přechod zpět do funkčního systému s velmi nízkou latencí.
- zmrazit - V tomto režimu jsou všechny procesy zmrazeny, všechna zařízení jsou pozastavena a všechny procesory nečinné.
- paměť - Suspend-to-RAM. V tomto stavu bude vše uvedeno do stavu nízké spotřeby, kromě paměti, která nabízí výrazné úspory energie. Obsah paměti RAM zůstane zachován.
- disk - Suspend-to-disk. Tento stav nabízí největší úsporu energie. Tento stav funguje podobně jako Suspend-to-RAM, ale zahrnuje poslední krok zápisu obsahu paměti na disk.
- z f - Úplně vypne váš počítač. To se provádí voláním '/sbin/shutdown'. Není oficiálně podporováno ACPI, ale obvykle to funguje.
- ne – Nepozastavujte, pouze nastavte čas probuzení RTC.
- zapnuto - Neuzavírejte, ale čtěte RTC zařízení, dokud se neobjeví čas alarmu. Tento režim je užitečný pro ladění.
- deaktivovat – Deaktivujte dříve nastavený budík.
- zobrazit - Vytiskne informace o alarmu ve formátu:"alarm:off|on
Probuzení systému v určitou dobu
Náš systém můžeme také probudit v určitou dobu pomocí -t možnost, jak je znázorněno v níže uvedeném příkladu.
$ sudo rtcwake -m no -l -t "$(date -d 'today 16:00:00' '+%s')"
Ukázkový výstup:
Tady,
- -m ne - Tato možnost nepozastaví počítač, pouze nastaví čas probuzení RTC.
- -l - Označuje místní čas nastavený v Bios.
- -t $(datum +%s -d ‘dnes 16:00:00’) – Nastaví čas probuzení na dnešní 16:00.
Užitečný tip: Chcete-li zjistit, co dělá každý argument v příkazu Linux/Unix, podívejte se na Explainshell .
Pokud chcete probudit systém zítra v určitou dobu, příkaz by byl:
$ sudo rtcwake -m no -l -t $(date +%s -d 'tomorrow 10:00')
Výše uvedený příkaz probudí váš systém zítra v 10:00, ale nepozastaví jej okamžitě.
Probuzení systému v určité datum a čas:
$ sudo rtcwake -m no -l -t "$(date -d '2017-04-25 16:00:00' '+%s')"
Kromě toho můžete po probuzení systému spustit konkrétní program pomocí operátoru "&&", jak ukazuje následující příklad.
$ sudo rtcwake -m mem -s 60 && chromium
Výše uvedený příkaz pozastaví náš systém na RAM a po 60 sekundách jej probudí a spustí webový prohlížeč chromium. Skvělé, že?
Další podrobnosti naleznete na manuálových stránkách.
$ man rtcwake
Doporučené čtení:
- Automatické vypínání, restartování, pozastavení a hibernace systému Linux v určitou dobu
A to je vše. Nyní víte, jak počítač se systémem Linux automaticky probudit z režimu spánku nebo hibernace v určitém čase nebo po něm.