Призупиніть і розбудіть ПК у певний час


Відповіді:


9

Ви можете зробити це (принаймні на половину) за допомогою Розкладу Gnome . ( sudo apt-get install gnome-schedule) (Зверніть увагу: він ставиться у ваш пусковий механізм як заплановані завдання , хоча введення графіку gnome все ще виводить його.)

Після запуску програми "Нове" -> "Повторне завдання". Заповніть форму, як вважаєте за потрібне.

Команда перезимувати: /usr/sbin/pm-hibernate(Призупинити /usr/sbin/pm-suspend)

Щодо того, щоб прокинутися знову, будь ласка, дивіться "Як мені запланувати пробудження від сплячки?"


По черзі можна встановити "інтерфейс управління живленням". ( sudo apt-get install powermanagement-interface)

Потім створіть такий сценарій:

#!/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

І заплануйте це в crontab кореня.

Джерело


19

Як зробити так, щоб ваш ПК на Linux вийшов зі сну автоматично

Хочете перевести ваш ПК з Linux у сплячий або сплячий режим і автоматично пробудити його у визначений час? Ви можете легко зробити це за допомогою команди rtcwake, включеної за замовчуванням у більшості систем Linux.

Це може бути корисно, якщо ви хочете, щоб ваш комп'ютер щось робив у певний час, але не хочете, щоб він працював 24/7. Наприклад, ви можете увімкнути комп'ютер спати вночі, щоб він прокинувся, перш ніж виконати кілька завантажень.

Використання rtcwake

Команда rtcwake вимагає кореневих дозволів, тому її слід запускати з sudo на Ubuntu та інших похідних Ubuntu дистрибутивах. У дистрибутивах Linux, які не використовують sudo, вам доведеться спочатку увійти як root з командою su.

Ось основний синтаксис команди:

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

Наприклад, наступна команда призупиняє вашу систему на диску (впадає в сплячку) та пробуджує її через 60 секунд:

sudo rtcwake -m disk -s 60

Види підвіски

-M комутатор приймає такі типи припинення:

Режим очікування - режим очікування пропонує невелику економію електроенергії, але відновлення працюючої системи відбувається дуже швидко. Це режим за замовчуванням, якщо ви вимкнете перемикач -m.

mem - Призупинення оперативної пам'яті. Це забезпечує значну економію електроенергії - все переводиться в стан малої потужності, крім вашої оперативної пам'яті. Вміст вашої пам’яті зберігається.

диск - підвісити до диска. Вміст пам’яті записується на диск, а комп'ютер вимкнено. Комп’ютер увімкнеться, і його стан відновиться, коли таймер завершиться.

вимкнено - вимкніть комп'ютер повністю. На головній сторінці rtcwake зазначається, що відновлення з "вимкнено" офіційно не підтримується специфікацією ACPI, але це все одно працює на багатьох комп'ютерах.

ні - Не призупиняйте роботу комп'ютера негайно, просто встановіть час пробудження. Наприклад, ви можете сказати своєму комп’ютеру прокинутися о 6 ранку. Після цього можна вкласти його спати вручну об 11 годині вечора або 1 годині ночі - в будь-якому випадку, він прокинеться о 6 ранку.

Секунди проти конкретного часу

Надалі опція -s потребує певних секунд. Наприклад, -s 60 прокидає ваш комп'ютер за 60 секунд, а -s 3600 прокидає ваш комп'ютер за годину.

Опція -t дозволяє розбудити комп’ютер у певний час. Цей перемикач хоче кілька секунд після епохи Unix (00:00:00 UTC 1 січня 1970 року). Щоб легко забезпечити правильну кількість секунд, поєднайте команду дати з командою rtcwake.

-L перемикач повідомляє rtcwake , що апаратні годинник встановлені по місцевим часом, в той час як -u перемикач повідомляє rtcwake , що апаратні годинник (в BIOS вашого комп'ютера) встановлено в UTC час. Дистрибутиви Linux часто встановлюють ваш апаратний годинник на час UTC і переводять його на місцевий час.

Наприклад, щоб ваш комп’ютер прокинувся завтра о 6:30, але не зупинився негайно (припустимо, що ваш апаратний годинник встановлений на місцевий час), виконайте таку команду:

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

Довідка


1
Приємний запис rtcwake в цьому питанні. Він пропонує комплексні рішення: askubuntu.com/questions/61708 / ...
Гар

6
Коли ви копіюєте пасту з веб-сайту, вкажіть принаймні URL: howtogeek.com/121241/…
hanoo

Здається, що rtcwake не може запам'ятати кілька випадків, тож як я можу змусити комп’ютер прокидатися, скажімо, щогодини?
Ян Кінг Інь

1

Ви можете спробувати налаштувати BIOS для події пробудження. Практично на кожній материнській платі є ця функція, скористайтеся посібником з mb і розібрайтеся, в деяких біологічних даних AMI це називається Wake up by RTC alarm, я думаю, що це простий спосіб прокиньте ПК у визначений час


0

Тож, якщо когось цікавить, це те, що я виявив, що працює, не маючи нічого встановлювати і як некореневий.

Використовуйте цей командний код:

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

а для затримки використовуйте команду сну з числом або smh або d (sec, min, day, hour) і з a;

приклад код:

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

Це призупиняє роботу комп'ютера через 60 секунд

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.