Linux Projektvorstellung: TLP – Linux Stromsparen

Linux Betriebssystem

linrunner

Ubuntuversteher
Themenstarter
Registriert
22 Juni 2007
Beiträge
13.275
Nachdem im Forum öfters nachgefragt wird, wie man Linux die Feinheiten des Stromsparens beibringt, habe ich mich vor einiger Zeit entschlossen, meine Skriptsammlung in eine allgemein benutzbare Form zu bringen. Das Ergebnis möchte ich Euch an dieser Stelle vorstellen.

Dokumentation ist auf der offiziellen Website https://linrunner.de/tlp/ zu finden (die Infos in unserem Wiki werden von mir nicht mehr gepflegt und sind veraltet).

Fragen und Probleme einfach hier im Thread posten.

Für die erste Analyse benötige ich bitte stets den kompletten Output von

Code:
sudo tlp-stat
Anmerkung: ich fordere oft in der weiteren Analyse Teilausgaben an - das sollt ihr jedoch nicht selbstständig tun! Immer zuerst die vollständige Ausgabe.

Bitte auch die FAQ beachten!

Rückmeldungen der Art "alles funktioniert" sind natürlich auch gern gesehen ... :cool:
 
Zuletzt bearbeitet:
Das kommt davon, wenn man zu schnell liest.....

Den Output hatte ich gar nicht genau beachtet, hatte nur auf die Eingaben geschielt. Mea culpa, mea culpa...

"Failed to connect to 2a01:198:200:20a::2: Network is unreachable"

Stimmt, der Keyserver ist gestört. Wie lange probierst Du denn schon?

Hatte das auch mal bei einem anderen PPA, ging dann nach ein paar Stunden wieder.

JO
 
Mit dem Key ist alles in bester Ordnung (eben Download selbst getestet), mit deiner Netzwerkverbindung anscheinend nicht:
[font='Courier New, Courier, mono']gpgkeys: HTTP fetch error 7: Failed to connect to 2a01:198:200:20a::2: Network is unreachable[/font]
Da wird vom DNS eine IPv6 Adresse aufgelöst, sehr seltsam. Du solltest mal beginnend beim Modem/Router alle deine Gerätschaften durchstarten.
 
Bei mir funktioniert es:

Code:
gpg: Schlüssel 02D65EFF von hkp Server gpg-keyserver.de anfordern
gpg: Schlüssel 02D65EFF: "Launchpad PPA for linrunner" nicht geändert
gpg: Anzahl insgesamt bearbeiteter Schlüssel: 1
gpg:              unverändert: 1
Natürlich ist die Ausgabe anders, da ich den Schlüsse ja schon importiert hatte.....
 
linrunner' schrieb:
Mit dem Key ist alles in bester Ordnung (eben Download selbst getestet), mit deiner Netzwerkverbindung anscheinend nicht:
[font='Courier New, Courier, mono']gpgkeys: HTTP fetch error 7: Failed to connect to 2a01:198:200:20a::2: Network is unreachable[/font]
Da wird vom DNS eine IPv6 Adresse aufgelöst, sehr seltsam.
Das erklärt, warum es durchgehend seit heute Mittag nicht klappt.

linrunner' schrieb:
Du solltest mal beginnend beim Modem/Router alle deine Gerätschaften durchstarten.
Dürfte am WLAN-Access-Point oder Modem liegen (das Notebook hat heute schon ein, zwei Neustarts hinter sich). Allerdings komme ich an den nicht ran, weil ich zurzeit über ein öffentliches WLAN ins Internet gehe.

Doch das ist alles halb so wild. Denn ich habe mich an joachimas Tipp gehalten, es mit dem Synaptic Package Manager zu versuchen. Der hat zwar die gepostete (s. vorherigen Post) Fehlermeldung ausgespuckt, es aber - unter Hinweis auf die Risiken - trotzdem zugelassen, dass ich tlp installiere. Fazit: Läuft. :)
Code:
tlp power save = enabled
Sollte ich hieran herumspielen?
Code:
/proc/acpi/ibm/thermal = temperatures:	47 50 38 58 -128 -128 -128 -128 43 55 49 -128 -128 -128 -128 -128

