A powersave csomagA powersave csomag

A powersave csomag felelős az összes eddig említett energiatakarékossági funkcióért. Mivel az alacsonyabb energiafogyasztás egyre komolyabb igény általában is, egyes funkciói, mint a felfüggesztés, a készenlét, vagy a CPU-frekvenciaszabályozás fontosak lehetnek munkaállomásokon és kiszolgálókon is.

A csomag a számítógép energiagazdálkodásával kapcsolatos minden funkciót ellát. Támogatja az ACPI, APM, PowerNow! és SpeedStep technológiákat, valamint a merevlemezeket. Az apmd, acpid, ospmd és cpufreqd (most cpuspeed) csomagok funkciói egyesítve lettek a powersave csomagban. Az e csomagok démonjait (kivéve az ACPI-események multiplexereként működő acpid-t) nem szabad a powersave démonnal együtt futtatni.

Még ha a rendszer nem is tartalmazza a fent felsorolt összes hardverelemet, akkor is használja a powersave démont az energiagazdálkodási funkciók szabályozására. Mivel az ACPI és az APM kölcsönösen kizárják egymást, a számítógépen egyszerre csak az egyik használható. A démon automatikusan felismeri a hardverkonfiguráció változásait.

A powersave csomag beállításaiA powersave csomag beállításai

A powersave beállítása több fájlra szét van osztva. Az itt felsorolt beállítási lehetőségek mindegyikéhez további dokumentáció tartozik a funkcionalitásával kapcsolatban.

/etc/sysconfig/powersave/common

Ez a fájl tartalmazza a powersave démon általános beállításait. Például a hibakeresési üzenetek mennyisége (a /var/log/messages rendszernaplóban) a DEBUG változó értékének módosításával növelhető.

/etc/sysconfig/powersave/events

A powersave démon ezt a fájlt használja a rendszeresemények feldolgozásához. Az esemény tartozhat külső műveletekhez, vagy lehetnek maga a démon által elvégzett műveletek. Külső műveletek esetén a démon megkísérel futtatni egy végrehajtható fájlt (jellemzően egy bash-parancsfájlt) az /usr/lib/powersave/scripts/ könyvtárból. Az előre definiált belső műveletek:

  • ignore

  • throttle

  • dethrottle

  • suspend_to_disk

  • suspend_to_ram

  • standby

  • do_suspend_to_disk

  • do_suspend_to_ram

  • do_standby

  • notify

  • screen_saver

  • reread_cpu_capabilities

A throttle lelassítja a processzort a MAX_THROTTLING változóban megadott értékkel. Ez az érték az aktuális séma függvénye. A dethrottle parancs visszaállítja a processzort maximális teljesítményre. A suspend_to_disk, suspend_to_ram és standby módok a különféle alvási módokat kapcsolják be. Ez a három művelet felelős az alvó állapot mód bekapcsolásáért, de mindig meghatározott rendszereseményekhez kell őket rendelni.

Az /usr/lib/powersave/scripts könyvtár tartalmazza az események feldolgozására szolgáló parancsfájlokat:

switch_vt

Akkor hasznos, ha a képernyő el van csúszva egy felfüggesztés vagy egy készenlét után.

wm_logout

Elmenti a beállításokat és kijelentkezik a GNOME, KDE vagy egyéb ablakkezelőből.

wm_shutdown

Elmenti a GNOME- vagy KDE-beállításokat és leállítja a rendszert.

set_disk_settings

Végrehajtja az /etc/sysconfig/powersave/disk fájlban megadott lemezbeállításokat.

Ha például az EVENT_GLOBAL_SUSPEND2DISK="prepare_suspend_to_disk do_suspend_to_disk" változó be van állítva, akkor két parancsfájl vagy művelet kerül feldolgozásra a megadott sorrendben azonnal, ahogy a felhasználó kiadja a powersaved számára a suspend to disk alvó üzemmód parancsot. A démon lefuttatja a külső /usr/lib/powersave/scripts/prepare_suspend_to_disk parancsfájlt. A parancsfájl sikeres feldolgozása után a démon lefuttatja a do_suspend_to_disk belső műveletet és alvó üzemmódba állítja a számítógépet, miután a parancsfájl leállította a kritikus modulokat és szolgáltatásokat.

