TLP - Linux Stromsparen: Unterschied zwischen den Versionen
(offizielle Repos) |
|||
Zeile 95: | Zeile 95: | ||
== Arch Linux == | == Arch Linux == | ||
Pakete sind in den offiziellen Repositories (Community) erhältlich. Die Installation ist im [https://wiki.archlinux.org/index.php/TLP Arch Wiki] beschrieben. | Pakete sind in den offiziellen Repositories (Community) erhältlich. Die Installation ist im [https://wiki.archlinux.org/index.php/TLP Arch Wiki] (englisch) beschrieben. | ||
== Gentoo == | == Gentoo == |
Version vom 27. Januar 2014, 18:50 Uhr
Was ist TLP?
TLP bringt Linux die Feinheiten des Stromsparens bei, ohne daß der Anwender allzuviel Detailwissen mitbringen muß.
TLP kommt mit einer Standardkonfiguration, die bereits auf Akkulaufzeit optimiert ist, so daß man es einfach installieren und danach vergessen kann. Anderseits sind die TLP-Einstellungen in hohem Maße anpassbar auf benutzerspezifische Anforderungen.
TLP-Pakete sind verfügbar für Arch, Debian, Fedora, Gentoo und Ubuntu. Wer sich dafür interessiert TLP für andere Distributionen zu paketieren, sollte einen Blick in die TLP Programmdokumentation werfen.
Hinweis: TLP ist für alle Notebook-Fabrikate geeignet, das Einstellen der Akkuladeschwellen ist jedoch nur für IBM/Lenovo ThinkPads verfügbar.
Funktionen
TLP ist ein reines Kommandozeilenwerkzeug, dass automatisch im Hintergrund arbeitet. Es verfügt nicht über eine GUI.
Einstellungen in Abhängigkeit von der Stromquelle
Folgende Einstellungen, die alle relevanten Empfehlungen des Werkzeugs Powertop umfassen, werden in Abhängigkeit von der aktiven Stromquelle (Akku/Netzteil) automatisch vorgenommen:
- Kernel-Laptop-Mode und Timeouts für das Zurückschreiben der Dateisystempuffer auf die Festplatte
- Prozessortakt-Steuerung einschließlich "Turbo Boost" / "Turbo Core"
- Verbrauchsbewusster Prozess-Scheduler für Multi-Core/Hyper-Threading-CPUs
- Advanced Power Management Level und Spindown Timeout (je Festplatte)
- SATA Aggressive Link Power Management (ALPM)
- PCI Express Active State Power Management (PCIe ASPM) – ab Linux 2.6.35
- Runtime Power Management für PCI(e)-Bus-Geräte – ab Linux 2.6.35
- Radeon KMS Taktfrequenzsteuerung – ab Linux 2.6.35, nicht fglrx
- Radeon Dynamic Power Management (DPM) – ab Linux 3.11, nicht fglrx
- WLAN (WiFi) Stromsparmodus – abhängig von Kernel und Treiber
- Optisches Laufwerk in Wechselschacht bzw. UltraBay ausschalten (beim Wechsel zum Akkubetrieb)
Weitere Einstellungen
- I/O-Scheduler (je Festplatte)
- USB Auto Suspend mit Geräte-Blacklist (Eingabegeräte werden automatisch ausgespart)
- Audio Stromsparmodus – für Intel HDA- und AC97-Sound
- Integriertes Bluetooth, WLAN und WWAN (UMTS) selektiv beim Systemstart bzw. beim Herunterfahren ein- bzw. ausschalten
- Funkgerätezustand beim Systemstart wiederherstellen (wie beim letzten Herunterfahren bzw. Neustart)
- Radio Device Wizard: Funkgeräte ereignisgesteuert ein- und ausschalten (Netzwerkverbindung/-trennung, An-/Abdocken)
- Wake-on-LAN deaktivieren
- Schaltzustand Ein/Aus des integrierten WWAN nach Suspend und Hibernation wiederherstellen
- Undervolting von Intel-Prozessoren – erfordert den Ubuntu tp-Kernel oder einen Kernel mit PHC-Patch
- Akku-Ladeschwellen – nur bei ThinkPads
- Akku rekalibrieren – nur bei ThinkPads
Installieren
Voraussetzungen
- Eigene Stromspar-Einstellungen oder -Skripte z.B. in /etc/rc.local sind deaktiviert, ansonsten sind schwer vorhersagbare Resultate zu erwarten.
- Das Paket laptop-mode-tools ist nicht installiert.
Ubuntu 12.04 bis 13.10
sowie Linux Mint 13 bis 15, nicht jedoch LMDE (siehe Debian)
In die Ubuntu-Paketquellen ist das TLP-PPA einzutragen mit folgenden Terminalkommandos:
sudo add-apt-repository ppa:linrunner/tlp sudo apt-get update
Folgende Pakete sind zu installieren:
- tlp (PPA) – Stromsparfunktionen von TLP
- tlp-rdw (PPA) – optional, Funkgerätesteuerung (Radio Device Wizard)
- tp-smapi-dkms (universe) – optional nur für ThinkPads, tp-smapi ermöglicht das Einstellen der Akkuladeschwellen und erweiterte Statusanzeigen.
- acpi-call-tools (PPA) – optional nur für ThinkPads, acpi-call ermöglicht das Einstellen der Akkuladeschwellen bei Sandy-Bridge- und neueren Modellen (X220/T420, X230/T430 etc.).
Die Pakete installiert man über die Paketverwaltung (Ubuntu Software Center, Synaptic, ...) oder im Terminal:
sudo apt-get install tlp tlp-rdw
Auf ThinkPads installiert man zusätzlich:
sudo apt-get install tp-smapi-dkms acpi-call-tools
Debian 6.0 und höher
sowie Linux Mint Debian Edition (LMDE)
Die folgenden Schritte sind - wie bei Debian üblich - in einer Root-Shell auszuführen.
Als Paketquelle wird das TLP-PPA für Ubuntu 10.04 verwendet. Dafür ist folgende Zeile in /etc/apt/sources.list einzutragen:
deb http://ppa.launchpad.net/linrunner/tlp/ubuntu lucid main
Anschließend ist der Public-Key des TLP-PPA zu hinterlegen:
apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 02D65EFF
Schlägt das vorstehende Kommando fehl, probiert man es mit einem anderen Keyserver:
apt-key adv --keyserver pool.sks-keyservers.net --recv-keys 02D65EFF
Zuletzt führt man ein Update der Paketquellen durch:
apt-get update
Folgende Pakete sind zu installieren:
- tlp (PPA) – Stromsparfunktionen von TLP
- tlp-rdw (PPA) – optional, Funkgerätesteuerung (Radio Device Wizard)
- tp-smapi-dkms (main) - optional nur für ThinkPads, ermöglicht das Einstellen der Akkuladeschwellen und erweiterte Statusanzeigen.
- acpi-call-tools (PPA) – optional nur für ThinkPads, acpi-call ermöglicht das Einstellen der Akkuladeschwellen bei Sandy-Bridge- und neueren Modellen (X220/T420, X230/T430 etc.).
Die Pakete installiert man über die Paketverwaltung oder im Terminal:
sudo apt-get install tlp tlp-rdw
Auf ThinkPads installiert man zusätzlich:
sudo apt-get install tp-smapi-dkms acpi-call-tools
Hinweis: Bei Sandy-Bridge- und neueren Modellen sollte für die Intel-Grafik zusätzlich noch die unten gezeigte Kernel-Bootoption für RC6 eingerichtet werden.
Arch Linux
Pakete sind in den offiziellen Repositories (Community) erhältlich. Die Installation ist im Arch Wiki (englisch) beschrieben.
Gentoo
Die Installation mit layman ist hier (englisch) beschrieben.
openSUSE
Für die gewarteten Versionen von openSUSE sind derzeit keine TLP-Pakete verfügbar.
Fedora 18 und höher
Zur Installation von TLP für Fedora müssen die folgenden Schritte in einer Root-Shell ausgeführt werden.
Hinzufügen der Repositories TLP und RPM Fusion (für die akmods):
yum localinstall --nogpgcheck http://repo.linrunner.de/fedora/tlp/repos/releases/tlp-release-1.0-0.noarch.rpm yum localinstall --nogpgcheck http://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-stable.noarch.rpm
Folgende Pakete sind zu installieren:
- tlp (TLP Repo)
- tlp-rdw (TLP Repo) - optional, Radio Device Wizard, erfordert NetworkManager
- akmod-tp_smapi (TLP Repo) - optional nur für ThinkPads, ermöglicht das Einstellen der Akkuladeschwellen und erweiterte Statusanzeigen
- akmod-acpi_call (TLP Repo) - optional nur für ThinkPads, acpi_call ermöglicht das Einstellen der Akkuladeschwellen bei Sandy-Bridge- und neueren Modellen (X220/T420, X230/T430 etc.)
- kernel-devel (Fedora Repo) - optional, wird von den vorstehenden akmod-Paketen benötigt
Die Pakete installiert man über die Paketverwaltung oder im Terminal:
yum install tlp tlp-rdw
Auf ThinkPads installiert man zusätzlich:
yum install akmod-tp_smapi akmod-acpi_call kernel-devel
Kernel-Bootoptionen
Das Setzen von Bootoptionen zum Stromsparen ist für keine der derzeit von TLP unterstützten Distributionen / Release notwendig. Die enthaltenen Kernelversionen wählen automatisch sinnvolle Einstellungen.
Einstellungen vornehmen
Alle TLP-Einstellungen finden sich in /etc/default/tlp. In vielen Fällen ist es nicht nötig, die Standardeinstellungen anzupassen. Die komplette Referenz findet sich in TLP Einstellungen.
Start
Sind Installation und Konfiguration abgeschlossen, aktiviert sich TLP automatisch beim Systemstart.
Alternativ startet man TLP sofort mit dem Kommando
sudo tlp start
Check
Um zu prüfen ob TLP korrekt arbeitet, benutzt man das Kommando
sudo tlp-stat
und schaut in der Ausgabe nach
+++ System Status TLP power save = enabled power source = ...
Hinweis: es gibt keinen TLP-Hintergrund-Prozess oder -Dämon den man mit ps anzeigen könnte.
Terminal-Kommandos
Hinweis: alle in diesem Kapitel beschriebenen, mit sudo beginnenden Kommandos, können ohne sudo in einer root-Shell ausgeführt werden.
wifi, bluetooth, wwan
Integriertes WLAN, Bluetooth und WWAN (UMTS) lassen sich im Terminal ein-, aus- und umschalten bzw. bei Aufruf ohne Parameter abfragen:
wifi [ on | off | toggle ]
Hinweis: für Intel 2100b-, 2200bg- und 2915abg-Karten muß das Kommando mit sudo
oder in einer Root-Shell aufgerufen werden.
bluetooth [ on | off | toggle ]
wwan [ on | off | toggle ]
Hinweis: Voraussetzung für die gezeigten Funktionen ist, daß die Hardware das rfkill-Framework des Kernels unterstützt (Ausnahme: Intel 2100/2200/2915). Zur Überprüfung gibt man
rfkill list
ein und schaut ob die gewünschte Geräteklasse wifi/bluetooth/wwan in der Auflistung erscheint (für Debian ist zuvor das Paket rfkill zu installieren).
tlp-stat
Statusbericht der Konfiguration und aller aktiven Einstellungen erstellen:
sudo tlp-stat
Nur Akkuinformationen anzeigen:
sudo tlp-stat -b sudo tlp-stat --battery
Nur Konfiguration anzeigen:
tlp-stat -c tlp-stat --config
Nur Schaltzustand der Funkgeräte anzeigen:
tlp-stat -r tlp-stat --rfkill
Nur Temperaturen und Lüfterdrehzahl anzeigen:
tlp-stat -t tlp-stat --temp
Traceausgabe aus /var/log/debug anzeigen:
tlp-stat -T tlp-stat --trace
tlp
Einstellungen für die momentane Stromquelle aktivieren/testen
sudo tlp start
Einstellungen für Akkubetrieb aktivieren
(unabhängig von der tatsächlichen, momentanen Stromquelle)
sudo tlp bat
Einstellungen für Betrieb am Netzteil aktivieren
(unabhängig von der tatsächlichen, momentanen Stromquelle)
sudo tlp ac
Auto Suspend für alle angeschlossenen USB-Geräte aktivieren
(außer in Blacklist enthaltene und Eingabegeräte)
sudo tlp usb
Optisches Laufwerk in Wechselschacht/Ultrabay ausschalten
sudo tlp bayoff
Hinweise zu bayoff:
- Das Laufwerk kann über den Wechselschacht-/Ultrabay-Entriegelungsschieber bzw. bei neueren Modellen über den Auswurfknopf am Laufwerk wieder eingeschaltet werden.
- Alle anderen Geräte in Wechselschacht/UltraBay, insbesondere Festplatten, werden durch dieses Kommando nicht ausgeschaltet.
Akku-Ladeschwellen vorübergehend ändern
nur für ThinkPads
Die Ladeschwellen werden auf die angegebenen Werte gesetzt (nur für ThinkPads, nicht SL, L- und Edge-Baureihe).
Wertebereich von 1 bis 100; START_SCHWELLE muß kleiner als die STOP_SCHWELLE - 3 sein. Gibt man keine Parameter an, werden die in den Einstellungen angegebenen Schwellen für den Hauptakku (BAT0) verwendet.
sudo tlp setcharge [ START_SCHWELLE STOP_SCHWELLE [ BAT0 | BAT1 ] ]
Die geänderten Akku-Ladeschwellen werden beim nächsten Systemstart wieder auf die in den Einstellungen vorgegebenen Werte gesetzt.
Akku-Ladeschwellen vorübergehend auf Maximum setzen
nur für ThinkPads
Die Ladeschwellen werden auf Werkseinstellungen 96/100 % gesetzt. Dient dazu den Akku voll aufzuladen.
sudo tlp fullcharge [ BAT0 | BAT1 ]
Die geänderten Akku-Ladeschwellen werden beim nächsten Systemstart wieder auf die in den Einstellungen vorgegebenen Werte gesetzt.
Akku einmalig bis zur oberen Schwelle laden
nur für ThinkPads
Setzt die untere Akku-Ladeschwelle vorübergehend auf obere Ladeschwelle - 4 und löst dadurch einen Ladevorgang aus.
sudo tlp chargeonce [ BAT0 | BAT1 ]
Die geänderte Ladeschwelle wird beim nächsten Systemstart wieder auf den in den Einstellungen vorgegebenen Wert gesetzt.
Akku im Betrieb am Netzteil entladen
nur für ThinkPads
sudo tlp discharge [ BAT0 | BAT1 ]
Mit dem Parameter BAT0
(Default) wird der Hauptakku, mit BAT1
der Ultrabayakku entladen. Das Kommando zeigt laufend die verbleibende Kapazität und Entladezeit an. Das Entladen kann jederzeit mit Strg+C abgebrochen werden.
Hinweise:
- das Kommando funktioniert nur mit angeschlossenem Netzteil
- während des Entladevorgangs kann ganz normal mit dem ThinkPad gearbeitet werden
- bei Problemen mit dieser Funktion bitte auch die TLP FAQ beachten
Akku rekalibrieren
nur für ThinkPads
Hinweis: der Rekalibrierungsvorgang sorgt dafür, daß die Elektronik im Akku Ladezustand und Kapazität korrekt wiedergibt. Verschlissene oder defekte Akkuzellen werden dadurch nicht repariert.
sudo tlp recalibrate [ BAT0 | BAT1 ]
Das Kommando faßt die Funktionen fullcharge und discharge zusammen. Zunächst werden die Ladeschwellen auf Werkseinstellungen 96/100 % gesetzt, dann der Akku vollständig entladen.
Hinweise: es gelten dieselben Hinweise wie beim vorigen Kommando.
Disk ID
tlp diskid
Ermittelt die IDs der Festplatten zur Angabe im Konfigurationsparameter DISK_DEVICES.
Statusbericht
sudo tlp stat
Entspricht tlp-stat.
run-on-ac, run-on-bat
Bedingtes Starten von Befehlen in Abhängigkeit von der aktiven Stromquelle:
run-on-ac befehl parameter ... run-on-bat befehl parameter ...
Der befehl
wird nur ausgeführt, wenn die passende Stromquelle (-ac
für das Netzteil, -bat
für den Akku) aktiv ist. Dies kann man z.B. in "System -> Einstellungen -> Startprogramme" verwenden.
Manpages
Details aller Befehle erhält man per:
man <befehl>
Lizenz
TLP ist nach der GPL Version 2 und höher lizensiert. Zum Download des Quellcodes siehe die TLP Programmdokumentation.
Support
FAQ
Erste Anlaufstation bei Fragen und Problemen ist die TLP FAQ.
Thinkpad-Forum
Für darüber hinaus gehende Fragen und Probleme gibt es einen TLP-Support-Thread im Thinkpad-Forum (selbstverständlich sind dort auch Nutzer anderer Fabrikate willkommen). Bitte bei Anfragen dort stets die vollständige Ausgabe von (möglichst im Akkubetrieb)
sudo tlp-stat
per http://paste.ubuntuusers.de beifügen.
Trace-Modus
Bei komplexen Fehlersituationen kann durch folgende Einstellung in /etc/default/tlp der Trace-Modus aktiviert werden:
TLP_DEBUG="bat lock nm path pm rf run sysfs udev usb"
Die gesammelten Informationen können jederzeit mit
tlp-stat -T
oder
grep "tlp" /var/log/debug
ausgelesen werden.
Voraussetzungen
Falls der Befehl keine Ausgabe erzeugt, muss die Syslog-Konfiguration ergänzt werden. Für rsyslog legt man dazu die Datei /etc/rsyslog.d/90-debug.conf mit folgendem Inhalt an:
*.=debug;\ auth,authpriv.none;\ news.none;mail.none -/var/log/debug
Anschließend startet den Dämon neu mit
sudo /etc/init.d/rsyslog restart
und führt den Testfall erneut aus.
Hinweis für Arch Linux: es muss das Paket rsyslog installiert und der Dienst aktiviert werden. Eine Anpassung der Konfiguration ist nicht nötig.
Links
TLP
- TLP Einstellungen
- TLP FAQ
- TLP-Support-Thread – im Thinkpad-Forum
- TLP – Projekt-Homepage
- TLP Linux Advanced Power Management – Documentation in English
- TLP Quellcode – GIT Repository bei Github.com (englisch)
- TLP Developer Documentation – Hinweise zur Paketierung (englisch)
- TLP PPA – Pakete für Ubuntu und Debian (englisch)
Hintergrund
- Messung des Stromverbrauchs – Wikiartikel
- PHC wiki – PHC Dokumentation (englisch)
- Absenken der Prozessorspannung – Anleitung zum Undervolting
- SMART – Ermitteln des Festplattenzustands
- Ungenutztes Stromsparpotenzial – Artikel zu den Kernel-Bootoptionen auf heise.de
Changelog
Version 0.4.1 – 02.01.2014 (nicht für Ubuntu / Debian)
Fehlerbehebung:
- Bug #43: tlp-rdw funktioniert nicht mit Network Manager 0.9.9/Fedora 20 (wofritz)
- Bug #44: run-on-ac/bat: verbliebene Abhängigkeit zu pm-utils entfernt
Neue Features:
- tpacpi-bat: Unterstützung für ThinkPad E431
Version 0.4 – 19.09.2013
Neue Features:
- Neues Radeon Dynamic Power Management (DPM) – erfordert Kernel 3.11 oder höher (Pali Rohár)
- RUNTIME_PM_BLACKLIST: PCI(e)-Geräte vom Runtime Power Management ausnehmen (wofritz)
- USB_BLACKLIST_WWAN: WWAN/UMTS vom USB-Auto-Suspend ausnehmen
- Für schnelleres Herunterfahren werden automatisch die AC-Einstellungen gesetzt
- Support für Ubuntu 13.10
Hinweis: die untenstehenden Änderungen aus 0.3.10/11 sind in 0.4 nun für alle Distributionen enthalten.
Version 0.3.11 – 12.09.2013 (nur für Arch Linux)
Fehlerbehebung:
- Issue #42:
- Abhängigkeit zu on_ac_power (Teil von pm-utils) entfernt
- udev-Regel zur Erkennung des Wechsels der Stromquelle Netzteil <-> Akku korrigiert
- Pull request #40: systemd: tlp.service nach local-fs.target statt nach graphical.target starten
Version 0.3.10.1 – 18.08.2013 (nur für Arch Linux)
Änderungen:
- Architektur
- Issue #36: Wechsel der Stromquelle per udev erkennen statt Aufruf über pm-powersave
- Suspend/Resume in systemd-Umgebung ohne pm-utils verarbeiten
- Issue #31: intel_pstate-Treiber erkennen und für Turbo Mode verwenden
- Wake-On-LAN (WOL) für alle Ethernet-Geräte, nicht nur eth0 (blafoo)
- tpacpi-bat: Unterstützung für ThinkPad T430u, Edge E335/E530
Fehlerbehebung:
- Issue #28: dirty_(background_)ratio nicht mehr anpassen, d.h. Kernel Defaults sind wirksam
Version 0.3.9 – 02.05.2013
Änderungen:
- tpacpi-bat: Unterstützung für ThinkPad S430, L530
- tlp-stat: /sys/class/power_supply/BATx/cycle_count = 0 als "(unsupported)" anzeigen
- Ubuntu 10.04 und 11.10 werden wegen ihres Wartungsendes nicht mehr unterstützt, Debian 6.0 hingegen weiterhin
Fehlerbehebung:
- Issue #14: tlp recalibrate schlägt fehl, wenn /bin/sh -> bash (slyon)
- Bug #42: X121e Akkufunktionen fehlerhaft (Jlp)
- Sinnvollere Werte für dirty_ratio/dirty_background_ratio verwenden (supernova)
Ältere Versionen
Vollständiges Changelog siehe hier.