Поиск по сайту:

Включите Wake-on-LAN для удаленного пробуждения (или загрузки) Ubuntu 24.04.

В этом пошаговом руководстве показано, как включить функцию Wake-on-LAN в Ubuntu, чтобы вы могли вывести ее из состояния приостановки, гибернации или выключения удаленно с помощью другого компьютера или мобильного телефона.

Wake on LAN, короче WoL, — это протокол, позволяющий включать компьютер или выводить его из спящего режима с помощью сетевого сообщения. Он основан на технологии Magic Packet от AMD и также известен как пробуждение по глобальной сети, дистанционное пробуждение, включение по локальной сети и возобновить по локальной сети.

WoL использует проводную сеть на целевом компьютере для связи. Однако существует также функция Wake on Wireless LAN (WoWLAN), позволяющая просыпаться по беспроводной сети.

Требования:

Это руководство протестировано на Ubuntu 24.04 LTS, хотя оно должно работать на всех текущих выпусках Ubuntu, а также на многих других дистрибутивах Linux.

Прежде чем приступить к работе, вам необходимо:

  • Материнская плата и сетевая карта, поддерживающие Wake on LAN.
  • Оставьте целевой компьютер или ноутбук подключенным с помощью сетевого кабеля. Некоторые беспроводные сетевые карты поддерживают WowLAN, и я покажу вам, как включить эту функцию ниже, однако в моем случае она НЕ пробуждается по Wi-Fi. .

Шаг 1. Включите Wake on LAN в настройках BIOS.

Сначала запустите или перезагрузите компьютер. Во время процесса запуска нажмите определенную клавишу (F1 ~ F12, Esc или Del в зависимости от вашего устройства. ), чтобы войти в BIOS.

Настройте следующие параметры в BIOS:

  • Включите Wake-on-LAN. Название может отличаться в зависимости от производителя материнской платы. Это также может быть «Включение PCI», «Разрешить событие пробуждения PCI» или «Загрузка с PCI/PCI-E».
  • Отключите режим ErP, если он существует. Он предназначен для экономии еще большей энергии в выключенном состоянии. Что, однако, мешает WoL работать должным образом.
  • Включите питание USB или аналогичный вариант. В моем ThinkPad мне нужно включить «Всегда включен USB» и «Зарядка в режиме батареи» — заряжать внешнее устройство, когда система находится в спящем режиме или выключенном состоянии и в режиме батареи. Или он не выйдет из спящего режима или выключится при работе от батареи.

ПРИМЕЧАНИЕ. После этого шага сетевая карта по-прежнему получает питание, даже когда компьютер находится в выключенном состоянии. Это может привести к разрядке аккумулятора на некоторых ноутбуках.

Настройки ThinkPad BIOS для Wake on LAN

Шаг 2. Включите Wake on LAN в Ubuntu

После включения этой функции в BIOS вам также необходимо настроить операционную систему для ее работы. Насколько мне известно, в Ubuntu Linux есть графический вариант и несколько инструментов командной строки.

Вариант 1. Используйте редактор сетевых подключений (графический способ).

Если вы запускаете целевой компьютер с Ubuntu Desktop, то это очень просто, используя встроенный инструмент редактирования сетевых подключений. Однако это работает только для проводной сети!

Сначала найдите и запустите «Расширенную конфигурацию сети» из меню «Пуск» системы или из обзора GNOME, в зависимости от среды вашего рабочего стола.

Советы: по выбору вы можете запустить команду nm-connection-editor, чтобы запустить инструмент из командной строки..

Когда он откроется, дважды щелкните, чтобы отредактировать проводное сетевое соединение. Наконец, включите опцию «Magic» для Wake on LAN на вкладке Ethernet и сохраните.

Вариант 2: используйте инструмент командной строки nmcli

По выбору инструмент настройки командной строки nmcli для Network Manager также может выполнять эту работу как для проводных, так и для беспроводных подключений.

1. Сначала откройте терминал (Ctrl+Alt+T) и выполните команду, чтобы отобразить все сетевые подключения:

nmcli connection show

Как показано на снимке экрана ниже, у меня есть проводное сетевое устройство, подключенное к «netplan-enp0s31f6», а сетевое устройство Wi-Fi, подключенное к «elite01».

2. Затем запустите последнюю команду, указав имя сетевого подключения («netplan-enp0s31f6» или «elite01» в моем случае), чтобы проверить его конфигурации.