/proc/sys/vm/laptop_mode = 0
/proc/sys/vm/dirty_writeback_centisecs = 1500
/proc/sys/vm/dirty_expire_centisecs = 3000
/proc/sys/vm/dirty_ratio = 20
/proc/sys/vm/dirty_background_ratio = 10
/proc/sys/fs/xfs/age_buffer_centisecs = (not available)
/proc/sys/fs/xfs/xfssyncd_centisecs = (not available)
/proc/sys/fs/xfs/xfsbufd_centisecs = (not available)

/sys/class/scsi_host/host0/link_power_management_policy = max_performance
/sys/class/scsi_host/host1/link_power_management_policy = max_performance
/sys/class/scsi_host/host2/link_power_management_policy = max_performance
/sys/class/scsi_host/host3/link_power_management_policy = max_performance

/sys/module/snd_hda_intel/parameters/power_save = 0
/sys/module/snd_hda_intel/parameters/power_save_controller = Y

tlp usb autosuspend = enabled
tlp usb blacklist = (not configured)

/sys/bus/usb/devices/1-6/power/autosuspend = 2, level = auto -- 17ef:4807 
/sys/bus/usb/devices/2-1/power/autosuspend = 2, level = auto -- 1058:0704 External HDD    
/sys/bus/usb/devices/4-1/power/autosuspend = 2, level = auto -- 08ff:2810 Fingerprint Sensor
/sys/bus/usb/devices/usb1/power/autosuspend = 2, level = auto -- 1d6b:0002 EHCI Host Controller
/sys/bus/usb/devices/usb2/power/autosuspend = 2, level = auto -- 1d6b:0002 EHCI Host Controller
/sys/bus/usb/devices/usb3/power/autosuspend = 2, level = auto -- 1d6b:0001 UHCI Host Controller
/sys/bus/usb/devices/usb4/power/autosuspend = 2, level = auto -- 1d6b:0001 UHCI Host Controller
/sys/bus/usb/devices/usb5/power/autosuspend = 2, level = auto -- 1d6b:0001 UHCI Host Controller
/sys/bus/usb/devices/usb6/power/autosuspend = 2, level = auto -- 1d6b:0001 UHCI Host Controller
/sys/bus/usb/devices/usb7/power/autosuspend = 2, level = auto -- 1d6b:0001 UHCI Host Controller
/sys/bus/usb/devices/usb8/power/autosuspend = 2, level = auto -- 1d6b:0001 UHCI Host Controller

Akku-Ladeschwellen habe ich folgendermaßen gesetzt:
Code:
# Main battery (values in %)
START_CHARGE_THRESH_BAT0=50
STOP_CHARGE_THRESH_BAT0=80
# Ultrabay battery (values in %)
START_CHARGE_THRESH_BAT1=50
STOP_CHARGE_THRESH_BAT1=80

Bisher habe ich den Akku (gebraucht, soll aber null Ladezyklen durchlaufen haben) gar nicht ausgepackt, da ich ohnehin nur zuhause am Notebook sitze. Macht es überhaupt Sinn, den Akku einzusetzen oder sollte ich ihn lieber schonen? Eventuell einmal zur Kalibrierung auf null Prozent entladen und dann bei 60% in den Kühlschrank legen (na ja, oder in den Schrank ...)? Ich habe hier irgendwo gelesen, dass ein Betrieb ohne Akku schlecht für Hardware-Komponenten sein kann, die hohe Spannungsspitzen brauchen - da komme das Netzteil angeblich nicht hinterher.

Schon einmal vielen Dank an euch beide, linrunner und joachima, für die prompte, erfolgreiche Hilfe zu später Stunde. Feine Kuhmuhnity hier. :)
 
thorminator' schrieb:
Sollte ich hieran herumspielen?
TLP ist eine ernsthafte Software, da gibt es nix zu spielen :P . Einige wenige Dinge muß man explizit aktivieren (Ladeschwellen, opt. Laufwerk im Akkubetrieb auschalten, Funkgeräte beim Systemstart auschalten). Infos findest Du in der Beschreibung der Einstellunge.

Für eine detaillierte Diagnose kann ich mit deinem gekürzten Output nichts anfagen. Gib bitte mal den vollständigen Output im Akkubetrieb(!) wie im Handbuch beschrieben:
Code:
egrep -v '^#|^\s*$' /etc/default/tlp
sudo tlp-stat
Am besten per http://paste.ubuntuusers.de damit es hier nicht so lang wird.
 