A sleep (alvás, készenlét) gomb művelete módosítható (a részhez hasonlóan), például így: EVENT_BUTTON_SLEEP="notify suspend_to_disk". Ebben az esetben a felhasználót egy felugró ablak vagy egy X üzenet a konzolon értesíti a felfüggesztésről. Ezután létrejön a EVENT_GLOBAL_SUSPEND2DISK esemény, amelynek hatására végrehajtásra kerülnek a fent említett műveletek és a rendszer biztonságos felfüggesztése. A notify belső művelet az /etc/sysconfig/powersave/common fájlban található NOTIFY_METHOD változóval állítható be.

/etc/sysconfig/powersave/cpufreq

Ez a fájl tartalmazza a processzorok dinamikus CPU-frekvenciájának beállítási lehetőségeit, illetve hogy a felhasználóterületi, vagy a kernelimplementációt használja a rendszer.

/etc/sysconfig/powersave/battery

Akkumulátorkorlátok és más, az akkumulátorral kapcsolatos beállítások.

/etc/sysconfig/powersave/sleep

Ebben a fájlban aktiválhatók az alvó üzemmódok és határozható meg, hogy mely kritikus folyamatokat kell kikapcsolni és mely szolgáltatásokat leállítani egy felfüggesztési vagy készenléti esemény előtt. A rendszer visszaállításakor ezek a modulok visszatöltődnek és a szolgáltatások újraindulnak. Az alvó üzemmód indításának késleltetését is be lehet állítani (például hogy legyen idő elmenteni a fájlokat). Az alapértelmezett beállítások elsősorban az USB- és PCMCIA-modulokat érintik. A felfüggesztés vagy készenlét hibáját általában meghatározott modulok okozzák. A hibák azonosításáról további információ: 28.5.4. szakasz - Hibaelhárítás.

/etc/sysconfig/powersave/thermal

A hűtés és hőmérsékletszabályozás konfigurációja. A témával kapcsolatos részletek az /usr/share/doc/packages/powersave/README.thermal fájlban olvashatók.

/etc/sysconfig/powersave/disk

Ez a fájl tartalmazza a merevlemezek energiatakarékossági beállításait.

/etc/sysconfig/powersave/scheme_*

Ezek a különféle sémák, amelyek az energiafogyasztást a különböző alkalmazási környezetekhez igazítják. Vannak előre beállított sémák, amelyek módosítás nélkül használhatók. Ide menthetők el az egyedi sémák is.

Az APM és ACPI beállításaAz APM és ACPI beállítása

Felfüggesztés és készenlétFelfüggesztés és készenlét

Három alapvető ACPI és két APM alvó üzemmód létezik:

Felfüggesztés lemezre (ACPI S4, APM felfüggesztés)

A teljes memória tartalmának kiírása merevlemezre. A számítógép teljesen kikapcsol és egyáltalán nem fogyaszt áramot. Ez az alvó mód alapértelmezésben engedélyezve van és jellemzően minden rendszeren működik.

Felfüggesztés memóriába (ACPI S3, APM felfüggesztés)

Az összes eszköz állapotának elmentése a fő memóriába. Áramot csak a fő memória fogyaszt. A SUSE Linux Enterprise nem támogatja általánosan ezt az alvó módot, bár jónéhány készülék esetében használható.

Ez az alvó mód alapértelmezésben engedélyezve van, de csak akkor kerül végrehajtásra, ha az aktuális gép fel van sorolva a módot támogató rendszerek adatbázisában. Az adatbázis az /usr/sbin/s2ram bináris fájlban van (a suspend csomag része).

