Я пытался заставить WOL работать в течение многих недель над моим сервером Ubuntu 13,04 установок, но это просто, кажется, не работает.
Я замечаю, когда я приостанавливаю сервер с "sudo пополудни - приостанавливают" или через рабочий стол gui, плата NIC выключает. Т.е. на сетевом порте нет никаких мигающих огней. Я не знаю, является ли это проблемой, но в моем /var/log/syslog
, Я также видел, что мой Ethernet не был одним из PCIs, которые имели "системное пробуждение, включенное ACPI":
Oct 2 16:46:10 JAMFS1 kernel: [26462.745615] PM: suspend of devices complete after 519.955 msecs
Oct 2 16:46:10 JAMFS1 kernel: [26462.745743] PM: late suspend of devices complete after 0.126 msecs
Oct 2 16:46:10 JAMFS1 kernel: [26462.745953] ehci-pci 0000:00:1d.0: System wakeup enabled by ACPI
Oct 2 16:46:10 JAMFS1 kernel: [26462.761576] ehci-pci 0000:00:1a.0: System wakeup enabled by ACPI
Oct 2 16:46:10 JAMFS1 kernel: [26462.793491] xhci_hcd 0000:00:14.0: System wakeup enabled by ACPI
Oct 2 16:46:10 JAMFS1 kernel: [26462.809491] PM: noirq suspend of devices complete after 63.784 msecs
Oct 2 16:46:10 JAMFS1 kernel: [26462.809695] ACPI: Preparing to enter system sleep state S3
.......
Oct 2 16:46:10 JAMFS1 kernel: [26463.464575] ACPI: Waking up from system sleep state S3
Oct 2 16:46:10 JAMFS1 kernel: [26463.510511] xhci_hcd 0000:00:14.0: System wakeup disabled by ACPI
Oct 2 16:46:10 JAMFS1 kernel: [26463.542498] ehci-pci 0000:00:1a.0: System wakeup disabled by ACPI
Oct 2 16:46:10 JAMFS1 kernel: [26463.574474] ehci-pci 0000:00:1d.0: System wakeup disabled by ACPI
Oct 2 16:46:10 JAMFS1 kernel: [26463.590562] PM: noirq resume of devices complete after 125.527 msecs
Oct 2 16:46:10 JAMFS1 kernel: [26463.590650] PM: early resume of devices complete after 0.071 msecs
Но согласно "кошке/proc/acpi/wakeup" моя плата Ethernet предполагается быть к включенному:
Device S-state Status Sysfs node
USB1 S3 *disabled
RP01 S4 *enabled pci:0000:00:1c.0
RP03 S4 *enabled pci:0000:00:1c.2
GLAN S4 *disabled
EHC1 S4 *enabled pci:0000:00:1d.0
EHC2 S4 *enabled pci:0000:00:1a.0
XHC S4 *enabled pci:0000:00:14.0
HDEF S4 *enabled pci:0000:00:1b.0
PEG0 S4 *disabled
PEGP S4 *disabled
От мой "lspci - ТВ", Вы видите, что "pci:0000:00:1c.2" является платой Ethernet Atheros:
+-14.0 Intel Corporation Lynx Point USB xHCI Host Controller
+-16.0 Intel Corporation Lynx Point MEI Controller #1
+-1a.0 Intel Corporation Lynx Point USB Enhanced Host Controller #2
+-1b.0 Intel Corporation Lynx Point High Definition Audio Controller
+-1c.0-[01]--
+-1c.2-[02]----00.0 Qualcomm Atheros QCA8171 Gigabit Ethernet
+-1d.0 Intel Corporation Lynx Point USB Enhanced Host Controller #1
+-1f.0 Intel Corporation Lynx Point LPC Controller
Я также установил /sys/class/net/p2p1/device/power/wakeup
к 'включенному'. А также работал sudo ethtool -s p2p1 wol g
и вставленный это в мой /etc/rc.local
Я включил эквивалентный след на LAN/PCI в моем ASRock Bios.
ethtool p2p1
(p2p1 мое имя Qualcomm Atheros QCA8171 Gigabit Ethernet), показывает это:
Supports Wake-on: pg
Wake-on: g
Таким образом, что я делаю?? Я следовал каждому руководству и предложению, которое я нашел. Вы думаете, что это - проблема драйвера? Существует ли способ обновить драйвер Atheros? Кто-либо смог проснуться на LAN, если плата NIC не имеет никаких мигающих огней? С системой, я использовал wireshark и смог обнаружить пакеты WOL, отправленные от моего локального dd-wrt через команду /usr/sbin/wol -i 192.168.1.254 -v bc:5f:f4:be:38:e4 -p 9
. Я также смог получить пакеты от машины окон с генератором WOL. У любого есть любые предложения, как я только вне идей.... Заранее спасибо за чтение.
Наконец, мой lspci -vv
как таково, если это помогает кому-либо:
02:00.0 Ethernet controller: Qualcomm Atheros QCA8171 Gigabit Ethernet (rev 10)
Subsystem: ASRock Incorporation Device 10a1
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx+
Latency: 0, Cache Line Size: 64 bytes
Interrupt: pin A routed to IRQ 18
Region 0: Memory at f0400000 (64-bit, non-prefetchable) [size=256K]
Region 2: I/O ports at e000 [size=128]
Capabilities: [40] Power Management version 3
Flags: PMEClk- DSI- D1- D2- AuxCurrent=375mA PME(D0+,D1+,D2+,D3hot+,D3cold+)
Status: D0 NoSoftRst+ PME-Enable- DSel=0 DScale=0 PME-
Capabilities: [58] Express (v1) Endpoint, MSI 00
DevCap: MaxPayload 4096 bytes, PhantFunc 0, Latency L0s unlimited, L1 unlimited
ExtTag- AttnBtn+ AttnInd+ PwrInd+ RBE+ FLReset-
DevCtl: Report errors: Correctable+ Non-Fatal+ Fatal+ Unsupported+
RlxdOrd- ExtTag- PhantFunc- AuxPwr- NoSnoop-
MaxPayload 128 bytes, MaxReadReq 512 bytes
DevSta: CorrErr- UncorrErr+ FatalErr- UnsuppReq+ AuxPwr+ TransPend-
LnkCap: Port #0, Speed 2.5GT/s, Width x1, ASPM L0s L1, Latency L0 unlimited, L1 unlimited
ClockPM+ Surprise- LLActRep- BwNot-
LnkCtl: ASPM Disabled; RCB 64 bytes Disabled- Retrain- CommClk+
ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt-
LnkSta: Speed 2.5GT/s, Width x1, TrErr- Train- SlotClk+ DLActive- BWMgmt- ABWMgmt-
Capabilities: [c0] MSI: Enable- Count=1/16 Maskable+ 64bit+
Address: 0000000000000000 Data: 0000
Masking: 00000000 Pending: 00000000
Capabilities: [d8] MSI-X: Enable+ Count=16 Masked-
Vector table: BAR=0 offset=00002000
PBA: BAR=0 offset=00003000
Capabilities: [100 v1] Advanced Error Reporting
UESta: DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq+ ACSViol-
UEMsk: DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq- ACSViol-
UESvrt: DLP- SDES+ TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF+ MalfTLP+ ECRC- UnsupReq- ACSViol-
CESta: RxErr- BadTLP- BadDLLP- Rollover- Timeout- NonFatalErr-
CEMsk: RxErr- BadTLP- BadDLLP- Rollover- Timeout- NonFatalErr+
AERCap: First Error Pointer: 14, GenCap+ CGenEn- ChkCap+ ChkEn-
Capabilities: [180 v1] Device Serial Number ff-be-38-f4-bc-ef-f4-df
Kernel driver in use: alx
Так, после игры еще немного я обнаружил это, когда я в спящем режиме Ubuntu через
sudo pm-hibernate
световые сигналы NIC остаются, и я могу к WOL. Однако это бесполезно для меня, так как у меня есть шифрование LVM, таким образом, оно требует ввода ключа доступа на месте, и я не могу сделать этого через удаленный - в. На сравнении спящего режима и приостанавливают стандартные программы, я заметил, что на приостанавливают в
/usr/lib/pm-utils/sleep.d/50unload_alx
это имеет строку:
'modunload alx'
то, которое я нашел, - то, что разгружает драйверы для atheros NIC. Комментирование его добилось цели, и световые сигналы остались, когда я приостанавливаю, и теперь я могу WOL.
ОДНАКО я обнаружил, что причина modunload alx происходит из-за ошибки, которая препятствует тому, чтобы машина приостановила правильно, следовательно это было, вероятно, включено.
Так, новая ситуация, в которой я нахожусь теперь, состоит в том, что я могу к WOL от, приостанавливают, но я не могу приостановить машину после первого раза. Интересно достаточно спящий режим хорошо работает и WOL от работ спящего режима каждый раз.
Я просто не могу приостановить и WOL и повторение много раз. Сначала приостановите работы с
sudo pm-suspend
но после этого, это больше не делает.
ОДНАКО я нашел, что могу приостановить прекрасный через рабочий стол (и затем WOL), который я нахожу странными....
Таким образом, новый вопрос (возможно, я должен создать новый поток):
Между чем различие
sudo pm-suspend
по сравнению с приостановкой через рабочий стол??
Кроме того, если я делаю
sudo pm-suspend-hybrid
Это приостанавливает, и я могу также WOL. Если я установил таймер на рабочем столе для приостановки после XX минут, он также приостанавливает прекрасный, и я могу WOL.
Таким образом, то, каково различие между всеми этими стандартными программами по сравнению с тем, что приостанавливают sudo пополудни - делает??