<a name="top"></a>

Включение wake on lan в linux

Экспорт в PDF

Дата создания: 2023/04/23 03:54 (C) mihanik

<a href='javascript:history.back();'><img src=/lib/exe/fetch.php/level_up.png height=35 width=50></a>

Источники

https://pyatilistnik.org/kak-nastroit-wake-on-lan-v-linux/?ysclid=lgqw638mss352787629

https://losst.pro/avtozagruzka-linux?ysclid=lgrh6cdxfl810294938#%D0%90%D0%B2%D1%82%D0%BE%D0%B7%D0%B0%D0%B3%D1%80%D1%83%D0%B7%D0%BA%D0%B0_%D1%81%D0%BA%D1%80%D0%B8%D0%BF%D1%82%D0%BE%D0%B2_%D0%B2_Linux

Что такое Wake-on-LAN

Подробности можно почитать тут: https://ru.wikipedia.org/wiki/Wake-on-LAN

Порядок настройки

Все действия будем выполнять от имени суперпользователя root.

Устанавливаем нужные пакеты программ

Для работы нам потребуется программа ethtool.

В Red Hat/CentOS/Fedora мы сможем установить её при помощи команды

yum -y install ethtool

Уточняем настройки сетевых интерфейсов

Для уточнения настроек будем использовать утилиту

ifconfig

Среди сетевых интерфейсов ищем нужное устройство. Нам необходим интерфейс который имеет доступ к внешней сети.

У меня это оказалась сетевая карта с именем enp3s0.

enp3s0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
ether d8:5e:d3:8a:91:94 txqueuelen 1000 (Ethernet)
RX packets 30056880 bytes 31128152545 (28.9 GiB)
RX errors 0 dropped 16566 overruns 0 frame 0
TX packets 24049700 bytes 14184901849 (13.2 GiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
device memory 0x42100000-421fffff

Проверяем возможности адаптера

Теперь проверим поддерживает ли сетевой адаптер технологию WoL.

ethtool enp3s0

В результате получим что-то типа

Supported ports: [ ]
Supported link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full
2500baseT/Full
Supported pause frame use: Symmetric
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
Advertised auto-negotiation: Yes
Advertised FEC modes: Not reported
Speed: 1000Mb/s
Duplex: Full
Auto-negotiation: on
Port: Twisted Pair
PHYAD: 0
Transceiver: internal
MDI-X: off (auto)
Supports Wake-on: pumbg
Wake-on: d
Current message level: 0x00000007 (7)
drv probe link
Link detected: yes

Supports Wake-on: pumbg - означает что наш сетевой интерфейс поддерживает технологию Wake On Lan.

Wake-on: d - означает, что но она отключена.

Включаем WoL

Wake On Lan можно включить вручную одной командой

ethtool -s enp3s0 wol g
Важно! При каждой перезагрузке нашей машины он будет деактивироваться!

Для решения этой проблемы мы настроим автовыполнение этой команды при каждом включении ПК.

Настраиваем авто-включение WoL при каждом включении ПК

Шаг 1

Создаём скрипт, который будет запускаться при каждом включении ПК.

Скрипт вы можете разместить, где вам удобно. Я скрипт расположу тут /opt/scripts/mywol.sh

mkdir /opt/scripts cat > /opt/scripts/mywol.sh << _EOF_ #!/bin/bash ethtool -s enp3s0 wol g exit _EOF_

Настроим права доступа к скрипту и разрешим его выполнение

chmod 640 /opt/scripts/mywol.sh chmod +x /opt/scripts/mywol.sh

Шаг 2

Теперь настроим автозапуск скрипта при включении ПК.

Для этого мы в директории /lib/systemd/system/ создадим простой юнит-файл с описанием того, что мы хотим. Файл назову mywol.service.

cat > /lib/systemd/system/mywol.service << _EOF_ [Unit] Description=My WoL Service After=network.target multi-user.target [Service] Type=idle ExecStart=/opt/scripts/mywol.sh [Install] WantedBy=multi-user.target _EOF_

Подробное описание секций файла можно почитиать тут: Создание простого systemd unit

Шаг 3

Теперь попросим систему перечитать настройки и включим автозапуск

systemctl daemon-reload systemctl enable mywol.service systemctl start mywol.service

Готово!!!

Теперь штатно выключаем ПК и пробуем его запустить при помощи WoL.

Важно! Не забывайте, что для того, чтобы технология WoL начала работать, мало настроить ОС, нужно ещё и в BIOS сделать правильные настройки!!!Какие именно настройки делать в BIOS указано в документации на вашу материнскую плату.

⇑ Наверх ⇑

В моей WIKI постоянно ведётся какая-то работа со статьями. Если у вас возникли вопросы или замечания, можете их отправлять на почту support@mihanik.net