Tạm dừng và đánh thức PC vào thời gian nhất định


Câu trả lời:


9

Bạn có thể làm (ít nhất một nửa) điều này với Lịch trình Gnome . ( sudo apt-get install gnome-schedule) (NB: nó được đưa vào bệ phóng của bạn như Scheduled Tasks , mặc dù gõ gnome-lịch vẫn mang nó lên.)

Sau khi khởi chạy nó, "Mới" -> "Nhiệm vụ thường xuyên". Điền vào mẫu khi bạn thấy phù hợp.

Lệnh để ngủ đông là /usr/sbin/pm-hibernate(Đình chỉ là /usr/sbin/pm-suspend)

Liên quan đến việc thức dậy một lần nữa, vui lòng xem "Làm thế nào để tôi lên lịch thức dậy sau khi ngủ đông?"


Thay phiên, bạn có thể cài đặt "giao diện quản lý năng lượng". ( sudo apt-get install powermanagement-interface)

Sau đó tạo một kịch bản như thế này:

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

Và lên lịch trong crontab của root.

Nguồn


19

Cách làm cho máy tính Linux của bạn tự động thức dậy khỏi giấc ngủ

Bạn muốn đặt PC Linux của mình vào chế độ ngủ hoặc ngủ đông và để nó tự động thức dậy vào một thời điểm cụ thể? Bạn có thể dễ dàng làm điều này với lệnh rtcwake, được bao gồm theo mặc định với hầu hết các hệ thống Linux.

Điều này có thể hữu ích nếu bạn muốn máy tính của mình làm việc gì đó vào một thời điểm cụ thể, nhưng không muốn nó chạy 24/7. Ví dụ: bạn có thể đặt máy tính của mình ngủ vào ban đêm và đánh thức nó trước khi bạn thực hiện một số tải xuống.

Sử dụng rtcwake

Lệnh rtcwake yêu cầu quyền root, do đó, nó phải được chạy với sudo trên Ubuntu và các bản phân phối có nguồn gốc từ Ubuntu khác. Trên các bản phân phối Linux không sử dụng sudo, trước tiên bạn sẽ phải đăng nhập bằng root bằng lệnh su.

Đây là cú pháp cơ bản của lệnh:

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

Ví dụ: lệnh sau sẽ treo hệ thống của bạn vào đĩa (ngủ đông) và đánh thức nó sau 60 giây:

sudo rtcwake -m disk -s 60

Các loại đình chỉ

Công tắc -m chấp nhận các loại đình chỉ sau:

chế độ chờ - Chế độ chờ cung cấp ít tiết kiệm điện, nhưng khôi phục hệ thống đang chạy rất nhanh. Đây là chế độ mặc định nếu bạn bỏ qua công tắc -m.

mem - Đình chỉ RAM. Điều này mang lại sự tiết kiệm năng lượng đáng kể - mọi thứ đều được đưa vào trạng thái năng lượng thấp, ngoại trừ RAM của bạn. Nội dung của bộ nhớ của bạn được bảo tồn.

đĩa - Đình chỉ vào đĩa. Nội dung của bộ nhớ của bạn được ghi vào đĩa và máy tính của bạn bị tắt. Máy tính sẽ bật và trạng thái của nó sẽ được khôi phục khi bộ đếm thời gian hoàn thành.

tắt - Tắt máy tính hoàn toàn. Trang người đàn ông của rtcwake lưu ý rằng việc khôi phục từ bản off off không chính thức được hỗ trợ bởi đặc tả ACPI, nhưng dù sao thì nó cũng hoạt động với nhiều máy tính.

không - Đừng tạm ngưng máy tính ngay lập tức, chỉ cần đặt thời gian thức dậy. Ví dụ, bạn có thể bảo máy tính của bạn thức dậy lúc 6 giờ sáng. Sau đó, có thể đặt nó vào chế độ ngủ thủ công vào lúc 11 giờ tối hoặc 1 giờ sáng - bằng cách nào đó, nó sẽ thức dậy lúc 6 giờ sáng.

Giây so với thời gian cụ thể

Các -s tùy chọn mất một số giây trong tương lai. Ví dụ: -s 60 đánh thức máy tính của bạn trong 60 giây, trong khi -s 3600 đánh thức máy tính của bạn dậy sau một giờ.

Các -t tùy chọn cho phép bạn để đánh thức máy tính của bạn tại một thời điểm cụ thể. Công tắc này muốn có một vài giây kể từ thời kỳ Unix (00:00:00 UTC ngày 1 tháng 1 năm 1970). Để dễ dàng cung cấp số giây chính xác, hãy kết hợp lệnh date với lệnh rtcwake.

Công tắc -l báo cho rtcwake rằng đồng hồ phần cứng được đặt thành giờ cục bộ, trong khi công tắc -u cho rtcwake biết rằng đồng hồ phần cứng (trong BIOS máy tính của bạn) được đặt thành giờ UTC. Các bản phân phối Linux thường đặt đồng hồ phần cứng của bạn thành giờ UTC và dịch nó sang giờ địa phương của bạn.

Ví dụ: để máy tính của bạn thức dậy lúc 6:30 sáng ngày mai nhưng không tạm ngưng ngay lập tức (giả sử đồng hồ phần cứng của bạn được đặt thành giờ địa phương), hãy chạy lệnh sau:

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

Cứu giúp


1
Một câu hỏi rtcwake tốt đẹp là ở câu hỏi này. Nó cung cấp giải pháp hoàn chỉnh: askubfox.com/questions/61708/ Lần
gare

6
Xin vui lòng khi bạn sao chép dán từ một cho trang web ít nhất url: howtogeek.com/121241/...
hanoo

Dường như rtcwake không thể nhớ nhiều trường hợp, vậy làm thế nào để tôi làm cho máy tính thức dậy, nói, mỗi giờ?
Yan King Yin

1

Bạn có thể thử thiết lập BIOS cho một sự kiện đánh thức đánh thức PC vào một thời điểm cụ thể


0

Vì vậy, nếu bất cứ ai quan tâm thì đây là những gì tôi thấy rằng nó hoạt động, mà không phải cài đặt bất cứ thứ gì và không phải là root.

Sử dụng mã lệnh này:

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

và để trì hoãn nó sử dụng lệnh ngủ với một số bằng smh hoặc d (giây, phút, ngày, giờ) và với a;

Mã ví dụ:

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

Điều đó làm treo máy tính sau 60 giây

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.