4. Power-Management

Leider sind die Power-Management-Funktionen unter FreeBSD noch nicht sehr stabil. Mit etwas Glück funktioniert die eine oder andere Funktion. Oder es funktioniert keine.

Was die Sache nicht einfacher macht, ist, dass es zwei verschiedene Standards für das Power-Management gibt: APM und ACPI. Letzteres ist zwar leistungsfähiger und besitzt mehr Funktionen, verursacht aber auch mehr Probleme.

Manche Laptops unterstützen sowohl APM als auch ACPI (bis zu einem gewissen Grad), andere unterstützen nur einen der beiden Standards. Sie sollten also mit beiden experimentieren, um ein funktionsfähiges Power-Management zu erhalten.

Anmerkung: Es ist nicht möglich, APM und ACPI gleichzeitig zu benutzen, auch wenn Ihr Notebook beide unterstützt.

4.1. APM

Das BIOS von APM (Advanced Power Management) stellt verschiedene Power-Management-Funktionen bereit, darunter Standby, Suspend, Hibernation, die Drosselung des Prozessors, und andere mehr. APM wird sowohl von FreeBSD 4.X als auch von FreeBSD 5.X unterstützt.

Um die APM-Unterstützung zu aktivieren, können Sie einen Kernel mit Power-Management-Unterstützung bauen (device apm0 bei FreeBSD 4.X und device apm bei FreeBSD 5.X). Unter FreeBSD 5.X ist auch ein APM-Modul vorhanden. Sie können das APM-Modul beim Systemstart laden, indem Sie in /boot/loader.conf die Zeile apm_load="YES" einfügen.

Unter FreeBSD 5.X müssen Sie in /boot/device.hints folgende Einstellung vornehmen: hint.apm.0.disabled="0".

Um APM beim Systemstart zu aktivieren, müssen Sie in /etc/rc.conf außerdem folgende Zeile einfügen: apm_enable="YES". Falls Sie den apmd(8)-Daemon automatisch starten wollen, fügen Sie die Zeile apmd_enable="YES" in /etc/rc.conf ein. Dieser Daemon kümmert sich um verschiedene APM-Ereignisse und die Benachrichtigung des BIOS. Damit kann das Notebook durch Drücken einer definierten Taste oder durch das Schließen des Deckels in den Ruhemodus versetzt werden.

Die verschiedenen APM-Befehle sind in apm(8) aufgeführt. apm -b zeigt den aktuellen Akkustatus an, wird dies nicht unterstützt, den Code 255. apm -Z versetzt das Notebook in den Standby-Modus, apm -z (oder zzz) in den Suspend-Modus. Mit shutdown -p wird das Notebook heruntergefahren und ausgeschaltet. Es ist möglich, dass nur einige oder keiner dieser Befehle funktionieren.

Vielleicht können Sie den Suspend-/Standby-Modus nur auf der Konsole aktivieren, aber nicht unter X (dann bleibe der Bildschirm nach dem Reaktivieren dunkel). Seit FreeBSD 5.X könnte eine Lösung darin bestehen, die Zeile options SC_NO_SUSPEND_VTYSWITCH in die Kernel-Konfigurationsdatei aufzunehmen und den Kernel neu zu kompilieren. Eine andere Lösung wäre es, vor dem apm(8)-Aufruf in den Konsolen-Modus zu wechseln, indem die Tastenkombination Ctrl+Alt+F1 oder eine andere Funktionstaste gedrückt wird. Dieser Vorgang kann mit apmd(8) automatisiert werden, falls der apmd(8)-Daemon läuft. Dazu fügen Sie die folgenden Abschnitte in /etc/apmd.conf ein:

apm_event SUSPENDREQ {
 exec "vidcontrol -s 1 < /dev/console";
 exec "/etc/rc.suspend";
}

apm_event USERSUSPENDREQ {
 exec "vidcontrol -s 1 < /dev/console";
 exec "sync && sync && sync";
 exec "sleep 1";
 exec "apm -z";
}

apm_event NORMRESUME, STANDBYRESUME {
 exec "/etc/rc.resume";
 exec "vidcontrol -s 9 < /dev/console";
}    

4.2. ACPI

ACPI (Advanced Configuration and Power Management Interface) stellt nicht nur Power-Management-Funktionen bereit, sondern ist auch in der Lage, von Ihnen eingesetzte Hardware zu erkennen (es ersetzt damit PnP und das PCI-BIOS). ACPI steht seit FreeBSD 5.X zur Verfügung und ist dort standardmäßig eingeschaltet. Die ACPI-Funktionen können mit acpiconf(8) gesteuert werden.

Leider werden Notebooks oft mit fehlerhaften ACPI-Implementierungen verkauft. Ist ACPI in so einem Fall aktiviert, verursacht es oft mehr Probleme als Nutzen. Es kann sogar so weit kommen, dass FreeBSD auf manchen Notebooks nicht startet, wenn ACPI aktiviert ist.

Sollte ACPI auf Ihrem Notebook Probleme verursachen, sollten Sie prüfen, ob der Hersteller Ihres Notebooks eine neuere BIOS-Version bereitstellt, in der die ACPI-Fehler behoben sind. Da die ACPI-Implementierung von FreeBSD sich noch im Entwicklungsstatus befindet, könnten Sie auch Ihr System aktualisieren. Die Chancen stehen gut, dass sich Ihre Probleme damit beheben lassen.

Möchten Sie ACPI abschalten, bearbeiten Sie die Zeile hint.acpi.0.disabled="1" in /boot/device.hints. Falls Sie beim Systemstart Probleme mit ACPI feststellen, können Sie ACPI auch am Bootprompt vorläufig deaktivieren, indem Sie unset acpi_load eingeben. Seit FreeBSD 5.1-RELEASE gibt es ein Bootmenü, in dem Sie unter anderem ACPI deaktivieren können. Dazu müssen Sie die Option 2. Boot FreeBSD with ACPI disabled auswählen.

4.3. Den Status des Power-Managements anzeigen

Das X-Window-System Xorg besitzt eine eigene Funktion, um den Status der Power-Management-Funktionen anzuzeigen (suchen Sie in xset(1) nach “dpms”). Leider funktioniert auch diese Funktion nicht auf allen Notebooks. Oft wird zwar das Display abgeschaltet, nicht aber die Hintergrundbeleuchtung.

Wenn Sie Fragen zu FreeBSD haben, schicken Sie eine E-Mail an <de-bsd-questions@de.FreeBSD.org>.
Wenn Sie Fragen zu dieser Dokumentation haben, schicken Sie eine E-Mail an <de-bsd-translators@de.FreeBSD.org>.