Az alapértelmezett paraméterek módosításához (például a memóriába felfüggesztés alvó mód teljes kikapcsolásához, vagy az adatbázisban nem szereplő gépek esetén is kikényszerítéséhez) a rendelkezésre álló paraméterekről további információt az /etc/sysconfig/powersave/sleep konfigurációs fájl tartalmaz.

Az s2ram bináris fájlról az /usr/share/doc/packages/suspend könyvtárban található README fájlban olvashat többet.

Készenlét (ACPI S1, APM készenlét)

Egyes eszközök kikapcsolása (gyártófüggő).

Győződjön meg róla, hogy a következő alapértelmezett paraméterek be vannak állítva az /etc/sysconfig/powersave/events fájlban a felfüggesztés, készenlét és visszaállás helyes feldolgozásához (az alapértelmezett értékek a SUSE Linux Enterprise telepítésének megfelelők):

EVENT_GLOBAL_SUSPEND2DISK=
    "prepare_suspend_to_disk screen_saver do_suspend_to_disk"
EVENT_GLOBAL_SUSPEND2RAM=
    "prepare_suspend_to_ram screen_saver do_suspend_to_ram"
EVENT_GLOBAL_STANDBY=
    "prepare_standby screen_saver do_standby"
EVENT_GLOBAL_RESUME_SUSPEND2DISK=
    "restore_after_suspend_to_disk"
EVENT_GLOBAL_RESUME_SUSPEND2RAM=
    "restore_after_suspend_to_ram"
EVENT_GLOBAL_RESUME_STANDBY=
    "restore_after_standby"

Egyéni akkumulátorállapotokEgyéni akkumulátorállapotok

Az /etc/sysconfig/powersave/battery fájlban három akkumulátortöltöttségi szint adható meg (százalékban), amelyek elérése bizonyos rendszerriasztásokat vagy műveleteket aktiválhat.

BATTERY_WARNING=12
BATTERY_LOW=7
BATTERY_CRITICAL=2

Azt, hogy milyen műveletek vagy parancsfájlok kerüljenek végrehajtásra, ha a töltöttségi szint a megadott korlátok alá esik, az /etc/sysconfig/powersave/events fájlban adható meg. A gombokhoz rendelt normál műveletek a 28.5.1. szakasz - A powersave csomag beállításai részben leírtaknak megfelelően módosítható.

EVENT_BATTERY_NORMAL="ignore"
EVENT_BATTERY_WARNING="notify"
EVENT_BATTERY_LOW="notify"
EVENT_BATTERY_CRITICAL="wm_shutdown"

Az energiafogyasztás igazítása a különböző feltételekhezAz energiafogyasztás igazítása a különböző feltételekhez

A rendszer viselkedése a használt tápellátás típusához igazítható. A rendszer fogyasztását célszerű csökkenteni, ha nem hálózati feszültségről üzemel, hanem akkumulátorról. Hasonlóan, a hálózatra visszacsatlakozva érdemes automatikusan megnövelni a teljesítményt. Módosítható a CPU órajelfrekvenciája, a merevlemezek energiatakarékossági funkciója, valamint egy sor egyéb paraméter.

Azt, hogy milyen műveleteket hajtson végre a gép, amikor akkumulátoros módba kapcsol, illetve újra a hálózatra csatlakozik, az /etc/sysconfig/powersave/events fájl írja le. Az /etc/sysconfig/powersave/common fájlban válassza ki a használni kívánt sémákat:

AC_SCHEME="performance"
BATTERY_SCHEME="powersave"

A sémák az /etc/sysconfig/powersave könyvtárban található fájlokban tárolódnak. A fájlnevek formátuma: scheme_sémanév. A példában két sémát említettünk: scheme_performance és scheme_powersave. A performance, powersave, presentation és acoustic sémák előre el vannak készítve. Új sémák is létrehozhatók, a meglévők pedig módosíthatók és törölhetők, illetve a YaST energiagazdálkodási moduljával a különféle energiaellátási állapotokhoz rendelhetők (lásd: 28.6. szakasz - A YaST Energiagazdálkodás modulja).

