|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Mar 2005
Città: Ravenna
Messaggi: 1937
|
Parere:wifi, risparmio energia e script bash in cron
Ordunque.......Ubuntu (non so altre distro ma non credo) non commuta automaticamente la modalità della mia scheda intel wifi n da 6 (ac) a 7 (battery) ne in un verso ne nell'altro.
La mia idea: un semplice script bash da mettere in cron a 60 secondi (o anche 30), che fa un cat di sys/power/nonricordocosamapoiciguardo, e se è online (ac) setta la scheda in modalità ac, altrimenti in modalità battery. Secondo voi che ne sapete più di me ha senso o è una cavolata? Quanto potrebbe risultare oneroso sto cronjob (lo scriptino sarebbe alla fine un cat e un if).
__________________
Dell Inspiron 1720 Ice White Windows 7 Pro/Archlinux x86_64 - 3.0.x -Gnome3 Msi Wind U100 Windows Xp/Ubuntu 11.04 - Gnome3 |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Mar 2005
Città: Ravenna
Messaggi: 1937
|
Ok, ho fatto lo script, che ovviamente non funziona, e non capisco perchè.
Lo posto Codice:
#!/bin/bash POWER="6" BATT="7" STATUS='sudo cat /sys/class/power_supply/AC/online' ONLINE="1" if [[ $STATUS==$ONLINE ]] then echo $power > /sys/bus/pci/drivers/iwl4965/0000\:0c\:00.0/power_level echo "metti 6?" else echo $batt > /sys/bus/pci/drivers/iwl4965/0000\:0c\:00.0/power_level echo "o 7" fi
__________________
Dell Inspiron 1720 Ice White Windows 7 Pro/Archlinux x86_64 - 3.0.x -Gnome3 Msi Wind U100 Windows Xp/Ubuntu 11.04 - Gnome3 |
|
|
|
|
|
#3 |
|
Senior Member
Iscritto dal: Feb 2004
Città: Torino
Messaggi: 3236
|
Dovresti mettere il cat tra apici inversi, così:
Codice:
STATUS=`cat /sys/class/power_supply/AC/online` |
|
|
|
|
|
#4 |
|
Senior Member
Iscritto dal: Mar 2005
Città: Ravenna
Messaggi: 1937
|
Risolto, erano delle cavolate.
Codice:
#!/bin/bash # Il driver può essere anche iwl3945 per le schede intel 3945 DRIVER="iwl4965" # La modalità 6 corrisponde al funzionamento con alimentazione da rete POWER="6" # La modalità 7 corrisponde al funzionamento con alimentazione a batteria BATT="7" # Verifica se l'alimentatore è collegato o meno STATUS=`cat /sys/class/power_supply/AC/online` # Valore per il confronto ONLINE="1" # Controlla se il file power_level esiste per evitare errori nel log dopo, ad esempio, un risveglio #dall'ibernazione/sospensione con la wifi spenta if [ -f /sys/bus/pci/drivers/$DRIVER/*/power_level ] then # Confronta lo stato attuale col valore di riferimento if [ "$STATUS" = "$ONLINE" ] then # Se l'alimentatore è collegato imposta la modalità corrispondente echo "$POWER" > /sys/bus/pci/drivers/$DRIVER/*/power_level else # Se l'alimentatore è scollegato imposta la modalità corrispondente echo "$BATT" > /sys/bus/pci/drivers/$DRIVER/*/power_level fi fi exit 0 lo script semplicemente verifica che esista il file /sys/bus/..bla bla bla, perchè al ritorno da una sospensione o ibernazione potrebbe non esistere se il modulo è stato scaricato, e poi imposta la modalità 6 (ac) se il portatile è connesso alla corrente o 7 (battery) se è a batteria :P Tra l'altro funziona sia sulle iwl4965 che sulle iwl3945, ovviamente cambiando opportunamente il nome della shceda, e credo che al posto di quel coso con gli zeri si possa mettere un bell "*" che tanto è uguale.
__________________
Dell Inspiron 1720 Ice White Windows 7 Pro/Archlinux x86_64 - 3.0.x -Gnome3 Msi Wind U100 Windows Xp/Ubuntu 11.04 - Gnome3 Ultima modifica di Cobra78 : 17-08-2008 alle 19:48. |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 20:36.



















