Мы все испытываем желание автоматизировать все: наши машины, дома и особенно компьютеры. Wake-on-LAN – это идеальный способ автоматизировать включение компьютера. Хотя это руководство посвящено тому, как включить Wake-on-LAN в Ubuntu, вы можете применить его в любом дистрибутиве Linux и даже найти эту функцию в Windows.
Что такое Wake-on-LAN?
Wake-on-LAN – это сетевой стандарт, который позволяет включать или пробуждать компьютер с помощью сетевого сообщения. Это сообщение, называемое волшебным пакетом, отправляется с другого устройства в той же локальной сети или даже по беспроводной сети.
В волшебном пакете содержится MAC-адрес сетевой интерфейсной Карты (NIC) целевого компьютера, который однозначно идентифицирует оборудование. Когда сетевая карта, которая остается в состоянии низкого энергопотребления даже при выключенном компьютере, получает этот пакет, она дает сигнал материнской плате включить питание системы.
Подготовка системы к работе в режиме Wake-on-LAN
Прежде чем приступать к работе, убедитесь, что вы выполнили эти основные требования:
- Проводное Ethernet-соединение (Wi-Fi WoL ограничен и часто ненадежен)
- Совместимая материнская плата и сетевая карта (большинство современных плат поддерживают эту технологию)
- Настройки BIOS/UEFI, поддерживающие WoL
- Административный доступ к вашей машине Ubuntu
Проверьте аппаратное обеспечение и настройки BIOS
Во-первых, вам нужно убедиться, что ваше оборудование поддерживает Wake-on-LAN. Большинство современных настольных компьютеров и многие ноутбуки поддерживают эту функцию, но все же стоит перепроверить.
Перезагрузите компьютер и нажмите соответствующую клавишу для входа в BIOS/UEFI (обычно F2, F10, Del или Esc – следите за экраном во время загрузки). Найдите такие опции, как Wake-on-LAN, Power on by PCI-E, PCI Power Up или Allow PCI Wake-Up Event. Точное название зависит от производителя. Установите для опции значение Enabled.
Вам также может понадобиться отключить функцию ErP Ready или Deep Sleep, поскольку эти режимы энергосбережения могут полностью отключить питание сетевой карты, не позволяя ей получить волшебный пакет. Некоторые ноутбуки также требуют настройки типа Always On USB для поддержания питания сетевой карты в выключенном или спящем режиме.
Проверьте, поддерживает ли ваша сетевая карта функцию Wake-on-LAN
Чтобы функция Wake-on-LAN работала, ваша Ethernet-карта должна ее поддерживать. Она является стандартом уже как минимум 10 лет, так что шансы на то, что ваша карта поддерживает эту функцию, высоки, но всегда полезно перепроверить.
Интерфейс Ethernet – это сетевая карта вашего устройства. Каждая карта имеет уникальное имя, которое можно узнать с помощью следующей команды терминала:
ip a
Искомое имя похоже на enp8s0. Это уникальный идентификатор сетевой карты, используемой в данном учебнике.

Ethtool – это приложение с открытым исходным кодом, которое позволяет изменять настройки сетевого драйвера. Для wake-on-LAN оно позволяет компьютеру понимать получаемые данные.
Команда для установки ethtool выглядит следующим образом:
sudo apt install ethtool
Далее выясните, поддерживает ли ваша сетевая карта функцию wake on LAN.
sudo ethtool
Вам будет предоставлена подробная информация об оборудовании вашего интерфейса Ethernet. Мы ищем:
Supports Wake-on: g Wake-on: g
Первая строка говорит о том, поддерживает ли ваш компьютер функцию Wake-On-LAN. Вместе с g могут быть и другие буквы. Сейчас нам нужна только g.
Вторая строка показывает, включена ли функция Wake-On-LAN. Не стоит слишком беспокоиться об этом, так как следующей нашей задачей будет его включение.
Временно включить Wake-on-LAN
Включение Wake-on-LAN заставляет сетевую карту будить систему только тогда, когда она получает определенный магический пакет.
Чтобы временно включить Wake-on-LAN, выполните команду:
sudo ethtool -s wol g
Это включит WoL до следующей перезагрузки. Чтобы убедиться, что все работает, выполните следующее:
sudo ethtool
Если вы увидите Wake-on: g, это означает, что WoL был успешно включен. Однако настройка, примененная программой ethtool, не является постоянной и будет потеряна после перезагрузки.
Постоянное включение Wake-on-LAN
Чтобы Wake-on-LAN был действительно полезен, необходимо, чтобы он оставался включенным даже после перезагрузки машины Ubuntu. Мы можем добиться этого, создав службу systemd, которая автоматически запускает команду ethtool при загрузке. Это распространенный и надежный способ обеспечить сохранение настроек в современных дистрибутивах Linux.
Для начала создадим новый файл службы systemd. Мы используем nano, простой текстовый редактор, но вы можете использовать Vi или любой другой редактор, который вам больше нравится:
sudo nano /etc/systemd/system/wol.service
Если вы не знаете, где установлена программа ethtool, запустите ее:
which ethtool
Вставьте в служебный файл следующие слова:
[Unit] Description=Enable Wake On Lan [Service] Type=oneshot ExecStart = --change wol g [Install] WantedBy=basic.target
После того как вы вставили содержимое и заменили его, сохраните файл и выйдите из nano. Для этого нажмите Ctrl + X, затем Y, чтобы подтвердить сохранение, и, наконец, Enter, чтобы подтвердить имя файла.
Наконец, нам нужно указать systemd включить эту новую службу, чтобы она запускалась при каждой загрузке. Это создаст символическую ссылку, которая активирует службу:
sudo systemctl enable wakeonlan.service
После активации вы можете запустить службу сразу без перезагрузки следующим образом:
sudo systemctl start wakeonlan.service
Теперь на вашем сервере или рабочем столе Ubuntu Server или Desktop Wake-on-LAN должен быть постоянно включен при всех перезагрузках.
Использование расширенного редактора сетевых подключений
Для большинства пользователей настольных компьютеров Ubuntu графический редактор сетевых подключений – это самый простой способ включить Wake-on-LAN.
Просто откройте Дополнительные параметры сетевого подключения из меню Приложения.

