If-Koubou

Jak sprawić, by komputer Linux przebudził się z trybu uśpienia automatycznie

Jak sprawić, by komputer Linux przebudził się z trybu uśpienia automatycznie (Jak)

Chcesz przełączyć komputer z systemem Linux w tryb uśpienia lub hibernacji i automatycznie go obudzić o określonej godzinie? Możesz to łatwo zrobić za pomocą polecenia rtcwake, domyślnie dołączonego do większości systemów Linux.

Może to być przydatne, jeśli chcesz, aby komputer wykonał coś w określonym czasie, ale nie chcesz, aby działał 24 godziny na dobę. Na przykład możesz spać w nocy w komputerze i obudzić go przed wykonaniem niektórych pobrań.

Używanie rtcwake

The rtcwake polecenie wymaga uprawnień root'a, więc musi być uruchomione z sudo na Ubuntu i innych dystrybucjach pochodnych Ubuntu. W dystrybucjach systemu Linux, które nie używają sudo, musisz zalogować się jako root przy pomocy su najpierw polecenie.

Oto podstawowa składnia polecenia:

sudo rtcwake -m [typ suspend] -s [liczba sekund]

Na przykład poniższe polecenie zawiesza system na dysk (hibernuje go) i budzi go 60 sekund później:

sudo rtcwake -m dysk -s 60

Rodzaje zawieszenia

The -m switch akceptuje następujące typy zawieszenia:

  • czekaj - Tryb gotowości oferuje niewielkie oszczędności energii, ale przywracanie do działającego systemu jest bardzo szybkie. Jest to tryb domyślny, jeśli pominięto przełącznik -m.
  • mem - Zawieś do RAM. Daje to znaczną oszczędność energii - wszystko jest w stanie niskiej mocy, z wyjątkiem pamięci RAM. Zawartość twojej pamięci zostanie zachowana.
  • dysk - Zawieszenie na dysk. Zawartość twojej pamięci jest zapisywana na dysk i twój komputer jest wyłączony. Komputer włączy się, a jego stan zostanie przywrócony po zakończeniu działania zegara.
  • poza - Wyłącz komputer całkowicie. rtcwake zauważa, że ​​przywracanie z "off" nie jest oficjalnie wspierane przez specyfikację ACPI, ale i tak działa to na wielu komputerach.
  • Nie - Nie zawieszaj komputera natychmiast, po prostu ustaw czas wybudzania. Na przykład możesz powiedzieć swojemu komputerowi, żeby się obudził o 6 rano. Następnie można go uśpić ręcznie o 23.00 lub 1:00 - tak czy inaczej, obudzi się o 6 rano.

Sekundy a konkretny czas

The -s opcja zajmuje kilka sekund w przyszłości. Na przykład -s 60 przebudzi Twój komputer w ciągu 60 sekund, podczas gdy -s 3600 pobudzi twój komputer w ciągu godziny.

The -t opcja pozwala obudzić komputer w określonym czasie. Ten przełącznik potrzebuje pewnej liczby sekund od epoki Uniksa (00:00:00 UTC 1 stycznia 1970 r.). Aby łatwo podać odpowiednią liczbę sekund, połącz data Polecenie z poleceniem rtcwake.

The -l switch mówi rtcwake, że zegar sprzętowy jest ustawiony na czas lokalny, podczas gdy -u switch mówi rtcwake, że zegar sprzętowy (w BIOSie twojego komputera) jest ustawiony na czas UTC. Dystrybucje systemu Linux często ustawiają zegar sprzętowy na czas UTC i tłumaczą go na czas lokalny.

Na przykład, aby komputer przebudził się jutro o 6:30, ale nie zawieszał się natychmiast (zakładając, że zegar sprzętowy jest ustawiony na czas lokalny), uruchom następujące polecenie:

sudo rtcwake -m nie -l -t $ (data +% s -d "jutro 06:30")

Więcej podpowiedzi

Użyj operatora &&, aby uruchomić określone polecenie po tym, jak rtcwake wybudzi twój system z trybu uśpienia. Na przykład następujące polecenie zawiesza twój komputer do pamięci RAM, uruchamia go dwie minuty później, a następnie uruchamia przeglądarkę Firefox:

rtcwake -m mem -s 120 && firefox

Zintegruj komendę rtcwake ze skryptem cron, aby automatycznie obudzić komputer w określonym czasie. The -m nie przełącznik może być również przydatny w skrypcie cron. Na przykład możesz uruchomić rtcwake -m nie -s 28800 polecenie w skrypcie cron o 22.00 każdego dnia. Ustawiłoby to Twój komputer na pobudkę w 28800 sekund o 6:00 rano. Jednak komputer nie zasypia od razu - można go uśpić o 23:00 lub 1 w nocy i nadal budzi się normalnie o 6 rano.

Ostrzeżenia

  • RTC oznacza zegar czasu rzeczywistego. rtcwake korzysta z zegara sprzętowego komputera, który można ustawić w systemie BIOS, w celu określenia, kiedy komputer się obudzi. Jeśli używasz starego komputera z umierającą baterią CMOS, która nie pozwala na prawidłowe działanie zegara, nie zadziała.
  • W przypadku uśpienia, zawieszenia w pamięci RAM lub hibernacji nie działają poprawnie z systemem Linux - być może dlatego, że Linux nie ma sterowników, które sprawiają, że działają poprawnie na sprzęcie - może to nie działać.
  • Zachowaj ostrożność podczas ustawiania laptopa, aby automatycznie budził się o określonej godzinie. Nie chciałbyś, żeby się budził, biegał, przegrzewał się lub spływał z baterii w torbie na laptopa.