linrunner' schrieb:
TLP ist eine ernsthafte Software, da gibt es nix zu spielen :P . Einige wenige Dinge muß man explizit aktivieren (Ladeschwellen, opt. Laufwerk im Akkubetrieb auschalten, Funkgeräte beim Systemstart auschalten). Infos findest Du in der Beschreibung der Einstellunge.
Jo, hatte ich gesehen und schon ein wenig studiert.

linrunner' schrieb:
Für eine detaillierte Diagnose kann ich mit deinem gekürzten Output nichts anfagen. Gib bitte mal den vollständigen Output im Akkubetrieb(!) wie im Handbuch beschrieben:
Code:
egrep -v '^#|^\s*$' /etc/default/tlp
sudo tlp-stat
Am besten per http://paste.ubuntuusers.de damit es hier nicht so lang wird.
egrep
TLP-Log
 
Sieht doch gut aus (das Log ist übrigens nach wie vor am Netzteil und nicht im Akkubetrieb erstellt.). Wenn Du ohnehin BT und WWAN ausschaltest, mach das doch per
Code:
DEVICES_TO_DISABLE_ON_STARTUP="bluetooth wwan"
WWAN kannst Du per Fn+F6 schalten, indem Du das Paket tp-wwan-hotkey aus meinem unten verlinkten PPA installierst.

ps. was mir gerade aufffällt sind die Einstellungen für den Ultrabayakku (BAT1)
Code:
START_CHARGE_THRESH_BAT1=50
STOP_CHARGE_THRESH_BAT1=80
Da Du keinen hast (lt. Log) sind die eigentlich überflüssig.

Beachte auch, daß beim Entnehmen des Akkus die Ladeschwellen verloren gehen. Wenn Du ihn wieder einsetzt und das System hochfährst wird der Akku zunächst auf 100% geladen, da die Schwellen erst beim nächsten Ausschalten ziehen.
 
linrunner, du bist spitze!
klasse sache das wwan-hotkey paket..habs gerade installiert und getestet. und tlp verrichtet nun schon längere zeit gute dienste bei mir.
 
@yatpu: die Skripte hatte ich schon vor einiger Zeit mal gepostet. Da ich aber öfter ThinkPads mit Ubuntu installiere, habe ich es mir etwas bequemer gemacht und schnell ein Paket gebaut.
 
das ist mir wohl entgangen. finde es allerdings klasse, dass deine kleinen helferlein der allgemeinheit als ppa bereitstellst. danke
 
Nachdem ich TLP installiert habe, denke ich das es ein kleines Problem gibt.

Seit das Netzteil dran ist entläd der Akku nicht mehr, so dass ich nicht unter meine eingestellte Schwelle von 20 % komme.

Anbei die benötigten Daten

TLP_ENABLE=1
DISK_IDLE_SECS_ON_AC=0
DISK_IDLE_SECS_ON_BAT=2
MAX_LOST_WORK_SECS_ON_AC=15
MAX_LOST_WORK_SECS_ON_BAT=60
DISK_DEVICES="sda"
DISK_APM_LEVEL_ON_AC=254
DISK_APM_LEVEL_ON_BAT=128
SATA_LINKPWR_ON_AC=max_performance
SATA_LINKPWR_ON_BAT=min_power
WIFI_PWR_ON_AC=1
WIFI_PWR_ON_BAT=5
WOL_DISABLE=Y
SOUND_POWER_SAVE=1
SOUND_POWER_SAVE_CONTROLLER=Y
BAY_POWEROFF_ON_BAT=1
BAY_DEVICE="sr0"
USB_AUTOSUSPEND=1
DEVICES_TO_DISABLE_ON_STARTUP="bluetooth"
START_CHARGE_THRESH_BAT0=20
STOP_CHARGE_THRESH_BAT0=80

hier die Stat

Im voraus besten Dank
 
