情況是這樣的:
我透過區域網路喚醒「wakeonlan」從另一台電腦啟動我的主電腦。一切正常。當我完成我所做的事情后,我運行“sudo shutdown -h now”(在我正在工作的 ssh 終端中)來關閉計算機。但它沒有關閉,而是重新啟動。然後我必須透過 ssh 重新連接到它並再次執行 shutdown 命令,然後它就會關閉並保持關閉狀態。然後我可以透過區域網路喚醒再次啟動它......
有誰知道,為什麼當我透過區域網路喚醒啟動時輸入「sudo shutdown -h now」時,我的電腦實際上會重新啟動?
有關計算機的一些資訊:
Ubuntu 13.04
主機板:Gigabyte GA-Z77X-UD3H
乙太網路控制器(由「lspci」報道):Qualcomm Atheros AR8151 v2.0 千兆位元乙太網路(rev c0)
答案1
有一個骯髒的解決方案
a) create /etc/init.d/reshutdown with the contents
#!/bin/sh
# force shutdown (due to bug in wakeonlan)
#
case "$1" in
reshutdown)
touch /home/shutdown.chk
shutdown -r now
;;
start)
if [ -f /home/shutdown.chk ];
then
rm /home/shutdown.chk
shutdown -h now
fi
;;
esac
b) Execute: sudo chmod ugo+x /etc/init.d/reshutdown
b) Execute: sudo update-rc.d reshutdown start 1 1 2 3 4 5 6 .
c) Then to shutdown execute: sudo service reshutdown reshutdown
答案2
我也遇到了這個問題,使用的是 Intel DQ77MK 主機板,該主機板有 2 個板載 Intel GB 乙太網路。我透過啟用電源 BIOS 條目「本機 ACPI OS PCIe 支援」來修復此問題,我猜這允許 Ubuntu 重置標誌,表示 WOL 已觸發,可能在禁用它的情況下 BIOS 不允許 Ubuntu 重置標誌。
答案3
嘗試sudo poweroff
。
對我來說,與 WOL 搭配使用效果更好。