首頁 系統教程 Linux linux 系統如何自動關機與開機

linux 系統如何自動關機與開機

Mar 01, 2024 am 08:00 AM
linux linux教程 紅帽 linux系統 linux指令 linux認證 紅帽linux linux視頻

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

寶貴的系統運行時間

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

系統休眠

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

# crontab -e -u root
# m h  dom mon dow   command
15 23 * * * /sbin/shutdown -h now
登入後複製

以下範例僅在週一至週五執行:

15 23 * * 1-5 /sbin/shutdown -h now
登入後複製

您可以為不同的日期和時間建立多個 cron 作業。透過指令 man 5 crontab 可以了解所有時間和日期的欄位。

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

15 23 * * 1-5 root shutdown -h now
登入後複製
自動喚醒

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

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

BIOS 喚醒

#BIOS 喚醒是最可靠的。我的系統主機板 BIOS 有一個易於使用的喚醒調度程式 (圖 1)。對你來說也是一樣的容易。

linux 系统如何自动关机和开机

#圖 1:我的系統 BIOS 有個易用的喚醒計時器。

主機遠端喚醒(Wake-On-LAN)
#

远程唤醒是仅次于 BIOS 唤醒的又一种可靠的唤醒方法。这需要你从第二台计算机发送信号到所要打开的计算机。可以使用 Arduino 或树莓派Raspberry Pi发送给基于 Linux 的路由器或者任何 Linux 计算机的唤醒信号。首先,查看系统主板 BIOS 是否支持 Wake-On-LAN ,要是支持的话,必须先启动它,因为它被默认为禁用。

然后,需要一个支持 Wake-On-LAN 的网卡;无线网卡并不支持。你需要运行 ethtool 命令查看网卡是否支持 Wake-On-LAN :

# ethtool eth0 | grep -i wake-on
        Supports Wake-on: pumbg
        Wake-on: g
登入後複製

这条命令输出的 “Supports Wake-on” 字段会告诉你你的网卡现在开启了哪些功能:

  • d -- 禁用
  • p -- 物理活动唤醒
  • u -- 单播消息唤醒
  • m -- 多播(组播)消息唤醒
  • b -- 广播消息唤醒
  • a -- ARP 唤醒
  • g -- 特定数据包magic packet唤醒
  • s -- 设有密码的特定数据包magic packet唤醒

ethtool 命令的 man 手册并没说清楚 p 选项的作用;这表明任何信号都会导致唤醒。然而,在我的测试中它并没有这么做。想要实现远程唤醒主机,必须支持的功能是 g —— 特定数据包magic packet唤醒,而且下面的“Wake-on” 行显示这个功能已经在启用了。如果它没有被启用,你可以通过 ethtool 命令来启用它。

# ethtool -s eth0 wol g
登入後複製

这条命令可能会在重启后失效,所以为了确保万无一失,你可以创建个 root 用户的定时任务(cron)在每次重启的时候来执行这条命令。

@reboot /usr/bin/ethtool -s eth0 wol g
登入後複製

另一个选择是最近的网络管理器Network Manager版本有一个很好的小复选框来启用 Wake-On-LAN(图 2)。

linux 系统如何自动关机和开机

图 2:启用 Wake on LAN

这里有一个可以用于设置密码的地方,但是如果你的网络接口不支持安全开机Secure On密码,它就不起作用。

现在你需要配置第二台计算机来发送唤醒信号。你并不需要 root 权限,所以你可以为你的普通用户创建 cron 任务。你需要用到的是想要唤醒的机器的网络接口和MAC地址信息。

30 08 * * * /usr/bin/wakeonlan D0:50:99:82:E7:2B 
登入後複製
RTC 唤醒

通过使用实时闹钟来唤醒计算机是最不可靠的方法。对于这个方法,可以参看 Wake Up Linux With an RTC Alarm Clock[1] ;对于现在的大多数发行版来说这种方法已经有点过时了。

