WLAN Stromsparen in rc.local funktioniert nicht!

slinger

New member
Themenstarter
Registriert
25 März 2006
Beiträge
949
Hallo,

habe das Problem das mein Befehl zum WLAN Stromsparen in der rc.local nicht ausgeführt wird. Habe zum testen mal per touch ne Datei erstellen lassen ob die rc.local überhaupt ausgeführt wird -> das ist aber der Fall.

Wenn ich den Befehl allerdigs übers Terminal ausführe zeigt er sofort Wirkung. Jemand eine Idee?

Code:
?#################################################################
# The following Settings are used to save some battery power	#
# Discriptions are given for the commands.			#
#								#
# settings of slinger :)					#
#################################################################							
##
# Energiesparmodus der WLAN Karte aktivieren - Level 5
# Ubuntu Standard hat Level 6 (OFF)
# -
# Zur Überprüfung
# @ "iwpriv ethX get_power"
#iwpriv eth0 set_power 5

#echo 7 > /sys/bus/pci/drivers/iwl3945/0000:03:00.0/power_level

#WLAN Stromsparen
#echo 5 > /sys/bus/pci/drivers/iwl3945/*/power_level
#echo 5 > /sys/bus/pci/drivers/iwl3945/0000:03:00.0/power_level
echo 5 > /sys/bus/pci/devices/0000\:03\:00.0/power_level


#rc.local aufruf testen
#touch /tmp/rc.local-wurde-aufgerufen

# PCI Geräte stromsparen
for i in /sys/bus/pci/devices/*/power_level ; do echo 5 > $i ; done

# Sound stromsparen nach 4 sec
echo 4 > /sys/module/snd_hda_intel/parameters/power_save

# Bluetooth abschalten
echo disable > /proc/acpi/ibm/bluetooth

# Festplatten Energiesparmodus deaktivieren
hdparm -B 254 /dev/sda

# Trackpoint sensibler
echo -n 250 > /sys/devices/platform/i8042/serio1/sensitivity
# und schneller
echo -n 150 > /sys/devices/platform/i8042/serio1/speed

# Wake-on-Lan deaktivieren
ethtool -s eth1 wol d

##
# Akku Ladebereiche für tp_acpi angleichen
# @start_charge_thresh gibt an ab wann geladen werden soll
#		       also hier bei <= 30%
# @stop_charge_thresh gibt an ab wann der Ladevorgang gestoppt wird
#		      also hier bei >= 85%
echo 30 > /sys/devices/platform/smapi/BAT0/start_charge_thresh 
echo 85 > /sys/devices/platform/smapi/BAT0/stop_charge_thresh

##
# Aktiviert den Stromsparenden, Multicorefähigen CPU Scheduler
# @sched_mc_power_savings aktivieren des Scheduler Dienstes
#                         für die CPU 
# @scaling_governor[ondemand] aktiviert den ondemand Scheduler
#                             der Energieeffizienter für alle modernen
#                             gebräuchlichen CPUs ist
echo 1 > /sys/devices/system/cpu/sched_mc_power_savings
echo ondemand > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
echo ondemand > /sys/devices/system/cpu/cpu1/cpufreq/scaling_governor

# AHCI Link Power Management. Auskommentiert wenn statt AHCI
# "Compatibility Mode" im Bios aktiviert ist; min_power bedingt
# ein sehr langsames Suspend to Ram
echo min_power > /sys/class/scsi_host/host0/link_power_management_policy

##
# aktiviert das USB Supend feature, damit uhci_hcd nicht dauernd wakeups erzeugt. Bringt nur was, wenn keine Geräte   
# angeschlossen sind und ist auch per Modulparameter machbar.
# for i in /sys/bus/usb/devices/*/power/autosuspend; do echo 1 > $i; done

# EXIT 0 MUSS STEHEN BLEIBEN!
exit 0
 
OK, das sieht alles clean aus. Ich setze aber noch zusätzlich nach jedem ifup den WLAN-Power-Mode analog buddabrods Vorschlag. Daß deine WLAN-Verbindung wacklig ist, spricht für seine Hypothese.

Erstelle doch mal eine Datei /etc/network/if-up.d/wifi-power
Code:
#!/bin/sh
IWC=/sbin/iwconfig
[ -x $IWC ] || exit 0

if [ -z $($IWC $IFACE | grep "no wireless extensions") ]; then # interface is wifi
	echo "5" > /sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/power_level
fi

exit 0
(chmod 755 nicht vergessen...)
 
Naja, aber neu verbinden tut er nicht und haken tut das höchst selten, wenn überhaupt. Und wenn dann hängt sie eher so stark, dass kurzzeitig keine Seiten aufrufbar sind und ich neu verbinden muss. Unter Windows hab ich übrigens eigentlich keine Probleme.
 
Und was passiert nun wenn Du das Skript einsetzt?

ps. ich habe unter Windows auch keine Probleme, wenn auch aus einem anderen Grund ... 8)
ps2. die Intel-WLAN-Treiber in Jaunty taugen nicht sehr viel und zwar mit oder ohne Backports :(
 
Soll man das manuell ausführen oder irgendwo anders einbinden?

System:Auto Mode: Fixed Index: 5 ist bei euch aber auch so?
 
Weder noch. Die Dateien in if-up.d werden bei jedem Interface-Start (ifup) ausgeführt. Wichtig ist nur das
Code:
sudo chmod 755 /etc/network/if-up.d/wifi-power
[quote='timeey',index.php?page=Thread&postID=655264#post655264]System:Auto Mode: Fixed Index: 5 ist bei euch aber auch so?[/quote]Ja.
 
[quote='linrunner',index.php?page=Thread&postID=655263#post655263]Und was passiert nun wenn Du das Skript einsetzt?

ps. ich habe unter Windows auch keine Probleme, wenn auch aus einem anderen Grund ... 8)
ps2. die Intel-WLAN-Treiber in Jaunty taugen nicht sehr viel und zwar mit oder ohne Backports :([/quote]
Das liegt nicht an Ubuntu.. Hab hier unter Arch den 2.6.30 Kernel und seit jeher hakt das ****** wlan.

Zu windows kann ich nichts sagen, aber der iwn aus *BSD funktioniert um WELTEN besser. Intel ist (nicht nur) in der Hinsicht einfach unfähig.
 
Jo, dachte ich mir schon. Wollte nur ausschließen, dass ich das noch irgendwo hinzufügen muss. Und ja, Rechte hab ich natürlich gesetzt.

Ich untersuch grad, ob es Aussetzer gibt während er umswitcht. Sieht so aus, als gäbe es nen kurzen und minimalen Pingspike, wenn er auf 0 zurückspringt. Verbindung ist aber ganze Zeit da und verfügbar. Gerade hält er etwas länger durch, warum auch immer.

edit: Genau in diesem moment ging Ping zum Router kurz auf 60ms und 80ms hoch und danach Index: 0.

Nutze übrigens network-manager (müsste das glaube sein), daher geht ifdown und ifup ja nicht.

Habe jetzt mal auf bg-mixed (statt bgn) gestellt im Router, hält minimal länger, aber setzt sich ebenfalls zurück. Oh man is das nervig... Muss ich mir wohl nen Script schreiben das alle 10Sek prüft obs auf 5 steht und wenn nicht, auf 5 setzt.
 
[quote='buddabrod',index.php?page=Thread&postID=655274#post655274]Das liegt nicht an Ubuntu.. Hab hier unter Arch den 2.6.30 Kernel und seit jeher hakt das ****** wlan.
[/quote]Das würde ich differenzierter betrachten :D . Der Ubuntu-2.6.28er lief bei mir mit bestimmten WLANs nicht, die dazugehörigen Backports wiederum mit anderen WLANs nicht. Mit 2.6.30/31-Mainline gingen hingegen alle.
[quote='buddabrod',index.php?page=Thread&postID=655274#post655274] Intel ist (nicht nur) in der Hinsicht einfach unfähig.[/quote]Woher nimmst Du die Gewißheit, daß es nicht am allen Treibern gemeinsamen Teil des 802.11-Stacks im Kernel liegt?

EDITH1:[quote='timeey',index.php?page=Thread&postID=655279#post655279]Nutze übrigens network-manager (müsste das glaube sein), daher geht ifdown und ifup ja nicht.
[/quote]Hier irrst Du.

EDITH2: linux-backports-modules-jaunty probiert?
 
Und du hast am x200 keine solche Probs?

Backports gingen bei mir glaube gar nicht. Wollte nicht mehr verbinden.

Trotz n wird mir auch nur maximal 60mbit angezeigt (unter Windows 144 bei 20mhz Channel bzw 270-300 bei 40mhz). Soll das eigentlich normal sein? Mit meinem Linksys WUSB600N (Ralink 2870) stand da sowohl an meinem ehemaligen PC als auch am WDTV (MediaPlayer mit custom Firmware und Linux) immer 270mbit.

edit:
ifup wlan0 und ifdown wlan0 funktionieren aber nicht. Muss ich die lediglich in der /etc/network/interfaces eintragen oder wie?

edit2:
Ist schon nen Weilchen her, dass ich die backports probiert habe. Könnte ich nochmal machen. Was nutzt du denn im x200? Oder hast die Karte getauscht? =)
 
[quote='timeey',index.php?page=Thread&postID=655291#post655291]Und du hast am x200 keine solche Probs?

ifup wlan0 und ifdown wlan0 funktionieren aber nicht. Muss ich die lediglich in der /etc/network/interfaces eintragen oder wie?[/quote]Mein Router kann kein 802.11n.

Ich meinte auch nicht daß ifup/down funktionieren, der NetworkNager ruft aber trotzdem nach einem Interface-Start/Stop die Skripte auf. Mach doch mal den Haken bei "Enable Wireless" (re. Maus auf dem NM) aus und wieder an und schau ob der Mode dann gesetzt wird.

EDITH: X200 mit Intel 5300. Ich nutze einen 2.6.31rc6-Mainline. Der 2.6.28 funktioniert bei mir zuhause am besten ohne Backports.
 
Die Backports scheinen evtl die Lösung gewesen zu sein. Gerade installiert, neugestartet, erstmal gebangt ob er connected und es ging. Dann kontrolliert, wie es mitm PowerLevel aussieht und es stand zu meinem erstaunen auf 5.

ABER:

Habs dann jetzt mal manuell wieder auf 0 gestellt und im NM Funkverbindung aus und eingeschaltet. Geht auf jedenfall nicht zurück auf 5 sondern bleibt bei 0.

Stell ich es dann manuell wieder zurück auf 5 und schalte wieder WLAN an und aus über NM, gehts zurück auf 0...

Ich muss jetzt erstmal nochmal neustarten und gucken obs dann wieder auf 5 steht nach dem connecten. Dass es beim manuellen Aus/Einschalten gerade wieder auf 0 gesprungen ist, vorher aber nach dem Neustart auf 5 stand nach dem Connect, verwirrt mich doch jetzt etwas...

edit:
Hm, Neustart und steht auf 5, wie es sein soll. Da stellt sich jetzt die Frage, warum er nach dem Aus-/Einschalten auf 0 geht. Scheint das Script ja nicht zu fruchten. Mal kurz manuell testen das Script, ob es tut, was es soll.

edit2:
Also Script tuts natürlich bei manuellem Starten. Beim normalen Neuverbinden zum WLAN durch nochmaliges Anklicken bleibt es allerdings bei 5.

Hatte gerade aber nen Hänger bei der WLAN Verbindung. Ging nix mehr, musste neu verbinden. Mal sehen ob das nur ne Ausnahme war.

Nachtrag: Genau in dem moment als ich den Edit abschicken wollte, gabs 2mal nacheinander nen Abbruch. Ich brech gleich... :(

edit3:
Immer nach ein paar Sekunden geht nix mehr. Die Backports scheinen also nach wie vor ungeeignet zu sein...

lastedit:
Musste die Backports wieder runterschmeißen. Hier ging so gut wie nix mehr über WLAN. Nach nur wenigen Sekunden kein Seitenaufruf oder ping mehr möglich. Ohne geht das WLAN nun wieder einwandfrei, springt aber eben wieder auf 0.

Ich hab noch nen anderen Router (WRT150N mit DD-WRT) da, der als Bridge arbeitet für paar kabelgebundene Geräte. Glaub den werd ich mal testen. EIne Fritzbox 7170 und nen D-Link DIR-300 (DD-WRT) hab ich auch noch, die kann ich ebenfalls noch testen. Der WRT160N (v2 - daher kein DD-WRT) nervt mich eh schon eine Weile. Werd ich erstmal sehen ob es evtl daran liegt. Ansonsten ist wohl die Intel schuld.
 
[quote='linrunner',index.php?page=Thread&postID=655285#post655285][quote='buddabrod',index.php?page=Thread&postID=655274#post655274]Das liegt nicht an Ubuntu.. Hab hier unter Arch den 2.6.30 Kernel und seit jeher hakt das ****** wlan.
[/quote]Das würde ich differenzierter betrachten :D . Der Ubuntu-2.6.28er lief bei mir mit bestimmten WLANs nicht, die dazugehörigen Backports wiederum mit anderen WLANs nicht. Mit 2.6.30/31-Mainline gingen hingegen alle. [/quote]Lucky you :P

[quote='buddabrod',index.php?page=Thread&postID=655274#post655274] Intel ist (nicht nur) in der Hinsicht einfach unfähig.
Woher nimmst Du die Gewißheit, daß es nicht am allen Treibern gemeinsamen Teil des 802.11-Stacks im Kernel liegt?
[/quote]
Der iwl3945 funktioniert hier unter Linux seit langem problemlos.
 
So, also am Router liegt es nicht. An 3 unterschiedlichen Routern (WRT160Nv2, WRT150N, DIR-300) mit jeweils unterschiedlicher Hardware kommt es zu dem Phänomen.

Hab mir jetzt entsprechende kleine Scripte gebastelt, sodass der Wert alle 10 Sekunden immer wieder gesetzt wird. Jeweils eins für if-up.d und if-down-d, sodass das nur passiert, wenn WLAN eingeschaltet wird (und nur dann), also vom LAN unabhängig, und sich beendet, wenn WLAN ausgeschaltet wird. Das eigentliche Script, dass die Aktualisierung dann alle 10 Sekunden macht wird dann entsprechend im Hintergrund gestartet und beim Ausschalten halt gekillt.
 
Sehr seltsam das. ?(

Du könntest noch eine neuere Firmware von hier versuchen: http://intellinuxwireless.org/index.php?n=Downloads
iwlwifi-5000-ucode-8.24.2.12.tgz entpacken und die iwlwifi-5000-2.ucode nach /lib/firmware kopieren (Original vorher sichern).
[quote='buddabrod',index.php?page=Thread&postID=655363#post655363]Der iwl3945 funktioniert hier unter Linux seit langem problemlos.[/quote]Tja, bei mir nicht je nach WLAN, ähnlich wie der iwlagn.
 
Hier mit kernel 2.6.31 funktioniert das Ganze nicht mehr. Keine Fehlermeldung, keine Änderung, keine Logeinträge, nichts.
 
[quote='timeey',index.php?page=Thread&postID=655191#post655191]
Schaffe auf jedenfall schon ca. 7-9W mit mittlerer Helligkeit und WLAN an (aber nur mit power_level 5). Das ist schon sehr ordentlich. Bleibt auch sehr kühl das Gerät, genau wie unter XP.[/quote]

Servus,

Du hast also die laptop-mode-tools eingeschaltet und verwendest das gepostete Skript. Sonst nichts?
Hast du Gnome-Powermanager auch noch laufen? Was hast du da eingestellt? Überschreibt er dir die LCD-Helligkeit-Einstellungen nicht?
Hast du apmd und acpid ausgeschaltet?

Viele Grüße
flanagan
 
[quote='flanagan',index.php?page=Thread&postID=656693#post656693][quote='timeey',index.php?page=Thread&postID=655191#post655191]
Schaffe auf jedenfall schon ca. 7-9W mit mittlerer Helligkeit und WLAN an (aber nur mit power_level 5). Das ist schon sehr ordentlich. Bleibt auch sehr kühl das Gerät, genau wie unter XP.[/quote]

Servus,

Du hast also die laptop-mode-tools eingeschaltet und verwendest das gepostete Skript. Sonst nichts?
Hast du Gnome-Powermanager auch noch laufen? Was hast du da eingestellt? Überschreibt er dir die LCD-Helligkeit-Einstellungen nicht?
Hast du apmd und acpid ausgeschaltet?

Viele Grüße
flanagan[/quote]Hey,

ja, laptop_mode_tools laufen und sind entsprechend eingestellt. Ansonsten halt das von mir gepostet rc.local und sonst alles Standard. Welches Script meinst du? Habe mir jetzt selber eins geschrieben bzw. angepasst, dass mir alle 10sekunden (oder beliebigen anderen Wert), den power_level wieder auf 5 setzt.

Gnome-Power-Manager läuft noch. apmd und acpid habe ich ebenfalls nicht angefasst.

Und ja, Display-Helligkeit funktioniert in der rc.local nicht (falls du das meintest), daher auch deaktiviert. Der Power-Manager setzt mir immer 60%. Schalte dann manuell immer eine Stufe runter (also 50%).

@buddabrod
Ist ja schon recht alt der Bug-Report. Aber dennoch keine Reaktion oder Behebung dafür? Schade eigentlich. Naja mit Script gehts ja einwandfrei, wenns auch nicht die schönste Variante ist, aber ausreichend.

Aber immerhin bin ich nicht der einzige mit dem Problem. Nur wundert es mich, dass das nicht bei jedem der Fall ist. Gerade bei linrunner ebenfalls mit x200 müsste es ja eigentlich äquivalent sein, da gleiche Config.

@linrunner
Leider keine Behebung. Mit der firmware verbindet er sogar gar nicht mehr.

@all
Gibt es eigentlich keine Möglichkeit irgendwie zu sehen, was mir den Wert zurücksetzt? Dann wäre es vermutlich ein leichtes das zu beheben. :)

Und lohnt es evtl auf eine Atheros Karte zu wechseln? Auch bzgl. Verbindungsqualität etc. Wie schlagen die sich denn im Verbrauch?
 
Wie gesagt, bei mir funktioniert das garnichtmehr. Werde wohl nen bugreport öffnen müssen.

Ich bin auch am überlegen mit ner Atheros. Es stinkt mir echt total mit den Misttreibern. Evtl. wechsel ich mein Hauptsystem einfach auf BSD, dann ist das auch egal.
 
Hi,

schlechte Nachrichten:
1. mein X200 macht mit dem aktuellen 2.6.28-er-Ubuntu-Kernel dieselben Zicken wie timeeys
2. ab dem 2.6.31er-Kernel haben die Kernel-Entwickler das power saving bei den Intel-Treibern "temporär" komplett deaktiviert weil es "zuviele Probleme verursacht": http://patchwork.kernel.org/patch/40046/ (EDITH neuer Link)

Ich habe 2. mit dem Karmic-Kernel ausprobiert, der interessanterweise unter Jaunty problemlos läuft. Folgenden Pakete werden benötigt:
http://packages.ubuntu.com/karmic/linux-image-2.6.31-10-generic
http://packages.ubuntu.com/karmic/linux-headers-2.6.31-10
http://packages.ubuntu.com/karmic/linux-headers-2.6.31-10-generic

Vorsicht! Vor dem Einspielen muß die Apparmor-Konfiguration angepaßt werden, sonst funktioniert anschließend DHCP nicht richtig:
Code:
sudo aa-complain dhclient3
sudo aa-complain dhclient-script

EDITH2: außerdem muß man beim 2.6.31er u.U. einschlafenden USB-Geräten helfen: [Linux] 2.6.30: Maus & USB autosuspend

Mein Fazit: ich werde in das Thema keine Zeit mehr investieren bevor die Kernel-Entwickler nicht eine Lösung präsentiert haben. Mein Stromverbrauch mit dem 2.6.31er ist halbwegs OK.
 
  • ok1.de
  • ok2.de
  • thinkstore24.de
  • Preiswerte-IT - Gebrauchte Lenovo Notebooks kaufen

Werbung

Zurück
Oben