Štednja energije

Izvor: Ubuntu-hr
Skoči na: orijentacija, traži

Često se Linux sustavima zamjera lošija štednja energije od one koju pružaju drugi sustavi. Ovaj članak će vam pomoći da postignete maksimalne rezultate koje vaš hardver dopušta.

Procesor

Ukoliko nemate velikih multitasking zahtjeva za procesor, a imate dual-core procesor, naredba:

echo 1 > /sys/devices/system/cpu/sched_mc_power_savings

će značajno smanjiti potrošnju energije. Bitno je napomenuti da će zbog toga trpiti performanse računala, ali to će biti gotovo neprimjetno.

Diskovi i datotečni sustavi

Linux bilježi vrijeme pristupanja svakoj datoteci koju imate na disku - to vrijeme se zove 'atime'. Iako se radi o vrlo zgodnom detalju sustava (možete vidjeti kojim se datotekama ne pristupa neko duže vrijeme), riječ je o prilično napornoj funkciji za vaš disk. Svaki puta kada se promjeni atime, datotečni sustav morati će zapisati nešto na disk, iako datoteka nije promijenjena.

Kako biste tome došli na kraj, trebali biste koristiti relatime opciju za svoj datotečni sustav:

mount / -o remount,relatime

relatime će omogučiti senzibilnije rješenje za atime - ako ga baš želite koristiti. Ukoliko ga želite u potpunosti isključiti, što može dovesti do nepravilnog rada nekih programa (npr. mutt), onda koristite noatime opciju:

mount / -o remount,noatime

Međuzapisnik datotečnog sustava se prazni svakih 5 sekundi. To znači da, ako ne čitate ili pišete po disku, sustav sam pristupa disku svakih 5 sekundi - kako bi ispraznio cache u kojem se možda nalazi nešto logova. Što je manja vrijednost (a 5 sekundi je dosta malo), to će se manje podataka izgubiti pri rušenju sustava/kernela. Kako je Ubuntu ultrastabilan, ovu vrijednost možemo povećati na 15 sekundi:

echo 1500 > /proc/sys/vm/dirty_writeback_centisecs

Dodatno možete još omogućiti laptopski način rada (laptop-mode). Ukoliko to prouzroči probleme na vašem računalu, isključite ga. Laptop-mode možete omogućiti tako da u datoteci /etc/default/acpi-support omogućite laptop-mode:

ENABLE_LAPTOP_MODE=true

Kako biste spriječili syslog da konstatno zapisuje podatke na disk, tj. da ga uvjerite da uredno piše u međuspremnik, a onda se kasnije, kao i sve ostalo, prazni svakih 15 sekundi na disk, morate napraviti neke preinake. U datoteci /etc/syslog.conf morate dodati '-' ispred svake datoteke zapisa. Tako, npr.:

mail.err                        /var/log/mail.err

pretvorite u:

mail.err                        -/var/log/mail.err

Nakon ovih promjena, morate resetirati syslog:

/etc/init.d/sysklogd restart

Linux već veoma dugo koristi usluge programa (s)locate i updatedb za indeksiranje datoteka. Pa tako, primjerice, naredbom 'locate firefox' možete odmah otkriti gdje se sve nalazi firefoxova datoteka odnosno direktorij. Ovo je vrlo koristan dodatak sustavu, ali za izradu baza potrebno je izvršiti indeksiranje koje je vrlo intenzivno po pitanju procesora i diska, a time i baterije. Idealno bi bilo da se indeksiranje ne vrši dok je računalo na bateriji, ali dok se to tako ne riješi, možete se riješiti indeksiranja i ove vrlo korisne opcije:

rm /etc/cron.d/find.notslocate /etc/cron.d/slocate

Mrežni uređaji

Bežični uređaji

Bežični uređaji troše velike količine energije i najbolje ih je u potpunosti isključiti ako ih ne koristite. Za Bluetooth to radite ovako:

hciconfig hci0 down
rmmod hci_usb

Za bežičnu mrežu biste trebali imati hardverski prekidač na tipkovnici laptopa ili na samome kučištu. Ukoliko nemate, naredba:

for i in `find /sys -name "rf_kill" ; do echo 1 > $i ; done

trebala bi isključiti sve bežične uređaje koji koriste softverske prekidače. Naravno, ako vam zatreba wiki, ova će ga naredba omogućiti:

for i in `find /sys -name "rf_kill" ; do echo 0 > $i ; done

Sretnici koji posjeduju Intelove bežične kartice, dodatno mogu sačuvati energiju naredbom:

iwpriv eth1 set_power 5

Treba napomenuti da će ova naredba povećati latenciju. Igrajte se za vrijednostima između 1 i 5 dok ne nađete optimum. 6 će isključiti čuvanje energije dok je 5 maksimalno čuvanje energije.

Ukoliko ne želite isključiti bežični uređaj, ali ne želite ni da se automatski spaja na sve bežične mreže u susjedstvu (što je uobičajeno - hardverski, neovisno o operativnom sustavu) morate drugačije učitati modul za svoju Intel karticu:

rmmod ipw2200
modprobe ipw2200 associate=0

Isti bi parametar trebao raditi i za ipw2100 i ipw3945.

Ethernet

Isključite wake-up-on-lan (WOL):

ethtool -s eth0 wol d

Zvuk

Posjedujete li stariju zvučnu karticu AC97 (čak se još uvijek može naći na nekim novim računalima), možete i nju malo utišati po pitanju potrošnje energije:

echo 1 > /sys/module/snd_ac97_codec/parameters/power_save
echo 1 > /dev/dsp

Vlasnici novijeg čipseta, Intel HDA, za sličnu će mogućnost morati pričekati Ubuntu 8.04.

Ostalo

U BIOS-u svakako uključite HPET, ukoliko je to moguće.

Čuvanje promjena

Želite li sačuvati ove promjene, u /etc/rc.local, ispred exit 0, dodajte:

echo 1 > /sys/devices/system/cpu/sched_mc_power_savings # cuvaj procesor
for i in `find /sys -name "rf_kill" ; do echo 1 > $i ; done # iskljuci sav wireless
iwpriv eth1 set_power 5 # stedi na wirelessu
ethtool -s eth0 wol d
echo 1 > /sys/module/snd_ac97_codec/parameters/power_save
echo 1 > /dev/dsp

Datoteku /etc/fstab bi trebalo promijeniti, tako da:

UUID=XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX ext3 defaults,errors=remount-ro 0 0

dobije ovaj oblik:

UUID=XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX ext3 defaults,noatime,errors=remount-ro 0 0

Želite li koristiti relatime, umjesto noatime upišite - relatime.

U datoteci /etc/sysctl.conf dodajte sljedeću liniju:

vm.dirty_writeback_centisecs=1500

I konačno, napravite datoteku /etc/modprobe.d/stedljivi_wireless, sadržaja:

options ipw2200 associate=0


Linkovi

http://www.lesswatts.org/