was für ein verhalten hast du denn erwartet? ist doch normal, dass der akku im netzbetrieb nicht entlädt ?(
 
yatpu' schrieb:
was für ein verhalten hast du denn erwartet? ist doch normal, dass der akku im netzbetrieb nicht entlädt ?(
In der Tat.

Eine untere Schwelle von 20% (Ladebeginn) macht nur bei sehr speziellen Anforderungen Sinn. Der Ansatz damit Ladezyklen einsparen zu wollen ist imho auch verfehlt (s. Leitfaden zur Behandlung von Lithium-Akkus "entsprechend gilt zweimaliges Entladen und Aufladen um 50% ebenfalls als Zyklus", "Die Einstellung für den Aufladebeginn des Akkus sollte 5-10% unter der Ladeendschwelle liegen,"). Nimm 75% und gut ist.
 
linrunner' schrieb:
Sieht doch gut aus (das Log ist übrigens nach wie vor am Netzteil und nicht im Akkubetrieb erstellt.).
Habe das Netzteil immer dran, da ich das Notebook bislang nur zuhause verwende. Schadet es so dem Akku? Kann man im Akku-Betrieb mehr Informationene sehen?

linrunner' schrieb:
Wenn Du ohnehin BT und WWAN ausschaltest, mach das doch per
Code:
DEVICES_TO_DISABLE_ON_STARTUP="bluetooth wwan"
Die Option hatte ich in der config file gar nicht gesehen. Ist aktiviert.

linrunner' schrieb:
WWAN kannst Du per Fn+F6 schalten, indem Du das Paket tp-wwan-hotkey aus meinem unten verlinkten PPA installierst.
Danke, aber WWAN brauche ich nicht, daher darf es gern off bleiben. (Sollte ich es ausnahmsweise doch benötigen, schalte ich es halt über das Terminal ein.)

linrunner' schrieb:
ps. was mir gerade aufffällt sind die Einstellungen für den Ultrabayakku (BAT1)
Code:
START_CHARGE_THRESH_BAT1=50
STOP_CHARGE_THRESH_BAT1=80
Da Du keinen hast (lt. Log) sind die eigentlich überflüssig.
Die Einstellungen hatte ich gleich mit angepasst, als ich gerade dabei war. Ist jetzt wieder deaktiviert, da in der Tat überflüssig.

linrunner' schrieb:
Beachte auch, daß beim Entnehmen des Akkus die Ladeschwellen verloren gehen.
Steht nicht in dem Akku-Leitfaden-Thread, dass die Schwellen in der Akku-Elektronik gespeichert werden?

yatpu' schrieb:
linrunner, du bist spitze!
+1
 
thorminator' schrieb:
Schadet es so dem Akku? Kann man im Akku-Betrieb mehr Informationene sehen?
1. Nein.
2. Im Prinzip nicht, aber ich kann dann gleichzeitig prüfen ob die Umschaltung auf Akkubetrieb sauber funktioniert (ist der wichtigere Modus für die meisten User, denn TLP dient primär der Laufzeitverlängerung)
Steht nicht in dem Akku-Leitfaden-Thread, dass die Schwellen in der Akku-Elektronik gespeichert werden?
Neuere "Forschungs"-Ergebnisse hier im Forum deuten darauf hin das es nicht so ist.
 
linrunner' schrieb:
2. Im Prinzip nicht, aber ich kann dann gleichzeitig prüfen ob die Umschaltung auf Akkubetrieb sauber funktioniert (ist der wichtigere Modus für die meisten User, denn TLP dient primär der Laufzeitverlängerung)
stat-tlp
egrep

Warum unterscheiden sich hier eigentlich die Ausgaben (START=60 ist richtig, habe ich vorhin geändert)?
stat-tlp:
Code:
/sys/devices/platform/smapi/BAT0/start_charge_thresh = 50 [%]
/sys/devices/platform/smapi/BAT0/stop_charge_thresh = 80 [%]
egrep:
Code:
START_CHARGE_THRESH_BAT0=60
STOP_CHARGE_THRESH_BAT0=80
Wird die tlp config erst nach einem Neustart von tlp neu geschrieben?
 
Output sieht gut aus. Die Schwellen werden nur beim Systemstart geschrieben (oder explizit per [font='Courier New, Courier, mono']sudo tlp start[/font]), normalerweise ändert man sie ja nicht alle naselang.
 
Das klingt beruhigend.

Danke für die gute Betreuung, linrunner. Jetzt fühle ich mich schon ganz gut einge-Ubuntut. :)
 
  • ok1.de
  • ok2.de
  • thinkstore24.de
  • Preiswerte-IT - Gebrauchte Lenovo Notebooks kaufen

Werbung

Zurück
Oben