UPS有辦法從遠端控制電源來將電腦開關機嗎?

lcy1983 wrote:
非常感謝大大指引明燈,可是我想請問遠端電源插座斷電以後電腦要怎麼讓它再自動開機?另外再用網路卡喚醒嗎?還是有更直接的方法?..(恕刪)


主機板 BIOS 設定中,電源控制那邊

有一個: AC back always on 的選項,把它 Enable 開啟

這選項的意思是:停電後,偵測恢復電源,是否自動開機?

預設都是 Disable 關閉。用做伺服器用途,一般會把它打開。

目前電腦都是 ATX 電源,其實只要通電,主機板就有吃到電。

有些主機板上有通電 LED 燈,即使關機狀態,都是亮的,用來判斷通電狀態。

所以 電源供應器 後面都會有一個開關。要插拔硬體(尤其介面卡、RAM)要把那個開關切到關掉(或者拔電線也行)。關掉才是完全斷電,才能安全的插拔硬體。否則通電狀態直接插拔,那片卡有可能會壞掉。


測試:你可以在電腦關機的狀態時,拔掉電線,再插上去,就會看到電腦自動開機。(先把那個 AC back always on 選項打開)

************************************

不過直接用斷電的方法,來讓無反應的主機重開,不是一個好方法

因為磁碟可能沒有回寫,造成資料遺失。甚至把作業系統搞爛掉,系統檔毀損什麼的。

現代的作業系統,很少會完全死當的,完全死當多半是硬體有問題。

只是常常網路障礙的話,應該寫一個腳本,排程定時自動運行,比如每 5~10分鐘,運行一次。

腳本大致思路,舉例:
--------------------------
ping 8.8.8.8 > 輸出到 temp 文字檔

cat 那個文字檔案,搜尋是否有 lost 掉封包的情況

if 掉封包 then reboot
如果 掉封包,則命令系統重開機
或者更進一步的測試(呼叫另一進階測試的腳本)

※ 或不要 reboot 重開機,重置網路界面就好。因為系統也沒當掉,只是網路障礙。

重開機前
echo 寫個訊息,到自訂 log 紀錄檔,紀錄下時間

else exit
否則離開腳本


然後排程讓腳本固定每幾分鐘運行一次。偵測到網路障礙,它就重開機。網路若尚好,什麼事也不幹。

關鍵是:這樣才能全自動。不必人工介入,也不必時常去查看。

腳本 script 程式,比如 bash、bat、power shell....什麼的。
chiouss wrote:UPS 只能通知系統...(恕刪)

把電源供應器的綠線跟黑線(地線)接在一起,這樣電源供應器的狀態就是時開了,但無法用機殼的電源紐開關機,但是ups供電時,電腦就會開機了,ups關機時,電腦也會關,平時人在現場時要手動開關機,可從電源供應器上的開關作切換

YAWPYNG wrote:
便宜的方案.......(恕刪)


我似乎有點理解大大的意思了
意思是否說這台 Router 可以用 POE 輸出供電給終端設備,
然後再使用所謂的繼電器橋接來控制電腦主機板的 reset 線路
而且由於 Router 本身提供排程 & web管理介面 所以用起來會非常方便?
我看大大的圖片 Router 接繼電器好像是用一般的網路線就可以完成
但是繼電器要怎麼接電腦主機的 reset 控制線路有點難倒我了
能否再麻煩大大為我說明指點一下呢 非常感謝喔

fedora wrote:
主機板 BIOS ...(恕刪)


感謝大大提供詳細的資訊
但是關於用程式判斷主機是否還活著 我對實用性有點存疑
因為很多時候主機可能還ping得到 但其他功能就是掛掉了
例如windows遠端桌面或是linux/ssh進不去
但是我主要的服務還是活著的 例如 httpd/sql server 之類的
可是有時候狀況是人必須要進去裡面做必要性維護
這樣跟等同死當是沒兩樣的 因為機器已經不受控了
那這樣的情形如果只用ping來檢測試是乎不太符合實際狀況
也許可以再做更進階的測試 可是畢竟當機的情形百百種
daemon是否能在當機的時候還在正常的受排程控制監測電腦回應我覺得好像也是不太可靠的
但是我想大大提供的概念應該是實際有在應用的 也許也應用的很好 甚至行之有年
只是能否請大大再幫我解惑一下我的疑問? 這樣真的可靠嗎?

lcy1983 wrote:
感謝大大提供詳細的...(恕刪)


一般常規的解決方案都是用IPMI,所以基本上你可以找主機板有支援
IPMI功能的即可。
例如:https://www.asus.com/tw/Motherboards/X99WSIPMI/
lcy1983 wrote:
因為很多時候主機可能還ping得到 但其他功能就是掛掉了
例如windows遠端桌面或是linux/ssh進不去
但是我主要的服務還是活著的 例如 httpd/sql server 之類的
可是有時候狀況是人必須要進去裡面做必要性維護
這樣跟等同死當是沒兩樣的 因為機器已經不受控了
那這樣的情形如果只用ping來檢測試是乎不太符合實際狀況
也許可以再做更進階的測試 可是畢竟當機的情形百百種
daemon是否能在當機的時候還在正常的受排程控制監測電腦回應我覺得好像也是不太可靠的
但是我想大大提供的概念應該是實際有在應用的 也許也應用的很好 甚至行之有年
只是能否請大大再幫我解惑一下我的疑問? 這樣真的可靠嗎?...(恕刪)


我之前有一台 Linux 主機,偶而網路會有障礙,下指令 pppoe stop,再 pppoe start 就可以解決。就是令主機掛斷撥號,重新撥接。

其餘方面都沒問題,排程運行腳本,各項服務 service 都正常,ssh 也進的去,只是不想人工操作,想要全自動,讓主機有自我智慧型檢測功能。

因為網路發生障礙的時間不一定,有時好幾週才一次,人去發現的時候,說不定網路障礙都發生好幾小時了,而讓腳本固定每 5分鐘運行一次,障礙最多只會存在5分鐘。主機自己就會發現障礙並排除(當然的,腳本程式是人要先設計好的)。

主機算是比較輕微問題,所以用自動腳本可以解決。

聽你的描述,你主機問題比較大,也許可行,也許不可行。


早期 ADSL 的時候,有一台小白龜,常常當機。也是用這個方法,去 ping 那台小白龜,沒回應就 telnet 登入進去(那台小白龜支援 telnet 登入),下 reboot 指令令其重開機。過程用腳本全自動化。

不過後來發現,小白龜死當的時候,可能 telnet 也進不去的(因為我檢查 log,有運行腳本,但網路並沒恢復)。所以後來乾脆去另買一台穩定的 ADSL2 路由器。


**********************************

ping 只是舉例,還可以有其它檢測法。

比如有沒有辦法自動檢測 遠端遙控程序 是否還存活。不過這個我也想不到方法。要去研究。


遠端遙控掛掉,但 web 還是好的,這個情況,也許可以利用一下。使其半自動化。

舉例:

設計一個隱藏網頁,位址只有你知道(放 robots.txt 排除搜尋),進階可以限制特定 IP 才能進入,進入需要輸入帳號密碼(直接用 .htaccess 即可)....什麼的。

進入網頁,有個開關,按下去,改寫一個檔案的值。

可以用 PHP 之類的去實現。

然後另外寫一個腳本,排程固定每 1分鐘/3分鐘/5分鐘 運行之類的。

去檢查那個檔案的值

0 就不理會

1 就 reboot 重開機。
(重開機前,先復位歸零那個檔案的值,不然重開機後,腳本排程循環又檢測到值,又重開機)

半自動化這樣子。

如果測試可行,就不必去買那個 網路遙控電源開關了。直接用遠端網頁就可以控制了。

此外是意外斷電,其實對主機很傷。磁碟可能剛好寫入檔案,然後突然電源中斷,這樣磁頭會立刻 park,那個檔案就沒寫完整,就變壞檔了。嚴重的情況,甚至會造成磁區某部份毀損,需要修復。

可能的話,儘量用標準 重開機程序,比較靠譜。
文章分享
評分
評分
複製連結

今日熱門文章 網友點擊推薦!