29Jun
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 polecenia rtcwake
Polecenie rtcwake wymaga uprawnień użytkownika root, więc musi być uruchamiane z sudo na Ubuntu i innych dystrybucjach pochodnych Ubuntu. W dystrybucjach systemu Linux, które nie używają sudo, musisz najpierw zalogować się jako root za pomocą polecenia su .
Oto podstawowa składnia polecenia:
sudo rtcwake -m [typ zawieszenia] -s [liczba sekund]
Na przykład następujące polecenie zawiesza system na dysk( powoduje hibernację) i budzi go 60 sekund później:
sudo rtcwake -m dysk -s 60
Rodzaje zawieszenia
Przełącznik -m akceptuje następujące typy zawieszenia:
- w trybie gotowości - 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 - Zawieszenie do pamięci 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.
- wyłącz - 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.
- no - Nie zawieszaj komputera natychmiast, po prostu ustaw czas budzenia. 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
Opcja -s zajmuje w przyszłości kilka sekund. 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.
Opcja -t umożliwia wybudzenie komputera o określonej godzinie. 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 polecenie Data z komendą rtcwake.
Przełącznik -l informuje rtcwake, że zegar sprzętowy jest ustawiony na czas lokalny, natomiast przełącznik -u mówi rtcwake, że zegar sprzętowy( w BIOSie 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 obudził się jutro o 6:30 rano, ale nie od razu się zawiesił( zakładając, że zegar sprzętowy jest ustawiony na czas lokalny), uruchom następującą komendę:
sudo rtcwake -m nie -l -t $( data +% s -d 'tomorrow 06:30')
Więcej porad
Użyj znaku & &operator uruchamia określone polecenie po tym, jak rtcwake wybudzi twój system ze stanu uśpienia. Na przykład poniższe polecenie zawiesza twój komputer do pamięci RAM, uruchamia go dwie minuty później, a następnie uruchamia Firefox:
rtcwake -m mem -s 120 &firefox
Zintegruj komendę rtcwake ze skryptem cron, aby automatycznie obudzić komputer w określonym czasie. Przełącznik -m no może być również przydatny w skrypcie cron. Na przykład można uruchomić polecenie rtcwake -m no -s 28800 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.
Ostrzega
- 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 z twoim sprzętem - 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.