След на LAN, поврежденный на 64 битах, работает над 32 битами

Как я могу заставить WOL работать над Ubuntu на 64 бита?

Это - странная ситуация. Аппаратными средствами является в большой степени измененная 3D ASUS G75VW. Windows и Ubuntu на 32 бита хорошо работают для Следа на LAN. Материнская плата имеет второстепенную роль здесь, только иметь некоторую силу сохраняет настройки, которые я отключил в BIOS для разрешения WOL. Затем NIC должен быть настроен. В Windows это - одно время, устанавливая, и он работает отлично. На Ubuntu 32 бита я использовал rc.local триггер для ethtool и это работало отлично.

На Ubuntu на 32 бита сетевая плата обнаруживается как eth0 поскольку можно было бы ожидать. На 64 битах это добирается, переименовал к enp4s0. Я знаю, что это переименовано, потому что я проверил dmesg, который также говорит, почему мой rc.local сценарий не изменяется wol от d кому: g в ethtool:

[    1.624275] atl1c 0000:04:00.0 enp4s0: renamed from eth0
[    3.821446] IPv6: ADDRCONF(NETDEV_UP): enp4s0: link is not ready
[    3.822431] atl1c 0000:04:00.0: atl1c: enp4s0 NIC Link is Up<1000 Mbps Full Duplex>

хорошо, безотносительно. Я могу иметь дело со ссылкой тем, чтобы быть не готовый, поместить его на таймер или что-то на потом. Но если я установил его вручную, ethtool говорит, что это показывает wol g для карты

Supports Wake-on: pg
Wake-on: g

По некоторым причинам это сбрасывается, когда я завершаю работу компьютера, потому что wol волшебный пакет не будит компьютер даже после этого.

Тестирование

Я протестировал много вещей. Во-первых, триггер wol не работает, если ноутбук был отключен, даже кратко. Это действительно работает, если кабель Ethernet был отключен и включил назад. Триггер wol ясно устанавливается, поскольку ОС закрывается, потому что, если я завершаю работу человечности на 32 бита и подкачиваю жесткие диски без отключения, я могу WOL в человечность на 64 бита.

Я подозреваю, что это имеет некоторое отношение к драйверам, но я не знаю, где получить их, если это так. С другой стороны я могу просто выполнить драйвер на 32 бита на 64 битах и быть сделан с ним? У меня есть 32 бита, освобождает на машине для других целей.

Я не могу решить это рабочей человечностью на 32 бита, потому что я выполняю JVMs на машине, которые требуют большой суммы RAM (вне предела на 32 бита).

На документы справки человечности я удалил network-manager и предпринятый для конфигурирования соединения с ifup (отсюда). К сожалению, ifup не распознал интерфейс. Здесь было содержание моего /etc/network/interfaces файл в 64 битах.

# interfaces(5) file used by ifup(8) and ifdown(8)
auto lo
iface lo inet loopback

Я не знаю, почему моя беспроводная и плата Ethernet не была перечислена там. Вот ifconfig -a.

enp4s0    Link encap:Ethernet  HWaddr 10:bf:48:19:08:b4
          inet addr:192.168.1.91  Bcast:192.168.1.255  Mask:255.255.255.0
          inet6 addr: fe80::12bf:48ff:fe19:8b4/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:505 errors:0 dropped:0 overruns:0 frame:0
          TX packets:289 errors:0 dropped:0 overruns:0 carrier:1
          collisions:0 txqueuelen:1000
          RX bytes:48646 (48.6 KB)  TX bytes:38816 (38.8 KB)

lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:57 errors:0 dropped:0 overruns:0 frame:0
          TX packets:57 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:8091 (8.0 KB)  TX bytes:8091 (8.0 KB)

wlp3s0    Link encap:Ethernet  HWaddr c4:85:08:70:7d:7b
          BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

Таким образом на сообщение форума я добавил enp4s0 вручную в файл сетевых интерфейсов. Это теперь похоже:

# interfaces(5) file used by ifup(8) and ifdown(8)
auto lo
iface lo inet loopback

auto enp4s0
iface enp4s0 inet dhcp

Затем ifup работал. Я не знаю, сделал ли я его правильно, но все, что я сделал был ввести:

ifup enp4s0

Все все еще работало, и я мог все еще SSH в после перезапуска, таким образом, я предполагаю, что еще не повредил свою плату Ethernet. Я действительно не знаю то, что я делаю здесь парней, и я хватаюсь за солому.

Я считал немного далее вниз страницу справки и понял, что пропустил ссылку на ошибку.

После обходного решения я добавил сценарий к rc6.d и rc0.d и набор их к исполняемому файлу, но я не уверен, как проверить, если на самом деле выполняемый (я предполагаю, что мог echo что-то и проверка dmesg... это работало бы?). Я перезагрузил машину однажды в придачу и выключил ее, но она все еще не придумала попытки WOL.

После кроличьей норы я нашел комментарий к сообщению в блоге, которое предположило, что более определенный статический IP-адрес поможет. Я не видел, почему (так как волшебный пакет отправляет ко всей сети с MAC-адресом), но я попробовал его так или иначе. Если моя конфигурация для сетевых интерфейсов похожа на его, нет никакого изменения.

Более подробная информация о машине. И 32 бита и 64 бита находятся на последнем Ubuntu 15.10 Wily Werewolf.


Обновление

У меня есть больше исследования.

Я могу подтвердить, что WoL работает над новой установкой Коварного Оборотня 64 бита. После этого я работал:

sudo apt-get update
sudo apt-get upgrade

И затем WoL прекратил работать. Это, кажется, единственные шаги, необходимые для репродуцирования моей проблемы.


Таким образом, снова вот мой вопрос:

Как я могу заставить след на LAN работать в Ubuntu на 64 бита?

2
задан 13 April 2017 в 15:25

2 ответа

Я думаю, что наконец нашел решение этой проблемы. В версии 15.10 утилиты TLP был представлен как значение по умолчанию. Таким образом на обновлении dist Вы получаете конфигурацию по умолчанию в TLP высказывание WOL_DISABLE=Y

Даже https://, wiki.archlinux.org/index.php/Wake-on-LAN говорит, не просыпается ли компьютер, после приостанавливают / в спящем режиме при использовании TLP, устанавливают значение WOL_DISABLE к N в/etc/default/tlp.

я протестировал это на ПОМОЩНИКЕ Ubuntu 16.04 LTS (64 бита), где WOL не работал после установки. Изменение конфигурации TLP заставляет его работать снова.

я надеюсь, что это помогает в Вашей проблеме также.

1
ответ дан 2 December 2019 в 05:01

После того, как я поэкспериментировал с настройками сетевой карты, во вкладке «Дополнительно» я обнаружил настройку «Пробуждение при выключении», которая была отключена для меня. Я включил это, и теперь это работает! Надеюсь, что это поможет кому-то еще с той же проблемой.

0
ответ дан 2 December 2019 в 05:01

Другие вопросы по тегам:

Похожие вопросы: