
Mac to Linux: Suspend-Probleme lösen (Ubuntu, MacBookAir5,1)
Ergebnis der Recherchesession mit Claude:
Suspend/Resume-Fix: Ubuntu 25.10 auf MacBook Air 5,1 (2012)#
Problem#
Ubuntu 25.10 auf einem MacBook Air 5,1 (Mid 2012, Intel HD 4000, i915-Treiber) konnte nach dem Suspend nicht reaktiviert werden. Weder Display noch Tastaturbeleuchtung wurden wiederhergestellt. Ein Neustart war jedes Mal erforderlich.
Ursache#
Der Kernel verwendete standardmäßig S3-Tiefschlaf (deep), dessen ACPI-Resume-Pfad mit Apples EFI inkompatibel ist. Das Apple-EFI ignoriert bewusst _OSI(Linux) und ist nur auf macOS ausgelegt, was den Resume-Handshake blockiert. Zusätzlich war die GNOME-seitige Konfiguration für den Lid-Switch unvollständig.
Lösung#
1. GRUB-Konfiguration anpassen#
Datei bearbeiten:
sudo nano /etc/default/grubbashGRUB_CMDLINE_LINUX_DEFAULT um folgende Parameter ergänzen:
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash acpi_sleep=nonvs mem_sleep_default=s2idle"plaintextDanach GRUB aktualisieren und neu starten:
sudo update-grub
sudo rebootbashWirkung:
mem_sleep_default=s2idlewechselt vom fehlerhaften S3-Tiefschlaf auf Software-Sleep (s2idle), der die Hardware weniger aggressiv abschaltet und den problematischen ACPI-Resume-Pfad umgeht.acpi_sleep=nonvsverhindert, dass der Kernel den ACPI NVS-Speicher beim Suspend sichert – ein bekannter Workaround für Apple-Hardware mit fehlerhaftem ACPI.
2. systemd-logind konfigurieren#
Datei bearbeiten:
sudo nano /etc/systemd/logind.confbashFolgende Zeilen setzen (kein # davor):
HandleLidSwitch=suspend
HandleLidSwitchExternalPower=suspend
HandleLidSwitchDocked=suspend
LidSwitchIgnoreInhibited=yesiniDienst neu starten:
sudo systemctl restart systemd-logindbash3. GNOME Power Settings konfigurieren#
Da GNOME den systemd-logind-Suspend für den Lid-Switch überschreibt, muss es separat konfiguriert werden:
gsettings set org.gnome.settings-daemon.plugins.power lid-close-ac-action 'suspend'
gsettings set org.gnome.settings-daemon.plugins.power lid-close-battery-action 'suspend'bashWirkt sofort, kein Neustart erforderlich.
Ergebnis#
| Funktion | Status |
|---|---|
Suspend per systemctl suspend | ✅ funktioniert |
| Suspend durch Zuklappen des Deckels | ✅ funktioniert |
| Aufwachen per Tastendruck | ✅ funktioniert |
| Aufwachen durch Öffnen des Deckels | ❌ nicht möglich |
Bekannte Einschränkung#
Das Öffnen des Laptop-Deckels weckt das System nicht auf. Der Lid-Switch auf diesem MacBook läuft über einen proprietären EC-Kanal des Apple-EFI, der unter Linux mit s2idle keinen Wakeup-IRQ erzeugt. Eine Lösung auf Kernel- oder ACPI-Ebene konnte nicht gefunden werden. Aufwachen per Tastendruck funktioniert als Workaround zuverlässig.