ubuntuusers.de

WOL Broken after update auf Kernel 7

Status: Ungelöst | Ubuntu-Version: Server 26.04 (Resolute Raccoon)
Antworten |

Setternixe

Anmeldungsdatum:
21. Juni 2019

Beiträge: 9

Hallo,

ich betreibe auf einer ZOTAC Zbox AD04 einen Ubuntu-Server LTS 24.04 mit einem 6.8-Kernel. Nach einem Update auf LTS 26.04 mit Kernel 7.1.5 funktioniert Wake-on-Lan nicht mehr. Es ist der Realtektreiber r8168 installiert. Ein Downgrade auf den alten Kernel 6.8 und Ubuntu 26.04 LTS genügt, und wake-on Lan funktioniert wieder.

Kennt jemand das Problem und kann helfen? Ich betreibe auf dem Server eine Meshcentral-Installation, um defekte PCs wieder zu reparieren.

Die WOL-Pakete kommen an im angeschalteten Zustand bei beiden Kernel. Die Lan-Schnittstelle wird also im ausgeschalteten Zustand nicht überwacht.

Danke für Eure Hilfe!

Michael

Bearbeitet von schwarzheit:

Bitte verwende in Zukunft Absätze (2x Enter), um die Lesbarkeit zu verbessern! Und benutze bitte den Vorschaubutton. Danke.

lubux

Anmeldungsdatum:
21. November 2012

Beiträge: 14728

Setternixe schrieb:

... Ubuntu-Server LTS 24.04 mit einem 6.8-Kernel. Nach einem Update auf LTS 26.04 mit Kernel 7.1.5 funktioniert Wake-on-Lan nicht mehr. Es ist der Realtektreiber r8168 installiert.

Wie ist mit dem 6.8-er und mit dem 7.1.5-er Kernel, die Ausgabe von:

sudo ethtool <Interface> | grep -i wake

(Interface anpassen und ohne spitze Klammern)?

Setternixe

(Themenstarter)

Anmeldungsdatum:
21. Juni 2019

Beiträge: 9

Hallo,

die Ausgabe von

sudo ethtool <Interface> | grep -i wake

lautet in beiden Fällen:

  • Supports Wake-on: pumbg

  • Wake-on: g

Die Ausgabe von nmcli connection show "netplan-enp2s0" |grep 802 lautet:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
 * connection.type:                        802-3-ethernet
 * 802-3-ethernet.port:                    --
 * 802-3-ethernet.speed:                   0
 * 802-3-ethernet.duplex:                  --
 * 802-3-ethernet.auto-negotiate:          yes
 * 802-3-ethernet.mac-address:             00:01:2F:40:9B:DA
 * 802-3-ethernet.cloned-mac-address:      --
 * 802-3-ethernet.generate-mac-address-mask:--
 * 802-3-ethernet.mac-address-denylist:    --
 * 802-3-ethernet.mtu:                     auto
 * 802-3-ethernet.s390-subchannels:        --
 * 802-3-ethernet.s390-nettype:            --
 * 802-3-ethernet.s390-options:            --
 * 802-3-ethernet.wake-on-lan:             magic
 * 802-3-ethernet.wake-on-lan-password:    --
 * 802-3-ethernet.accept-all-mac-addresses:-1 (default)

