ระงับและปลุกพีซีในเวลาที่แน่นอน


22

ฉันต้องการให้พีซีของฉันนอนตอนสี่โมงครึ่งและตื่นตอน 05:15 ทุกวัน

ฉันจะทำอย่างไร


คำตอบ:


9

คุณสามารถทำ (อย่างน้อยครึ่งหนึ่งของ) นี้กับGnome กำหนดการ ( sudo apt-get install gnome-schedule) (NB: ทำให้ตัวเรียกใช้ของคุณเป็นงานตามกำหนดการแต่การพิมพ์gnome-scheduleยังนำมาใช้)

หลังจากเปิดตัว "ใหม่" -> "ภารกิจที่เกิดซ้ำ" กรอกแบบฟอร์มตามที่เห็นสมควร

คำสั่งให้จำศีลคือ/usr/sbin/pm-hibernate(Suspend is /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 PC ของคุณเข้าสู่โหมดสลีปหรือโหมดไฮเบอร์เนตและตั้งเวลาปลุกตามเวลาที่กำหนดหรือไม่ คุณสามารถทำสิ่งนี้ได้อย่างง่ายดายด้วยคำสั่ง rtcwake ซึ่งรวมอยู่ในระบบ Linux ส่วนใหญ่

สิ่งนี้มีประโยชน์ถ้าคุณต้องการให้คอมพิวเตอร์ทำอะไรบางอย่างในเวลาที่กำหนด แต่ไม่ต้องการให้มันทำงานตลอดเวลา 24/7 ตัวอย่างเช่นคุณสามารถทำให้คอมพิวเตอร์ของคุณเข้าสู่โหมดสลีในเวลากลางคืนและทำให้คอมพิวเตอร์ตื่นขึ้นก่อนที่จะทำการดาวน์โหลด

ใช้ rtcwake

คำสั่ง rtcwake ต้องการการอนุญาตรูทดังนั้นจึงต้องรันด้วย sudo บน Ubuntu และการแจกแจงอื่น ๆ ที่ได้รับจาก Ubuntu บน Linux ดิสทริบิวชันที่ไม่ใช้ sudo คุณจะต้องเข้าสู่ระบบด้วยรูทด้วยคำสั่ง su ก่อน

นี่คือไวยากรณ์พื้นฐานของคำสั่ง:

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

ตัวอย่างเช่นคำสั่งต่อไปนี้จะระงับระบบของคุณไปที่ดิสก์ (จำศีลมัน) และปลุกมันขึ้น 60 วินาทีในภายหลัง:

sudo rtcwake -m disk -s 60

ประเภทของการระงับ

-mสวิทช์ยอมรับประเภทต่อไปนี้ระงับ:

สแตนด์บาย - สแตนด์บายให้การประหยัดพลังงานเพียงเล็กน้อย แต่การเรียกคืนไปยังระบบที่รันอยู่นั้นรวดเร็วมาก นี่เป็นโหมดเริ่มต้นหากคุณไม่ใช้สวิตช์ -m

mem - ระงับ RAM สิ่งนี้ให้การประหยัดพลังงานอย่างมีนัยสำคัญ - ทุกอย่างถูกกำหนดให้อยู่ในสถานะพลังงานต่ำยกเว้น RAM ของคุณ เนื้อหาของหน่วยความจำของคุณจะถูกเก็บรักษาไว้

disk - พักไว้ที่ดิสก์ เนื้อหาของหน่วยความจำของคุณถูกเขียนไปยังดิสก์และคอมพิวเตอร์ของคุณปิดอยู่ คอมพิวเตอร์จะเปิดและสถานะของมันจะถูกกู้คืนเมื่อตัวจับเวลาเสร็จสิ้น

ปิด - ปิดคอมพิวเตอร์อย่างสมบูรณ์ man page ของ rtcwake บันทึกว่าการกู้คืนจาก "ปิด" ไม่ได้รับการสนับสนุนอย่างเป็นทางการตามข้อกำหนด ACPI แต่สามารถใช้ได้กับคอมพิวเตอร์หลายเครื่องต่อไป

ไม่ - อย่าหยุดคอมพิวเตอร์ทันทีเพียงแค่ตั้งเวลาปลุก ตัวอย่างเช่นคุณสามารถบอกให้คอมพิวเตอร์ของคุณตื่นนอนตอน 6 โมงเช้า หลังจากนั้นคุณสามารถนอนหลับด้วยตนเองเวลา 23.00 น. หรือ 01.00 น. - ไม่ว่าจะด้วยวิธีใดก็จะตื่นตอน 6 โมงเช้า

วินาทีเทียบกับเวลาเฉพาะ

-sตัวเลือกที่จะใช้เวลาจำนวนวินาทีในอนาคต ตัวอย่างเช่น -s 60 ทำให้คอมพิวเตอร์ของคุณทำงานใน 60 วินาทีในขณะที่ -s 3600 ทำให้คอมพิวเตอร์ของคุณทำงานในอีกหนึ่งชั่วโมง

-tตัวเลือกที่ช่วยให้คุณสามารถที่จะปลุกเครื่องคอมพิวเตอร์ของคุณในเวลาที่เฉพาะเจาะจง สวิตช์นี้ต้องการจำนวนวินาทีตั้งแต่ Unix epoch (00:00:00 UTC วันที่ 1 มกราคม 1970) หากต้องการระบุจำนวนวินาทีที่ถูกต้องอย่างง่ายดายให้รวมคำสั่ง date กับคำสั่ง rtcwake

-lสวิทช์บอกว่านาฬิกา rtcwake ฮาร์ดแวร์ที่ถูกกำหนดให้เป็นเวลาท้องถิ่นขณะที่สวิทช์ -u บอก rtcwake ว่านาฬิกาฮาร์ดแวร์ (ใน BIOS ของคอมพิวเตอร์ของคุณ) ตั้งค่าเป็นเวลา UTC ลีนุกซ์ลีนุกซ์มักจะตั้งนาฬิกาฮาร์ดแวร์ของคุณเป็นเวลา UTC และแปลเป็นเวลาท้องถิ่นของคุณ

ตัวอย่างเช่นหากต้องการให้คอมพิวเตอร์ของคุณตื่นนอนเวลา 6.30 น. ในวันพรุ่งนี้ แต่ไม่ต้องระงับทันที (สมมติว่านาฬิกาฮาร์ดแวร์ของคุณถูกตั้งค่าเป็นเวลาท้องถิ่น) ให้เรียกใช้คำสั่งต่อไปนี้:

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

ช่วยด้วย


1
คำถาม rtcwake ที่ดีอยู่ที่คำถามนี้ มันมีทางออกที่สมบูรณ์: askubuntu.com/questions/61708/…
gare

6
กรุณาเมื่อคุณคัดลอกแปะจากเว็บไซต์อย่างน้อยก็ให้ url: howtogeek.com/121241/…
hanoo

ดูเหมือนว่า rtcwake จะไม่สามารถจำได้หลายครั้งดังนั้นฉันจะทำให้คอมพิวเตอร์ตื่นขึ้นมาพูดทุกชั่วโมงได้อย่างไร
Yan King Yin

1

คุณสามารถลองตั้งค่า BIOS สำหรับเหตุการณ์ปลุกเมนบอร์ดเกือบทุกตัวมีคุณสมบัตินั้นใช้คู่มือ mb ของคุณและหามันใน AMI bios บางตัวเรียกว่า Wake up โดย RTC alarm ฉันคิดว่านั่นเป็นวิธีที่ง่ายในการ ปลุกพีซีในเวลาที่กำหนด


0

ดังนั้นหากใครสนใจนี่คือสิ่งที่ฉันพบว่าใช้งานได้โดยไม่ต้องติดตั้งอะไรและไม่เป็นรูท

ใช้รหัสคำสั่งนี้:

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

และเพื่อหน่วงเวลาให้ใช้คำสั่ง sleep พร้อมตัวเลขที่มี smh หรือ d (วินาที, นาที, วัน, ชั่วโมง) และด้วย;

รหัสตัวอย่าง:

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

ที่หยุดทำงานคอมพิวเตอร์หลังจาก 60 วินาที

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.