下周继续了解更多关于使用 RTC 唤醒的方法。

通过 Linux 基金会和 edX 可以学习更多关于 Linux 的免费 Linux 入门[2]教程。

(题图:The Observatory at Delhi[3]


以上是linux 系統如何自動關機與開機的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

Linux體系結構:揭示5個基本組件 Linux體系結構:揭示5個基本組件 Apr 20, 2025 am 12:04 AM

Linux系統的五個基本組件是:1.內核,2.系統庫,3.系統實用程序,4.圖形用戶界面,5.應用程序。內核管理硬件資源,系統庫提供預編譯函數,系統實用程序用於系統管理,GUI提供可視化交互,應用程序利用這些組件實現功能。

vscode需要什麼電腦配置 vscode需要什麼電腦配置 Apr 15, 2025 pm 09:48 PM

VS Code 系統要求:操作系統:Windows 10 及以上、macOS 10.12 及以上、Linux 發行版處理器:最低 1.6 GHz,推薦 2.0 GHz 及以上內存:最低 512 MB,推薦 4 GB 及以上存儲空間:最低 250 MB,推薦 1 GB 及以上其他要求:穩定網絡連接,Xorg/Wayland(Linux)

vscode終端使用教程 vscode終端使用教程 Apr 15, 2025 pm 10:09 PM

vscode 內置終端是一個開發工具,允許在編輯器內運行命令和腳本,以簡化開發流程。如何使用 vscode 終端:通過快捷鍵 (Ctrl/Cmd ) 打開終端。輸入命令或運行腳本。使用熱鍵 (如 Ctrl L 清除終端)。更改工作目錄 (如 cd 命令)。高級功能包括調試模式、代碼片段自動補全和交互式命令歷史。

git怎麼查看倉庫地址 git怎麼查看倉庫地址 Apr 17, 2025 pm 01:54 PM

要查看 Git 倉庫地址,請執行以下步驟:1. 打開命令行並導航到倉庫目錄;2. 運行 "git remote -v" 命令;3. 查看輸出中的倉庫名稱及其相應的地址。

notepad怎麼運行java代碼 notepad怎麼運行java代碼 Apr 16, 2025 pm 07:39 PM

雖然 Notepad 無法直接運行 Java 代碼,但可以通過借助其他工具實現:使用命令行編譯器 (javac) 編譯代碼,生成字節碼文件 (filename.class)。使用 Java 解釋器 (java) 解釋字節碼,執行代碼並輸出結果。

vscode在哪寫代碼 vscode在哪寫代碼 Apr 15, 2025 pm 09:54 PM

在 Visual Studio Code(VSCode)中編寫代碼簡單易行,只需安裝 VSCode、創建項目、選擇語言、創建文件、編寫代碼、保存並運行即可。 VSCode 的優點包括跨平台、免費開源、強大功能、擴展豐富,以及輕量快速。

Linux的主要目的是什麼? Linux的主要目的是什麼? Apr 16, 2025 am 12:19 AM

Linux的主要用途包括:1.服務器操作系統,2.嵌入式系統,3.桌面操作系統,4.開發和測試環境。 Linux在這些領域表現出色,提供了穩定性、安全性和高效的開發工具。

vscode終端命令不能用 vscode終端命令不能用 Apr 15, 2025 pm 10:03 PM

VS Code 終端命令無法使用的原因及解決辦法:未安裝必要的工具(Windows:WSL;macOS:Xcode 命令行工具)路徑配置錯誤(添加可執行文件到 PATH 環境變量中)權限問題(以管理員身份運行 VS Code)防火牆或代理限制(檢查設置,解除限制)終端設置不正確(啟用使用外部終端)VS Code 安裝損壞(重新安裝或更新)終端配置不兼容(嘗試不同的終端類型或命令)特定環境變量缺失(設置必要的環境變量)

See all articles