재부팅 시 WOL 시작 스크립트가 실행되지 않습니다. 12.04.4

재부팅 시 WOL 시작 스크립트가 실행되지 않습니다. 12.04.4

WOL을 활성화하려고 하는데 다음 답변을 따랐습니다.Wake-On-Lan을 영구적으로 활성화하려면 어떻게 해야 합니까?

링크에 따라 재부팅 시 WOL을 활성화하는 시작 작업을 만들었습니다. 스크립트는 다음과 같습니다

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

스크립트 이름은 wakeonlan.conf로 지정되었으며 /etc/init/에 있습니다. 다음과 같이 작업을 시작할 수 있습니다.

   sudo service wakeonlan start

성공적으로 시작되고 eth0에서 WOL이 활성화됩니다.

그러나 재부팅 시 upstart 작업이 시작되지 않습니다. wakeonlan.log에는 다음이 표시됩니다.

Cannot get current wake-on-lan settings: Operation not supported
not setting wol

다음에 무엇을 해야 할지 잘 모르겠습니다.

답변1

첫째, 우분투 12.04에는 "network"라는 이름의 작업이 없습니다. 대신 사용해야 합니다 started networking.

다음으로, 이것을 인스턴스 작업으로 만드는 것이 도움이 될 것입니다. 이 시도:

start on net-device-up

instance $IFACE

task

pre-start exec logger -t 'wakeonlan init script' enabling wake on lan for $IFACE

exec ethtool -s $IFACE wol g

제가 생각하는 현상은 /proc/net/dev에 있는 인터페이스 중 하나가 wol을 지원하지 않기 때문에 나머지 인터페이스에서는 작업이 계속되지 않는다는 것입니다. 위 작업은 각 인터페이스에 대해 개별적으로 wol을 켜므로 하나의 실패가 다른 인터페이스에 영향을 미치지 않습니다. 또한 이 작업은 인터페이스가 부팅 후 활성화될 때(핫플러그) 작동합니다.

관련 정보