További ACPI-funkciókTovábbi ACPI-funkciók

ACPI használata esetén szabályozható, hogy a rendszer hogyan reagáljon az ACPI gombokra (be- és kikapcsolás, készenlét, fedél nyitva és fedél zárva). A műveletek végrehajtását az /etc/sysconfig/powersave/events fájlban lehet beállítani. Az egyes paraméterek magyarázatával kapcsolatban olvassa el ezt a konfigurációs fájlt.

EVENT_BUTTON_POWER="wm_shutdown"

A be-/kikapcsoló gomb megnyomásakor a rendszer a megfelelő ablakkezelő (KDE, GNOME, fvwm stb.) leállításával válaszol.

EVENT_BUTTON_SLEEP="suspend_to_disk"

A készenlét gomb megnyomására a rendszer lemezre felfüggesztést hajt végre.

EVENT_BUTTON_LID_OPEN="ignore"

Semmi sem történik, ha a fedelet felnyitják.

EVENT_BUTTON_LID_CLOSED="screen_saver"

A fedél lezárására a képernyővédő aktiválódik.

EVENT_OTHER="ignore"

Ez az esemény akkor történik, ha a démon ismeretlen eseményt észlel. Egyes gépeken az ACPI-billentyűk is ismeretlen eseményt eredményeznek.

A CPU teljesítménye tovább korlátozható, ha a CPU terhelése nem halad meg egy adott ideig egy adott korlátot. A terhelési korlát a PROCESSOR_IDLE_LIMIT, az időkorlát pedig a CPU_IDLE_TIMEOUT változóban adható meg. Ha a CPU terhelése az időkorlátban meghatározottnál hosszabb ideig a korlát alatt marad, akkor aktiválódik az EVENT_PROCESSOR_IDLE változóban meghatározott esemény. Ha a CPU újra foglalt, akkor az EVENT_PROCESSOR_BUSY esemény hajtódik végre.

HibaelhárításHibaelhárítás

Minden hibaüzenet és riasztás a /var/log/messages fájlban naplózódik. Ha nem találja a keresett információt, állítsa be a powersave üzenetek részletezését az /etc/sysconfig/powersave/common fájl DEBUG változójának módosításával. Növelje meg a változó értékét 7-re, vagy akár 15-re, majd indítsa újra a démont. A /var/log/messages naplófájlban megjelenő részletesebb üzenetek segítenek a hiba megkeresésében. Az alábbi fejezetben áttekintjük a powersave használatával kapcsolatos leggyakoribb problémákat.

Az ACPI aktiválva van, a hardver is támogatja, de a funkciók nem működnekAz ACPI aktiválva van, a hardver is támogatja, de a funkciók nem működnek