Die Ausgabe von lshw -C network is

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17

 *-network
 * description: Ethernet interface
 *        product: RTL8111/8168/8211/8411 PCI Express Gigabit Ethernet Controller
 *        vendor: Realtek Semiconductor Co., Ltd.
 *        physical id: 0
 *        bus info: pci@0000:02:00.0
 *        logical name: enp2s0
 *        version: 06
 *        serial: 00:01:2f:40:9b:da
 *        size: 1Gbit/s
 *        capacity: 1Gbit/s
 *        width: 64 bits
 *        clock: 33MHz
 *        capabilities: pm msi pciexpress msix vpd bus_master cap_list ethernet physical tp 10bt 10bt-fd 100bt 100bt-fd 1000bt-fd autonegotiation
 *        configuration: autonegotiation=on broadcast=yes driver=r8168 driverversion=8.055.00 duplex=full ip=192.168.178.48 latency=0 link=yes multicast=yes port=twisted pair speed=1Gbit/s
 *        resources: irq:17 ioport:e000(size=256) memory:d0004000-d0004fff memory:d0000000-d0003fff

    lubux

    Anmeldungsdatum:
    21. November 2012

    Beiträge: 14728

    Setternixe schrieb:

    sudo ethtool <Interface> | grep -i wake

    lautet in beiden Fällen:

    • Supports Wake-on: pumbg

    • Wake-on: g

    Teste mal mit einer service-unit beim shutdown, die WoL aktiviert lassen soll:

    sudo nano /etc/systemd/system/enablewol.service

    Inhalt:

    [Unit]
    Description=enable wol on shutdown
    After=network.target
    DefaultDependencies=no
    
    [Service]
    Type=oneshot
    ExecStart=/usr/sbin/ethtool -s enp2s0 wol g
    RemainAfterExit=yes
    
    [Install]
    WantedBy=halt.target reboot.target shutdown.target

    (Interface evtl. anpasen).
    Nach dem speichern:

    sudo systemctl enable enablewol.service

    Setternixe

    (Themenstarter)

    Anmeldungsdatum:
    21. Juni 2019

    Beiträge: 9

    Moin,

    zunächst mal Danke für die Unterstützung! Ich denke, das ist der richtige Ansatz, da die WOL-Pakete im eingeschalteten Zustand ja ankommen .

    Unter /etc/systemd/system gibt es bereits service-scripts, die wohl versuchen, die LAN-Schnittstelle aktiv zu halten:

    Zum einen wol-enable.service:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    [Unit]
    Description=Enable Wake-up on LAN
    
    [Service]
    Type=oneshot
    ExecStart=/sbin/ethtool -s enp2s0   wol g
    
    [Install]
    WantedBy=multi-user.target
    

    und wol.service

     1
     2
     3
     4
     5
     6
     7
     8
     9
    10
    11
    12
    [Unit]
    Description=Enable Wake-on-LAN before shutdown
    DefaultDependencies=no
    Before=shutdown.target reboot.target halt.target
    
    [Service]
    Type=oneshot
    ExecStart=/usr/local/sbin/wol-shutdown.sh
    RemainAfterExit=yes
    
    [Install]
    WantedBy=halt.target reboot.target shutdown.target
    

    wobei die dazugehörige wol-shutdown.sh so aussieht:

    1
    2
    3
    4
    5
    6
    7
    8
    #!/bin/bash
    
    IFACE="enp2s0"     # anpassen!
    
    # Wake-on-LAN aktivieren
    /usr/sbin/ethtool -s "$IFACE" wol g
    
    exit 0
    

    Ist denn der Systemd-Service nach dem Reboot mit neuem Kernel noch aktiv oder muss ich ihn beim Systemstart erneut starten? Leider ist auch mit deinem Script kein WOL möglich.

    Noch eine Idee?

    lubux

    Anmeldungsdatum:
    21. November 2012

    Beiträge: 14728

    Setternixe schrieb:

    Ist denn der Systemd-Service nach dem Reboot mit neuem Kernel noch aktiv oder muss ich ihn beim Systemstart erneut starten? Leider ist auch mit deinem Script kein WOL möglich.

    Bzgl. Wirkung ist "meine" service-unit, identisch mit der bereits vorhandenen service-unit. Hast Du jetzt beide service-units aktiv? Eine von beiden soll aktiv sein, aber sie wird richtigerweise erst beim shutdown ausgeführt. Poste für beide units die Ausgaben zum "status" und zu "is-active".

    lubux

    Anmeldungsdatum:
    21. November 2012

    Beiträge: 14728

    Mach mal eine Sicherheitskopie (TextDatei) von der vorhadenen wol.service und ändere danach diese wol.service, so:

    [Unit]
    Description=Enable Wake-on-LAN before shutdown
    DefaultDependencies=no
    After=network.target
    Before=shutdown.target reboot.target halt.target
    
    [Service]
    Type=oneshot
    ExecStart=/bin/true
    ExecStop=/usr/local/sbin/wol-shutdown.sh
    RemainAfterExit=yes
    
    [Install]
    WantedBy=multi-user.target

    Nach dem speichern:

    sudo systemctl daemon-reload

    Die service-unit von mir kannst Du deaktivieren oder löschen (nach dem deaktivieren). Danach mit der modifizierten und aktivierten (original) service-unit, testen.

    Setternixe

    (Themenstarter)

    Anmeldungsdatum:
    21. Juni 2019

    Beiträge: 9

    Wie mache ich das:

    Poste für beide units die Ausgaben zum "status" und zu "is-active".

    Bearbeitet von schwarzheit:

    Forensyntax korrigiert. Zitiere richtig.

    lubux

    Anmeldungsdatum:
    21. November 2012

    Beiträge: 14728

    Setternixe schrieb:

    Wie mache ich das:

    systemctl list-units | grep -i wol
    
    
    systemctl status enablewol.service
    systemctl is-active enablewol.service
    systemctl status wol.service
    systemctl is-active wol.service
    systemctl status wol-enable.service
    systemctl is-active wol-enable.service

    Bearbeitet von Berlin_1946:

    Bitte verwende in Zukunft Codeblöcke, um die Übersicht im Forum zu verbessern! Es fehlen die Promps 😢

    EDIT:

    Ich habe Codeblöcke benutzt. Welche Promps/prompts sollen denn da fehlen? ... wenn ich einen Befehl vorschlage? z. B.:

    1
    systemctl status enablewol.service
    

    Das ist keine Ausgabe und kein copy&paste.

    Setternixe

    (Themenstarter)

    Anmeldungsdatum:
    21. Juni 2019

    Beiträge: 9

    Habe Dein Service jetzt deaktiviert und gelöscht. Nun ist scheinbar nur noch mein Service aktiv. Ausgabe von

    systemctl list-units | grep -i wol

    1
     wol.service                                                                                           loaded active     exited       Enable Wake-on-LAN before shutdown
    

    Ist jetzt so geändert, wie Du vorgeschlagen hast. Leider noch kein Erfolg bei WOL!

    Bearbeitet von schwarzheit:

    Forensyntax korrigiert. Ziiere richtig.

    lubux

    Anmeldungsdatum:
    21. November 2012

    Beiträge: 14728

    Setternixe schrieb:

    Leider noch kein Erfolg bei WOL!

    Wie ist mit dem alten und mit dem neuen Kernel, die Ausgabe von:

    1
    /usr/sbin/modinfo r8168
    

    ?

    EDIT:

    ... und die Ausgabe von:

    1
    lspci -k | grep -A 3 -i ethernet
    

    mit dem alten und mit dem neuen Kernel.

    Setternixe

    (Themenstarter)

    Anmeldungsdatum:
    21. Juni 2019

    Beiträge: 9

    Ausgabe von

    /usr/sbin/modinfo r8168:

    Kernel 6.8

     1
     2
     3
     4
     5
     6
     7
     8
     9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    
    filename:       /lib/modules/6.8.0-136-generic/updates/dkms/r8168.ko.zst
    version:        8.055.00-NAPI
    license:        GPL
    description:    RealTek RTL-8168 Gigabit Ethernet driver
    author:         Realtek and the Linux r8168 crew <netdev@vger.kernel.org>
    srcversion:     CD068A8BDC0AD8BD7D7A846
    alias:          pci:v00001186d00004300sv00001186sd00004B10bc*sc*i*
    alias:          pci:v000010ECd00002600sv*sd*bc*sc*i*
    alias:          pci:v000010ECd00002502sv*sd*bc*sc*i*
    alias:          pci:v000010ECd00008161sv*sd*bc*sc*i*
    alias:          pci:v000010ECd00008168sv*sd*bc*sc*i*
    depends:
    retpoline:      Y
    name:           r8168
    vermagic:       6.8.0-136-generic SMP preempt mod_unload modversions
    sig_id:         PKCS#7
    signer:         ubuntu-server Secure Boot Module Signature key
    sig_key:        7A:DB:53:8F:21:3C:C3:33:B6:D0:97:C3:FA:99:35:7B:3B:AA:48:50
    sig_hashalgo:   sha512
    signature:      8C:81:76:45:0E:66:B5:62:96:A2:88:31:E8:AE:19:DF:06:F5:8A:54:
                    61:63:4A:83:48:4B:50:4F:63:81:BD:24:65:EB:AB:82:BF:05:36:D5:
                    54:6F:B8:F3:C1:7B:CD:A7:87:F0:A1:42:05:79:58:A5:3A:EF:AE:5B:
                    5C:A4:38:F2:6B:DE:AE:54:D7:AD:76:98:9D:B6:3C:2E:00:92:DA:06:
                    DF:51:32:52:10:10:1B:E0:7A:6B:B9:0D:27:F2:EE:4F:AC:34:2C:95:
                    26:81:E9:D2:9F:C7:16:28:A0:20:D6:6A:7B:A0:13:F2:E1:67:96:71:
                    1C:A4:22:4C:45:8E:95:52:AD:B6:D8:78:E8:A8:7F:84:2F:5E:62:F5:
                    15:3C:C6:6D:5E:01:5A:1F:E0:CE:34:2A:31:75:D2:46:1E:38:2A:09:
                    C6:04:E7:B6:89:9B:1C:0D:BF:42:CC:F6:FD:67:B2:6E:DF:76:FF:1E:
                    2A:22:F3:74:8F:97:FB:AE:91:29:2B:F3:A4:4F:3A:7B:7B:A9:37:B7:
                    FE:21:5B:CF:12:AF:29:E5:B4:A8:2F:09:00:E3:3C:39:4B:57:AB:FC:
                    96:64:89:CB:95:D6:2A:B1:D5:65:B6:C6:0E:12:F0:0E:85:82:D4:DD:
                    AE:9B:A0:4A:E2:94:2E:30:08:AF:28:C2:8B:14:9F:2A
    parm:           speed_mode:force phy operation. Deprecated by ethtool (8). (uint)
    parm:           duplex_mode:force phy operation. Deprecated by ethtool (8). (uint)
    parm:           autoneg_mode:force phy operation. Deprecated by ethtool (8). (uint)
    parm:           advertising_mode:force phy operation. Deprecated by ethtool (8). (uint)
    parm:           dynamic_aspm:int
    parm:           aspm:Enable ASPM. (int)
    parm:           s5wol:Enable Shutdown Wake On Lan. (int)
    parm:           s5_keep_curr_mac:Enable Shutdown Keep Current MAC Address. (int)
    parm:           use_dac:Enable PCI DAC. Unsafe on 32 bit PCI slot. (int)
    parm:           timer_count:Timer Interrupt Interval. (int)
    parm:           eee_enable:Enable Energy Efficient Ethernet. (int)
    parm:           hwoptimize:Enable HW optimization function. (ulong)
    parm:           s0_magic_packet:Enable S0 Magic Packet. (int)
    parm:           dynamic_aspm_packet_threshold:Dynamic ASPM packet threshold. (int)
    parm:           disable_wol_support:Disable PM support. (int)
    parm:           eee_giga_lite:Enable Giga Lite. (int)
    parm:           debug:Debug verbosity level (0=none, ..., 16=all) (int)
    

    Kernel 7.1.5

     1
     2
     3
     4
     5
     6
     7
     8
     9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    filename:       /lib/modules/7.1.5-070105-generic/updates/dkms/r8168.ko.zst
    version:        8.055.00
    license:        GPL
    description:    RealTek RTL-8168 Gigabit Ethernet driver
    author:         Realtek and the Linux r8168 crew <netdev@vger.kernel.org>
    srcversion:     9B9918C340C3CB5D9B1BC82
    alias:          pci:v00001186d00004300sv00001186sd00004B10bc*sc*i*
    alias:          pci:v000010ECd00002600sv*sd*bc*sc*i*
    alias:          pci:v000010ECd00002502sv*sd*bc*sc*i*
    alias:          pci:v000010ECd00008161sv*sd*bc*sc*i*
    alias:          pci:v000010ECd00008168sv*sd*bc*sc*i*
    depends:
    name:           r8168
    retpoline:      Y
    vermagic:       7.1.5-070105-generic SMP preempt mod_unload modversions
    sig_id:         PKCS#7
    signer:         ubuntu-server Secure Boot Module Signature key
    sig_key:        7A:DB:53:8F:21:3C:C3:33:B6:D0:97:C3:FA:99:35:7B:3B:AA:48:50
    sig_hashalgo:   sha512
    signature:      21:DD:A5:EF:3B:2D:0B:F2:BB:8C:A9:08:A7:7F:84:BF:B8:43:0B:05:
                    7E:E3:04:96:7F:BD:F5:32:27:8F:FD:06:9A:A3:29:92:A4:34:34:1B:
                    63:33:A0:C2:81:22:4E:4B:56:C1:B8:CF:55:02:BA:0E:53:20:91:7E:
                    69:28:DC:F6:80:10:91:58:41:39:17:0C:0F:A1:D1:9F:A9:CF:D9:83:
                    6B:4D:95:42:A3:00:06:01:1A:A5:A2:AE:EB:88:DC:5F:3D:CE:81:1A:
                    35:34:51:E4:60:12:23:25:28:6D:D7:5F:2C:12:C0:0B:39:F7:FB:7B:
                    D5:8C:08:CE:E9:38:1C:06:BF:08:64:85:84:CB:3B:FF:BB:40:EF:22:
                    C3:DE:EC:A7:A4:C2:4B:E8:5D:62:28:1E:C6:5B:0B:0B:92:09:EC:F6:
                    25:44:D5:46:06:15:D3:75:F6:09:E9:28:3A:73:18:7D:90:52:66:40:
                    5F:F2:CE:08:D4:32:AE:88:25:A1:4B:BE:B1:72:A9:D0:1B:6B:8C:98:
                    D5:E5:03:97:4E:EE:DE:04:A9:34:F8:DD:FD:AF:72:42:6E:C0:8D:E1:
                    80:97:E9:E3:7A:D6:14:C7:D5:E6:E2:15:C2:8C:5B:69:24:71:26:95:
                    45:3D:33:21:33:D3:C7:4E:DF:DD:11:E8:59:C3:6D:55
    parm:           speed_mode:force phy operation. Deprecated by ethtool (8). (uint)
    parm:           duplex_mode:force phy operation. Deprecated by ethtool (8). (uint)
    parm:           autoneg_mode:force phy operation. Deprecated by ethtool (8). (uint)
    parm:           advertising_mode:force phy operation. Deprecated by ethtool (8). (uint)
    parm:           dynamic_aspm:int
    parm:           aspm:Enable ASPM. (int)
    parm:           s5wol:Enable Shutdown Wake On Lan. (int)
    parm:           s5_keep_curr_mac:Enable Shutdown Keep Current MAC Address. (int)
    parm:           use_dac:Enable PCI DAC. Unsafe on 32 bit PCI slot. (int)
    parm:           timer_count:Timer Interrupt Interval. (int)
    parm:           eee_enable:Enable Energy Efficient Ethernet. (int)
    parm:           hwoptimize:Enable HW optimization function. (ulong)
    parm:           s0_magic_packet:Enable S0 Magic Packet. (int)
    parm:           dynamic_aspm_packet_threshold:Dynamic ASPM packet threshold. (int)
    parm:           disable_wol_support:Disable PM support. (int)
    parm:           eee_giga_lite:Enable Giga Lite. (int)
    parm:           debug:Debug verbosity level (0=none, ..., 16=all) (int)
    

    Ausgabe von

    lspci -k | grep -A 3 -i ethernet

    Kernel 6.8

    1
    2
    3
    4
    02:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8211/8411 PCI Express Gigabit Ethernet Controller (rev 06)
            Subsystem: Realtek Semiconductor Co., Ltd. Device 0123
            Kernel driver in use: r8168
            Kernel modules: r8168
    

    Kernel 7.1.5

    1
    2
    3
    4
    02:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8211/8411 PCI Express Gigabit Ethernet Controller (rev 06)
            Subsystem: Realtek Semiconductor Co., Ltd. Device 0123
            Kernel driver in use: r8168
            Kernel modules: r8168
    

    Bearbeitet von schwarzheit:

    Forensyntax korrigiert. Zitiere richtig.

    schwarzheit Team-Icon

    Supporter
    Avatar von schwarzheit

    Anmeldungsdatum:
    31. Dezember 2007

    Beiträge: 8540

    Ist es wirklich so schwer korrekt zu zitieren? Das > Zeichen gehört IMMER an den Zeilenanfang.

    Jorber

    Anmeldungsdatum:
    2. November 2025

    Beiträge: 365

    Ich würde gerne mal die Ausgaben von

    lspci -nnk -d::0200

    und

    apt show r8168-dkms

    sehen, weil ich mich frage, warum der r8168 benutzt wird, statt dem R8169.

    lubux

    Anmeldungsdatum:
    21. November 2012

    Beiträge: 14728

    Das klärt aber nicht die Frage, warum das Wol mit dem Kernel 6.8 funktioniert und mit dem Kernel 7.1.5 nicht funktioniert (beide mit dem r8168).

    Antworten |