На панели «Сеть» вы увидите список ваших проводных подключений. Нажмите на значок шестеренки и откройте настройки подключения.

На вкладке Настройки Ethernet найдите пункт Пробуждение по локальной сети. Установите флажок в поле Magic или MagicPacket и нажмите Apply.

Вот и все! Вы успешно включили функцию Wake-on-LAN. Чтобы проверить, выполните следующие действия:
sudo ethtool enp0s3
Найдите в результатах Wake-on: g.
Включение WoL с помощью nmcli (сетевой менеджер командной строки)
Если вы используете Ubuntu Desktop, то, скорее всего, вы уже знакомы с NetworkManager. Это графический инструмент, который позволяет легко подключаться к Wi-Fi и проводным сетям. Несмотря на то, что по умолчанию он графический, он также поддерживает настройку через командную строку nmcli.
Прежде всего, необходимо знать, с каким сетевым подключением мы имеем дело. Для этого мы составим список всех активных подключений:
nmcli connection show
Если вывод показывает 802-3-ethernet.wake-on-lan: default, то WoL остается отключенным. Если же он показывает магию, то поздравляем, он уже включен.
Чтобы включить Wake-on-LAN с помощью NetworkManager, измените настройки соединения, чтобы прослушивать магический пакет:
nmcli connection modify 802-3-ethernet.wake-on-lan magic
После этого ваша машина Ubuntu Desktop должна быть настроена на ответ на волшебные пакеты! Обычно это так просто. Возможно, вы не получите немедленного отклика, но настройка будет выполнена.
Отключить ее так же просто. Вместо magic просто используйте ignore:
nmcli connection modify 802-3-ethernet.wake-on-lan ignore
Эта команда указывает сетевому адаптеру игнорировать все входящие пакеты magic, фактически отключая функцию Wake-on-LAN для данного соединения.
Тестирование настройки Wake-on-LAN
Чтобы протестировать WoL, выключите или приостановите работу вашей машины Ubuntu. Затем с другого устройства (ПК, телефона, Raspberry Pi и т. д.) отправьте волшебный пакет на MAC-адрес машины. Для этого существует множество приложений и инструментов командной строки, найдите Wake-on-LAN tool в магазине приложений.
Если в вашей сети есть еще одна машина с Linux или MacOS, вы можете отправить волшебный пакет прямо из терминала. Для этого вам понадобится небольшая утилита под названием wakeonlan.
В системах на базе Debian/Ubuntu:
sudo apt install wakeonlan
После установки отправить волшебный пакет очень просто:
wakeonlan
Замените MAC-адрес вашей машины Ubuntu.
Кроме того, для пользователей Windows существует несколько бесплатных утилит. Популярным выбором является WakeMeOnLan от NirSoft. Это небольшое портативное приложение, которое сканирует вашу сеть и позволяет отправлять волшебные пакеты. В качестве альтернативы можно использовать powershell для более командной строки, хотя это требует немного больше настроек. Многие пользователи находят специализированные Утилиты более простыми.
Как включить функцию Wake-on-WiFi (WoWLAN)
Теперь вы можете включить свой компьютер по локальной сети, но как насчет беспроводного пробуждения по Wi-Fi или woWLAN? На момент написания этой статьи существует только одно приложение (network-manager), которое позволяет это сделать.
Вы можете установить его из магазина оснастки или в терминале с помощью следующей команды:
sudo snap install network-manager

Остерегайтесь, поскольку в магазине это приложение оценено всего в одну звезду. Во время тестирования приложение работало в терминале, как и ожидалось, и имело полную документацию от Canonical.
Вы можете попытаться включить woWLAN с помощью другого сетевого менеджера, но в стандартном (networkd) нет способа включить его.
Включить беспроводное пробуждение по локальной сети можно с помощью этой команды:
sudo snap set network-manager wifi.wake-on-wlan=magic
Если вы работаете в открытой сети или опасаетесь угроз безопасности, вы можете установить пароль, используя:
sudo snap set network-manager wifi.wake-on-wlan-password=
У этого метода есть некоторые преимущества перед ethtool. Он быстрее устанавливается и позволяет выполнять беспроводное пробуждение по локальной сети. Он имеет доступ на уровне ядра, поэтому, если на компьютере пропадет питание, вы все равно сможете использовать wake-on-LAN, когда питание вернется.
Проблема в том, что Canonical рекомендует его только для пользователей ядра Ubuntu. Особых причин для этого нет, но, скорее всего, это сделано для того, чтобы ограничить возможности приложения и не дать пользователям сломать свою ОС.




Комментарии (0)