Ha problémákat észlel az ACPI-vel kapcsolatban, akkor a dmesg|grep -i acpi paranccsal keresheti ki a dmesg kimenetéből az ACPI-specifikus üzeneteket. Lehet, hogy egy BIOS-frissítés megoldja a problémát. Látogassa meg a gép gyártójának a webhelyét, keresse meg a legfrissebb BIOS-verziót és telepítse. Érdeklődjön a gyártónál, hogy az megfelel-e a legfrissebb ACPI-előírásoknak. Ha a hiba a BIOS-frissítés után is fennáll, folytassa az alábbiak szerint a BIOS helytelen DSDT-táblájának egy friss DSDT-re cseréléséhez:

  1. Töltse le a rendszerhez tartozó DSDT-t a http://acpi.sourceforge.net/dsdt/index.php címről. A fájl ne legyen tömörítve és legyen már lefordítva. Erre az .aml (ACPI machine language, ACPI gépi nyelv) fájlkiterjesztés utal. Amennyiben ez a helyzet, folytassa a 3. lépéssel.

  2. Ha a letöltött tábla kiterjesztése .asl (ACPI source language, ACPI forrásnyelv), akkor előbb le kell fordítani az iasl programmal (pmtools csomag). Ehhez be kell írnia, hogy iasl -sa file.asl. Az iasl (Intel ACPI fordító) legfrissebb változata a http://developer.intel.com/technology/iapc/acpi/downloads.htm címen érhető el.

  3. Másolja át a DSDT.aml fájlt tetszés szerinti (célszerűen például az /etc/DSDT.aml helyre. Módosítsa az /etc/sysconfig/kernel fájlt és írja át megfelelően a DSDT-fájl elérési útját. Indítsa el az mkinitrd programot (mkinitrd csomag). Ha eltávolítja a kernelt és az mkinitrd paranccsal létrehoz egy initrd fájlt, akkor a módosított DSDT lesz alkalmazva és betöltve a rendszer indulásakor.

A CPU-órajel szabályozása nem működikA CPU-órajel szabályozása nem működik

Ellenőrizze a kernelforrásban (kernel-source) hogy a processzor támogatott-e. Lehet, hogy egy speciális kernelmodul vagy modulparaméter használatára van szükség a CPU-órajelszabályozás bekapcsolásához. Ez az információ az /usr/src/linux/Documentation/cpu-freq/* fájlokban található meg. Ha egy speciális modulra vagy modulparaméterre van szükség, az az /etc/sysconfig/powersave/cpufreq fájlban állítható be, a CPUFREQD_MODULE és CPUFREQD_MODULE_OPTS változók segítségével.

Nem működik a felfüggesztés és a készenlétNem működik a felfüggesztés és a készenlét

ACPI-rendszereken lehetnek problémák a felfüggesztéssel és a készenléttel hibás DSDT-implementáció (BIOS) miatt. Ebben az esetben frissítse a BIOS-t.

ACPI- és APM-rendszereken: Amikor a rendszer megpróbálja leállítani a hibás modulokat, a rendszer megakad, vagy a felfüggesztési esemény nem kerül aktiválásra. Ugyanez történhet, ha nem állítja le a sikeres felfüggesztést megakadályozó modulokat vagy szolgáltatásokat. Mindkét esetben meg kell állapítani, hogy melyik hibás modul akadályozta meg az alvó üzemmód bekapcsolását. A powersave démon által a /var/log/suspend2ram.log és /var/log/suspend2disk.log helyen készített naplófájlok nagyon hasznosak e tekintetben. Ha a számítógép nem lép be az alvó üzemmódba, akkor a hiba a legutolsó leállított modullal kapcsolatos. Az /etc/sysconfig/powersave/sleep fájl alábbi beállításainak módosításával állítsa le a problémát okozó modulokat még a felfüggesztés vagy készenlét előtt.

UNLOAD_MODULES_BEFORE_SUSPEND2DISK=""
UNLOAD_MODULES_BEFORE_SUSPEND2RAM=""
UNLOAD_MODULES_BEFORE_STANDBY=""
SUSPEND2DISK_RESTART_SERVICES=""
SUSPEND2RAM_RESTART_SERVICES=""
STANDBY_RESTART_SERVICES="" 

Ha a felfüggesztést vagy készenlétet változó hálózati környezetben alkalmazza, felcsatolt távoli fájlrendszerekkel, mint például a Samba vagy az NIS, használja az automounter programot a felcsatolásukhoz és vegye fel a megfelelő szolgáltatásokat, például az smbfs vagy nfs szolgáltatást a fenti változóba. Ha egy alkalmazás a felfüggesztés vagy készenlét előtt hozzáfér a távolról felcsatolt fájlrendszerhez, akkor a szolgáltatás nem állítható le, illetve a fájlrendszer nem csatolható le helyesen. A rendszer visszaállítása után lehet, hogy a fájlrendszer sérült, és újra fel kell csatolni.

További információk További információk