Например, в моем случае запустите команду ниже, она покажет конфигурации проводного сетевого подключения (замените netplan-enp0s31f6 на свой).

nmcli connection show "netplan-enp0s31f6" |grep 802

Пока |grep 802 отфильтровывает ту часть, которая мне нужна для информации о Wake on Lan.

3. Как показано на последнем снимке экрана, «802-3-ethernet.wake-on-lan» является ключевым параметром конфигурации для включения WoL для этого соединения.

Ключевое значение обычно «по умолчанию». Нам нужно установить значение «magic», чтобы оно заработало (замените netplan-enp0s31f6 на свой).

nmcli connection modify "netplan-enp0s31f6" 802-3-ethernet.wake-on-lan magic

Кроме того, установите для параметра 802-3-ethernet.auto-negotiate значение «да», что может помочь, если сетевой адаптер выключается при завершении работы.

nmcli connection modify "netplan-enp0s31f6" 802-3-ethernet.auto-negotiate yes

(Для WoWLAN) Если вы пытаетесь включить Wake on WiFi, вместо этого используйте следующие команды (замените «elite01» на имя вашего сетевого подключения Wi-Fi):

  • Проверьте параметры конфигурации:

    nmcli connection show "elite01" |grep 802
  • Установите для параметра «802-11-wireless.wake-on-wlan» значение «магия»:

    nmcli connection modify "elite01" 802-11-wireless.wake-on-wlan magic
  • Отключите функцию автосохранения питания Wi-Fi:

    nmcli connection modify "elite01" 802-11-wireless.powersave disable

Шаг 3. Запустите WoL на целевой машине.

1. Для запуска WoL вам понадобится MAC-адрес сетевого интерфейса на целевом компьютере. Просто откройте терминал (Ctrl+Alt+T), затем выполните команду ниже, чтобы узнать:

ip link

Затем скопируйте или запишите MAC-адрес (в моем случае e8:6a:64:d9:d3:66) сетевого устройства, которое вы хотите использовать для запуска WoL.

2. Затем установите приложение Wake-on-LAN на удаленный компьютер или мобильный телефон, а затем настройте его для целевого компьютера.

  • Для Android и iOS просто выполните поиск «wake on lan» в Google Play или App Store. Есть довольно много приложений для выполнения этой работы.
  • Для Linux найдите и установите графический инструмент «gwakeonlan» или инструмент командной строки «wakeonlan» из системного репозитория.
  • Не знаете ни одного приложения для Windows и macOS, попробуйте поискать в системном магазине приложений.

3. Прежде чем приостанавливать, выключать или переводить целевой компьютер в спящий режим, вы можете сначала проверить, может ли он правильно получить сообщение для WoL.

Для этого откройте терминал (Ctrl+Alt+T) и выполните приведенную ниже команду на целевом компьютере с Ubuntu:

sudo nc -u -l -p 9

После ввода пароля пользователя он зависает на мигающем курсоре в ожидании удаленного сообщения.

На удаленном компьютере или мобильном телефоне, как только вы нажмете кнопку «Загрузка» или «Включить», чтобы запустить WoL на целевом компьютере, в окне терминала должно немедленно отобразиться сообщение (хотя и нечитаемое). Если ничего не происходит, значит, что-то не так!

4. Если последний шаг работает правильно, теперь вы можете приостановить, перевести в спящий режим или выключить целевой компьютер. Затем попробуйте разбудить его с помощью удаленного приложения.

ПРИМЕЧАНИЕ. Пробуждение по беспроводной локальной сети поддерживает только выход из режима ожидания, хотя в моем случае это не работает, поскольку Wi-Fi всегда отключается в режиме ожидания.

Отменить и отключить пробуждение по локальной сети

Чтобы отменить все изменения, сначала настройте BIOS для отключения WoL.

Затем откройте терминал в Ubuntu и выполните команду:

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

    nmcli connection modify "netplan-enp0s31f6" 802-3-ethernet.wake-on-lan disabled
  • Для беспроводной сети используйте этот параметр, чтобы отключить пробуждение по WLAN:

    nmcli connection modify "elite01" 802-11-wireless.wake-on-wlan disabled

В приведенных выше командах замените netplan-enp0s31f6 и elite01 на имена ваших подключений в соответствии с выводом команды nmcli c show.

Статьи по данной тематике