更新:私の主な理論は今のところ(詳細は以下を参照):
- Ubuntuシステムは、スタンバイモードでNIC電源をシャットダウンしますか?
- 64ビットマシン用のRealtek RTL8111ドライバーが機能しませんか?
誰でも確認または拒否できますか?
数日前にUbuntu 12.04をインストールし、デスクトップメニューからUbuntuマシンをスタンバイにした後、別のPCからMagic Packetsを送信してWake-on-lanを動作させました。これを3回行いましたが、うまくいきました。その後、突然機能しなくなりました!一体どうしてこれが可能になるのでしょうか?!
WOLが機能しない場合、潜在的に1000の問題が発生する可能性があることを知っていますが、3回連続して機能するという事実は、それらのほとんどを排除します。 3回(数分間隔で)動作し、その後は動作しませんでした。 3回の間に動作し、次の10回の試行で失敗したのは、魔法のパケットを送信するPCのファイアウォールだけでした。そして、潜在的な問題を排除するためにすぐにファイアウォールをオフにし、パケットが通過することも確認しましたwiresharkを使用します(もちろん、Ubuntuマシンを使用します)。テストを開始する数時間前に、Ubuntuの完全な更新を行いました。
ほとんどの場合、私はさまざまなことを盲目的にテストしているように感じます。たとえば、NICの電源がシャットダウンされていないことを確認する方法はありますか?また、「cat/proc/acpi/wakeup」が「無効」になっているということは、何か問題があるということではありませんか?
WOLには多くのスレッドがありますが、10分間完全に動作し、理由もなく動作を停止するスレッドはありません。いくつかのスレッドは、12.04のインストール後のWOLの問題に言及しています。私が今残っている唯一のアイデアは、Ubuntu 10をインストールすることです。しかし、それは単なるテストであり、永続的な解決策ではなく、非常に時間のかかるテストです。そして、RTL8111/RTL8168は古いUbuntuで適切にサポートされていないと確信しています(古いUbuntuのNICには大きな問題があります)。このようなテストはさらに複雑になります。
私の問題を理解するには、上のテキストを読むだけでよいはずです。しかし、詳細な情報については、私がやったいくつかの事実とテストがあります:
- 「pci = noacpi」、「pci = noapic」、「acpi = force」、「apm = on apm = power-off」を/ etc/default/grubに追加してみました(そしてgrab.cfgの変更を確認しました)。もちろん、一度に1つ(それぞれの後に再起動します)。
- NICがcat/proc/acpi/wakeupで無効にされ、コマンド "echo -n LAN | Sudo tee/proc/acpi/wakeup"で有効にされ、LANがリストで有効になった
- ファイアウォールが無効になっています
- ethtoolは、wolの状態が「g」であることを示しています(「pumbag」、「d」、「g」に設定しようとしました)。
- これは、Realtek RTL1111/R8168Bを搭載したASUSボードです(ドライバーR8169がカーネルに付属しており、ドライバーが3回動作していました。最近、ドライバーR8168に変更しましたが、これは簡単ではありませんでしたが、違いは見られず、人々はR8169を報告するには、すべての今日に使用する必要があります)。
- また、Ubuntuマシンでwiresharkを使用して、マジックパケットがPCに到達したことを確認しました
- CMOS RAMのリセットを試みました(ジャンパーとバッテリーの取り外しの両方で5分間)。
- NIC LEDはスリープ中は点灯しませんが、スリープ中は他のPCでも点灯せず、WOLはそのPCで動作します。
- BIOSで「PS/2スペースバーを押すとウェイクオン」を有効にして、Ubuntuを起動し、メニューから「スタンバイ」を選択してスタンバイ状態にし、スペースバーを押して開始しました。ターミナルコマンドpm-suspendおよびhalt -pの後でも機能しました(ただし、完全にシャットダウンして再起動します)が、コマンドの停止後には起動しません。 HaltはOSをシャットダウンしますが、HWはオンのままにします。すべての場合でWOLを無視します。
- スタンバイ状態では、電源LEDが点滅し、ファンとハードディスクがサイレントになります。これは、WOLの試行後も同じままです。
- マジックパケットの送信に使用されるプログラムは、別の(Windows)PC上のmagicpacket(dot)free(dot)frです。
- Magic Packetの送信者の設定はUDPポート80サブネットマスク255.255.255.255で、それが機能する設定ですが、ポート9、7、0、TCp、マスク0.0.0.0も試しました。 MACアドレスを再確認しましたが、コピーアンドペーストで入力しましたが、前述のようにこれらの設定で3回機能しました。
- 私は1週間だけUbuntuを使用しました(昔からLinuxおよびUnixシステムの簡単な経験があります)
- スタートアップスクリプトに「ethtool -s eth0 wol g」(または「echo -n LAN | Sudo tee/proc/acpi/wakeup」)を追加していない各リブート後に機能させるために必要)マザーボードAsus AT5NM10T-IにはBIOSアップデートがありません(v0306)次のページでほとんどのことを試しました:wiki.ubuntuusers.de/Wake_on_LAN-en.gentoo-wiki.com/wiki/ACPI/Fix_common_problems#Nothing_Works-wiki.xbmc.org/index.php?title=HOW-TO:Enable_Wake-On-Device_for_Ubuntu
更新:
- はい、BIOSで「Power on by PME」(PCI電源管理イベント)を有効にしました。また、フォーラムで誰かが提案したので「Power on by Ring」を有効にしましたが、それがWOLに影響を与えるとは信じられませんが、傷つけることもできません。 3リムで動作するため、これはBIOS設定の問題ではありません。
- 実際にUbuntu 12.04を再インストールしようとしましたが、再び3回動作しましたが、その後死んでいます。 (実際、今回は1回動作し、動作しなかった後、連続して2回動作し、その後は再び動作しませんでした。)---この新しいテストの詳細はおそらく意味がありません。ワークグループ内のPC間のファイル共有に対してSambaを適切に有効にしました。動作した3回は、Sudo ethtool -s eth0 wol gを送信する必要はありませんでした(Sudo ethtool eth0は常にwolモード "g"であると報告するため、明らかにNICはそのモードで起動します)。そして、Sudo cat/proc/acpi/wakeupがLANを常に「有効」として表示するようになりました。今回は、更新なしでダウンロードした12.04を使用しました(Ubuntuのデスクトップは更新がなかったと言っていました)、後で(動作を停止してからずっと)136の更新があると言ったので、それらをインストールして再起動しましたが、まだ動作しませんでした。
- どうやらこのNICは長年Linuxユーザーにとって面倒でしたが、最近からカーネルに付属のドライバーで正常に動作していると思いました。これは、私が考える最も一般的なNICの1つです。
更新:
- Ubuntu 11.10でテストしました。同じ問題、またはそのバージョンがあります:WOLは4回のうち約1回動作するようです。突然動作を停止するのではなく、毎回動作するわけではありません(そこから遠い).
- Windows 7でテスト済み。Realtekドライバーをインストール。 NICの設定(HWマネージャー)で「マジックパケットのみを起動できるようにする」にチェックマークを付けたところ、問題なく動作し、5回連続でテストされました。注:最初にビデオドライバーとオーディオドライバーをインストールする必要はありませんでした。その後、休止状態のみが機能しましたが、WOL呼び出しには問題なく応答しました。ビデオおよびオーディオドライバーと、ACPIドライバーと何らかの関係があると思われる「PC Probe II」をインストールしました。システム内の1つのデバイスがacpiをサポートしていない場合、Windowsがスタンバイ(S3)を許可しない可能性があることをACPIのウィキペディアで読んだ後、これを行いました。
- Windowsでスリープモード(または休止状態)にあるとき、接続されたデバイスのルーターのリストにこのユニットが表示されます(ただし、NICのLEDは消灯しています)。 (前に言ったように、別のPCの場合、WOLが機能していてもこのリストに表示されないため、必ずしもそうではないようです)。ただし、このPCの場合、NICに電力が供給されていない可能性があります。つまり、ここでの問題はUbuntuがNICの電源をシャットダウンすることです。
- 私のマシンはすべて64ビットであることを忘れていました。 32ビットドライバーが機能する一方で、64ビットドライバーが機能しないことは珍しくありません。したがって、1つの疑いは、64ビットRealtekドライバーがRTL8111などのLinuxでまだ正しく動作しないことです-私は読んだ長年にわたってこれらのNICに問題があったことを知っています64ビットマシンでWOLを使用していますか?
だから今の私の主な理論は次のとおりです。
- Ubuntuシステムは、スタンバイモードでNIC電源をシャットダウンしますか?
- 64ビットマシン用のRealtekドライバーが機能しませんか?
同じ問題がありました。しかし、私のマシンには古いSuseとWindowsがインストールされていました。そのOSからシャットダウンすると、WakeOnLanは正常に動作します。しかし、私はUbuntu 1204LTS 64ビットを使用したいと思います。 Ubuntuからシャットダウンした後、コンピューターはWOLで起動しません。 ethtoolで設定をテストしました。しかし、すべてが調整されました。
解決策:最新のドライバーをrealtekからダウンロードしてインストールします。それは私のために働く。
www.realtek.com/downloads/ このドライバーをダウンロード:
LINUX driver for kernel 2.6.x and 2.4.x (Support x86 and x64) 8.030.00 2012/5/14
次に、これらをターミナルに入力します。
cd ~/Downloads
tar -xvjf r8168-8.030.00.tar.bz2
cd r8168-8.030.00/
Sudo ./autorun.sh
それで全部です。
ロルフ