필요한 패키지 설치
sudo apt install net-tools ethanol wakeonlan
네트워크 인터페이스 이름 조회
ifconfig
명령어를 통해 인터페이스명을 조회한다.
$ ifconfig
enp77s0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.1.20 netmask 255.255.255.0 broadcast 192.168.1.255
inet6 fe80::eaee:de3d:2471:f3f6 prefixlen 64 scopeid 0x20<link>
ether 18:c0:4d:a5:ac:2d txqueuelen 1000 (Ethernet)
RX packets 554 bytes 304087 (304.0 KB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 430 bytes 54745 (54.7 KB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
Code language: HTML, XML (xml)
위와 같이 조회할 수 있고 enp77s0
해당 명이 인터페이스 이름이다.
인터페이스 명을 가지고 wol을 설정할꺼다.
WOL 설정
인터페이스 설정에서 wol 옵션을 입력한다.
sudo ethanol -s enp77s0 wol g
설정 확인
sudo ethanol enp77s0
명령어를 입력하면
Settings for enp77s0:
Supported ports: [ TP MII ]
Supported link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full
2500baseT/Full
Supported pause frame use: Symmetric Receive-only
Supports auto-negotiation: Yes
Supported FEC modes: Not reported
Advertised link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full
2500baseT/Full
Advertised pause frame use: Symmetric Receive-only
Advertised auto-negotiation: Yes
Advertised FEC modes: Not reported
Link partner advertised link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full
Link partner advertised pause frame use: Symmetric Receive-only
Link partner advertised auto-negotiation: Yes
Link partner advertised FEC modes: Not reported
Speed: 1000Mb/s
Duplex: Full
Port: Twisted Pair
PHYAD: 0
Transceiver: internal
Auto-negotiation: on
MDI-X: Unknown
Supports Wake-on: pumbg
Wake-on: g
Link detected: yes
Code language: PHP (php)
위와 같이 맨아래 Wake-on: g
가 설정되었다면 wol로 부팅이 가능하다.
하지만, 시스탬 재부팅시 위 옵션이 초기화 된다. 그러므로 해당 설정을 부팅시에도 설정되게하는 스크립트 파일을 작성해야한다.
[Unit]
Description=Configure Wake-up on LAN
[Service]
Type=oneshot
ExecStart=/sbin/ethtool -s enp77s0 wol g
[Install]
WantedBy=basic.target
Code language: JavaScript (javascript)
이후 만든 파일을 systemctl Daemon에 등록하자.
sudo systemctl daemon-reload
sudo systemctl enable /etc/systemd/system/wol.service
이제 설정을 모두 끝났다. wol로 시스템 부팅을 테스트해보자!