Linux下讓UPS在斷電時自動關閉計算機

Linux下讓UPS在斷電時自動關閉計算機

我想知道我在谷歌上找不到任何有用的東西。

我使用的是廉價的 UPS,如果出現電力問題(在整個東南亞很常見),它實際上可以讓我的電腦保持一段時間的供電。

但是,如果我讓機器保持打開狀態並走出家門去商店買東西怎麼辦?或者我想下載遊戲或任何其他大的東西,並且我要在夜間打開機器?

如果沒有電,一定有辦法「軟」地關閉電腦。

我使用的是 Ubuntu,執行「立即關閉」就足夠了。

我不敢相信這是不可能的,因為我認為我的要求很常見。

我怎樣才能做到這一點?

答案1

大多數 UPS(可能除了最便宜的以外)都具有此功能。否則,當您不在時,UPS 就沒有好處。如果您的電腦沒有,安全的做法是在無人值守時不要讓電腦保持開啟(休眠模式除外)。

數據連接

如果 UPS 正常運作,計算機不會知道市電已斷電。電腦知道要關閉(同時仍可以正常關閉)的唯一方法是 UPS 是否可以傳達該情況。此功能需要 UPS 和電腦之間建立資料連線。

在電腦端,如果 UPS 用於單一個人計算機,則通常採用 USB 連接。 UPS 本身的連接埠可能會有所不同。在許多設備上,它看起來像一個電話插孔(不要與某些型號上用於電話線路電湧保護的實際電話插孔混淆)。 UPS 附帶資料連接所需的任何電纜。

在更先進的型號中,UPS 還使用此連接來傳達狀態訊息,例如電池狀況。

軟體

您需要電腦上的軟體才能使用此資訊。 UPS 通常與 Windows 軟體捆綁在一起。 Linux 通常需要一兩個額外的步驟。一些發行版捆綁了通用程序或來自特定 UPS 製造商的程序(可能僅適用於該製造商的產品)。

如果您的發行版沒有,一些 UPS 製造商可以在其網站上下載其軟體的 Linux 版本。因此,如果您想要特定品牌的 UPS,這是第一個要檢查的地方。與 Windows 相比,Linux 的一個弱點是驅動程式軟體的可用性更有限,並且實作更需要「動手」。一些硬體購買決策需要由 Linux 支援的可用性來驅動。

如果您想要特定品牌的 UPS 並且他們不提供 Linux 軟體,以下是最常見的選擇:

  • apcupsd

    APC 是一種特殊情況。他們是最大的 UPS 製造商之一,擁有廣泛的型號。他們在 Linux 中投資支援和認證他們的模型。

    他們的免費apcupsd軟體與一些發行版捆綁在一起,通常可以在其他發行版的儲存庫中找到,可以透過套件管理器輕鬆選擇和安裝。儘管我從未使用過它,但它普遍受到好評,並且似乎是當前事實上的標準。

    一個限制是它僅支援 APC 產品。然而,如果您沒有充分的理由購買缺乏 Linux 軟體的品牌,那麼從 APC 的產品中進行選擇是一個簡單的選擇。

  • 堅果

    如果您絕對必須擁有不提供 Linux 軟體的製造商提供的 UPS,您可能可以使用網路 UPS 工具 (NUT)。這是一個免費的應用程序,可以處理幾乎所有與電源相關的事情的控制、監視和管理。對於一台計算機上的 UPS 來說,這可能有點大材小用,並且需要一些配置(對於新手來說這不是最佳解決方案)。這通常在大多數發行版的儲存庫中都可用。

    如果您正在考慮購買一台 UPS,而您唯一的軟體選擇是像 NUT 這樣的通用軟體,我強烈建議您先閱讀本手冊,以確保您能夠勝任配置它的任務。

  • 威寶

    另一個在 Linux(和其他作業系統)中運行的通用程式是威寶。除了瀏覽一下手冊之外,我個人對這個程式並不熟悉。我猜它沒有被廣泛使用,因為我在SU 上能找到的唯一提到的是兩個未回答的問題,這些問題來自那些無法用它來檢測UPS 的人(也只有幾個關於NUT 的問題,但這些是主要是關於使用可用數據)。

    與 NUT 一樣,WinPower 也需要詳細的設定步驟,並且您需要 UPS 的技術手冊來取得相關資訊。與 NUT 一樣,如果您計劃依賴 WinPower,我強烈建議您在購買 UPS 之前先閱讀手冊,以確認您可以訪問所需的技術信息,並確信您能夠勝任配置它的任務缺少 Linux 軟體。

答案2

我正在將 apcups 與我剛剛購買的 Cyber​​Power CP1000AVRLCDa 一起使用,它與我的 Linux Mint 機器配合得很好。

您甚至可以在同一 UPS 上有多台電腦的情況下進行設置,其中一台是主電腦並透過 USB 電纜連接到 UPS,其他電腦與該主電腦上的 apcupsd 通信,並且應配置為在之前關閉主人確實如此。

然而,直接回答你的問題 - 你需要一種方法來檢測斷電。如果 UPS 不供電(透過某種「繼電器」(開關),或透過乙太網路、串列或 USB),那麼您將需要另一種方法來偵測斷電,以便可以關閉。

我認為檢測斷電的一個愚蠢方法是讓另一台電腦未連接到 UPS,其唯一目的是在斷電時停止與「受保護」電腦通信,以便受保護電腦知道電源突然斷電並自行關閉。 (這有什麼意義嗎?)

更好的方法是對 PC 進行某種輸入,該輸入會根據房間內交流電源的存在而變化。除了另一台唯一目的是在斷電時死機的計算機之外,您也許可以設置一個設備,在通電時將並行端口上的一位設置為一個值,在斷電時將其設置為相反的值。我可以想到很多方法來做到這一點,從一個帶有由電源供電的LED 的盒子,它照亮光電二極管或類似的器件,然後以適當的方式拉動並行端口位,到由電源供電的鎖存繼電器,並且使用空閒觸點適當地拉動並行端口位。在開啟電腦之前,請先鎖定繼電器,以便電腦看到電源正常。然後,當電源關閉時,繼電器斷開並保持關閉狀態,告訴您的電腦關閉。

另一方面,如果您的電源可能會隨機反彈幾秒鐘然後又回來,因此您不希望單個斷電事件殺死您的電腦,那麼不要使用閉鎖繼電器 - 使用“常規”繼電器連接到主電源,從而提供電源狀態的即時指示。在電腦上,觀察該線,如果它在一段時間內“斷電”,請關閉。

注意 - 以上是關於如何檢測計算機斷電以便將其關閉的一些簡短的想法。我在這裡假設有一定程度的電子理解......並且要非常小心任何直接連接到電源的東西!

相關內容