自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

如何自動喚醒和關閉Linux

系統(tǒng) Linux
了解如何通過配置 Linux 計算機來根據時間自動喚醒和關閉。不要成為一個電能浪費者。如果你的電腦不需要開機就請把它們關機。出于方便和計算機宅的考慮,你可以通過配置你的 Linux 計算機實現自動喚醒和關閉。

[[212331]]

了解如何通過配置 Linux 計算機來根據時間自動喚醒和關閉。

不要成為一個電能浪費者。如果你的電腦不需要開機就請把它們關機。出于方便和計算機宅的考慮,你可以通過配置你的 Linux 計算機實現自動喚醒和關閉。

寶貴的系統(tǒng)運行時間

有時候有些電腦需要一直處在開機狀態(tài),在不超過電腦運行時間的限制下這種情況是被允許的。有些人為他們的計算機可以長時間的正常運行而感到自豪,且現在我們有內核熱補丁能夠實現只有在硬件發(fā)生故障時才需要機器關機。我認為比較實際可行的是,像減少移動部件磨損一樣節(jié)省電能,且在不需要機器運行的情況下將其關機。比如,你可以在規(guī)定的時間內喚醒備份服務器,執(zhí)行備份,然后關閉它直到它要進行下一次備份。或者,你可以設置你的互聯網網關只在特定的時間運行。任何不需要一直運行的東西都可以將其配置成在其需要工作的時候打開,待其完成工作后將其關閉。

系統(tǒng)休眠

對于不需要一直運行的電腦,使用 root 的 cron 定時任務(即 /etc/crontab)可以可靠地關閉電腦。這個例子創(chuàng)建一個 root 定時任務實現每天晚上 11 點 15 分定時關機。

  1. # crontab -e -u root 
  2.  
  3. # m h  dom mon dow   command 
  4.  
  5. 15 23 * * * /sbin/shutdown -h now 

以下示例僅在周一至周五運行:

  1. 15 23 * * 1-5 /sbin/shutdown -h now 

您可以為不同的日期和時間創(chuàng)建多個 cron 作業(yè)。 通過命令 man 5 crontab 可以了解所有時間和日期的字段。

一個快速、容易的方式是,使用 /etc/crontab 文件。但這樣你必須指定用戶:

  1. 15 23 * * 1-5 root shutdown -h now 

自動喚醒

實現自動喚醒是一件很酷的事情;我大多數 SUSE (SUSE Linux)的同事都在紐倫堡,因此,因此為了跟同事能有幾小時一起工作的時間,我不得不需要在凌晨五點起床。我的計算機早上 5 點半自動開始工作,而我只需要將自己和咖啡拖到我的桌子上就可以開始工作了。按下電源按鈕看起來好像并不是什么大事,但是在每天的那個時候每件小事都會變得很大。

喚醒 Linux 計算機可能不如關閉它可靠,因此你可能需要嘗試不同的辦法。你可以使用遠程喚醒(Wake-On-LAN)、RTC 喚醒或者個人電腦的 BIOS 設置預定的喚醒這些方式。這些方式可行的原因是,當你關閉電腦時,這并不是真正關閉了計算機;此時計算機處在極低功耗狀態(tài)且還可以接受和響應信號。只有在你拔掉電源開關時其才徹底關閉。

BIOS 喚醒

BIOS 喚醒是最可靠的。我的系統(tǒng)主板 BIOS 有一個易于使用的喚醒調度程序 (圖 1)。對你來說也是一樣的容易。

 

圖 1:我的系統(tǒng) BIOS 有個易用的喚醒定時器。

圖 1:我的系統(tǒng) BIOS 有個易用的喚醒定時器。

主機遠程喚醒(Wake-On-LAN)

遠程喚醒是僅次于 BIOS 喚醒的又一種可靠的喚醒方法。這需要你從第二臺計算機發(fā)送信號到所要打開的計算機??梢允褂?Arduino 或樹莓派發(fā)送給基于 Linux 的路由器或者任何 Linux 計算機的喚醒信號。首先,查看系統(tǒng)主板 BIOS 是否支持 Wake-On-LAN ,要是支持的話,必須先啟動它,因為它被默認為禁用。

