web-dev-qa-db-ja.com

Wake-on-LANを永続的に有効にするにはどうすればよいですか?

ネットワークカードのwake-on-lanを常に有効にします。 コミュニティガイド は、/etc/network/interfacesに関連するコマンドを追加することを推奨しています。 Ubuntuのconfファイルを編集した過去の経験では、すべてのaptアップグレードではなくても、ブートごとにネットワークインターフェイスファイルが新たに書き込まれる可能性が非常に高くなります。起動時にwake-on-lanを有効にするための最良の方法は何ですか?

13
djeikyb

ネットワークカードが構成された後に実行されるブートスクリプトは、トリックを行う必要があります。 Ubuntuはupstartを使用します。 upstartジョブ、ethtool、upstartスクリプトの作成、およびより良い解決策を探してインターウェブを検索した後、 this from jevinskie (これは/etc/init)のファイルにあります:

start on started network

script
    for interface in $(cut -d: -f1 /proc/net/dev | tail -n +3); do
        logger -t 'wakeonlan init script' enabling wake on lan for $interface
        ethtool -s $interface wol g
    done
end script
  • NICが初期化されると開始します
  • / proc/net/devからnic名を取得します
  • アクションをsyslogに記録します
  • 見つかったすべてのNICに作用します
  • Ethtoolが必要なので、最初にインストールされていることを確認してください:

    Sudo apt-get install ethtool
    

1つのnicに目覚めの力を吹き込みたい場合は、次のようなものがより適切です。

start on started network

script
    interface=eth0
    logger -t 'wakeonlan init script' enabling wake on lan for $interface
    ethtool -s $interface wol g
end script
12
djeikyb

新しいファイルを作成し、wakeonlanconfigとし、以下の行を追加します。

#!/bin/bash
ethtool -s eth0 wol g
exit

次に、ファイルのアクセス許可を設定し、実行可能にします。

chmod a+x wakeonlanconfig

最後に、起動時にスクリプトを実行します。

update-rc.d -f wakeonlanconfig defaults

詳細については、以下をご覧ください: http://lukasz-lademann.blogspot.com/2013/01/how-set-up-wol-wake-on-lan-on-thin.html

3
Lukasz

Ubuntu 16.04では、WOL_DISABLE=N/etc/default/tlpを追加設定して、TLP電源管理によってWOLが無効にされないようにします。

http://linrunner.de/en/tlp/docs/tlp-configuration.html

NETDOWN=no/etc/default/haltを追加して、シャットダウン中にネットワークカードの電源が切れないようにします

1
nkef