然后,需要一個支持 Wake-On-LAN 的網卡;無線網卡并不支持。你需要運行 ethtool 命令查看網卡是否支持 Wake-On-LAN :

  1. # ethtool eth0 | grep -i wake-on 
  2.  
  3.         Supports Wake-on: pumbg 
  4.  
  5.         Wake-on: g 

這條命令輸出的 “Supports Wake-on” 字段會告訴你你的網卡現在開啟了哪些功能:

  • d -- 禁用
  • p -- 物理活動喚醒
  • u -- 單播消息喚醒
  • m -- 多播(組播)消息喚醒
  • b -- 廣播消息喚醒
  • a -- ARP 喚醒
  • g -- 特定數據包喚醒
  • s -- 設有密碼的特定數據包喚醒

ethtool 命令的 man 手冊并沒說清楚 p 選項的作用;這表明任何信號都會導致喚醒。然而,在我的測試中它并沒有這么做。想要實現遠程喚醒主機,必須支持的功能是 g —— 特定數據包喚醒,而且下面的“Wake-on” 行顯示這個功能已經在啟用了。如果它沒有被啟用,你可以通過 ethtool 命令來啟用它。

  1. # ethtool -s eth0 wol g 

這條命令可能會在重啟后失效,所以為了確保萬無一失,你可以創(chuàng)建個 root 用戶的定時任務(cron)在每次重啟的時候來執(zhí)行這條命令。

  1. @reboot /usr/bin/ethtool -s eth0 wol g 

另一個選擇是最近的網絡管理器版本有一個很好的小復選框來啟用 Wake-On-LAN(圖 2)。

 

圖 2:啟用 Wake on LAN

圖 2:啟用 Wake on LAN

這里有一個可以用于設置密碼的地方,但是如果你的網絡接口不支持安全開機密碼,它就不起作用。

現在你需要配置第二臺計算機來發(fā)送喚醒信號。你并不需要 root 權限,所以你可以為你的普通用戶創(chuàng)建 cron 任務。你需要用到的是想要喚醒的機器的網絡接口和MAC地址信息。

 

  1. 30 08 * * * /usr/bin/wakeonlan D0:50:99:82:E7:2B  

RTC 喚醒

通過使用實時鬧鐘來喚醒計算機是最不可靠的方法。對于這個方法,可以參看 Wake Up Linux With an RTC Alarm Clock ;對于現在的大多數發(fā)行版來說這種方法已經有點過時了。

下周繼續(xù)了解更多關于使用 RTC 喚醒的方法。

通過 Linux 基金會和 edX 可以學習更多關于 Linux 的免費 Linux 入門教程。

 

(題圖:The Observatory at Delhi) 

責任編輯:龐桂玉 來源: Linux中國
相關推薦

2017-08-02 15:28:58

Linux進程睡眠和喚醒

2019-04-25 09:49:55

Windows 10自動電源Windows

2017-03-03 09:40:52

Linux休眠喚醒

2023-01-18 23:06:23

Linux鬧鐘

2012-08-22 13:53:15

Windows 8Linux

2017-12-18 10:30:18

Linux無線網卡網絡喚醒

2011-01-07 10:26:13

linux報警聲分辨率

2024-11-29 14:59:16

Linux掛載硬盤

2024-01-04 17:03:43

Linux操作系統(tǒng)硬盤

2018-03-19 08:32:16

Linux 進程睡眠喚醒

2020-06-02 17:07:56

內核阻塞進程

2010-05-31 09:58:57

關閉IPv6

2011-09-02 14:23:38

ubuntu

2022-10-08 09:42:05

微軟Windows 11

2013-01-17 16:17:33

Android開發(fā)Intent組件

2019-08-20 15:38:19

樹莓派Linux

2010-01-20 18:10:48

2010-02-02 09:36:38

2012-05-10 09:14:28

Windows 7硬盤

2010-02-24 15:56:48

Linux系統(tǒng)
點贊
收藏

51CTO技術棧公眾號