Acpid

From EIK wiki

Sissejuhatus

Acpid = Põhjaliku Konfiguratsiooni ja võimsuse sündmuste kasutajaliidese deemon.

Acpid funktsioon on välja mõeldud erinevate kasutajapoolsete toimingute vaatlemiseks, läbi programmi monitoorimise võimaluse. Programmi on võimalik seadistada nii, et kui arvuti peaks end üles laadima siis on võimalik juba programmil hakkata monitoorima üldist tegevust. Acpid on väga kasulik programm just sellepärast, et ta ka suudab näidata infot ja salvestada kellajaliselt kui nt eemaldati või lisati arvuti külge kõrvaklapid või millal läks arvuti puhkereziimi.

Paigaldamine

On mitmeid meetodeid tema tööle saamiseks kas olles juba operatsiooni süsteemis või alles sinna bootides. NB! Tuleks enne paigaldamist logida sisse root õigustes

 aptitude install acpid

Bootimisel:

Kui kasutad systemd siis käivita "systemctl enable acpid"; Kui kasutad initscript meetodit siis muuda /etc/rc.conf olles root õigustes lisades "acpid" Deemonite massiive (Deamon Array)

Mis on acpid?

Acpid käsk on just kujundatud välja teadustamaks kasutaja enda kettaruumil tegutsevate programmide jälgimist läbi ACPI süsteemsete vaadete. On soovitatav paigaldada ta töötama koheselt kui parasjagu arvuti laeb end tööle ja jookseb tagataustal protsessina vaikimisi. Sündmused avatakse spetsiaalselt (/proc/acpi/event) failis vaikimisining seda on võimalus lugeda vajaliku informatsiooni. Kui rida tekitatud sündmuse poolt siis acpid uurib oma nimekirjast vastavaid eeskirju ja kehtestab need, mis kooskõlastuvad sündmusega. Acpid ignoreerib kõik sissetulevad ACPI sündmused kui lukk fail on olemas nt (/var/lock/acpid) vaikimisi.

Reeglid on määratletud lihtsates konfiguratsiooni failides. ACPID vaatab konfiguratsiooni kausta (/etc/acpi/events) vaikimisi ning sõelub kõik tavalised failid, mis ei alga perioodil ('.') või ei lõppe märgiga "tilde" (~). Iga fail peab määratlema kahte asja: sündmus ja tegevus. Tühje ridu või read, kus esimene märk on räsi ('#') on ignoreeritud. Kõrvalised read on tähistatud kui hoiatusi, kuid ei ole hukatuslikud. Iga rida omab kolme märki: võti, sõnasõnaline võrdusmärk, ja väärtus. võti võib olla kuni 63 tähemärki, ja väiketähed (aga loevad ka tühikud!). Väärtus võib olla kuni 511 märki ja on reageerib tähtedele ja tähikutele.


Lähteväärtuseks on käsurida, mis tugineb via /bin/sh, valdavalt kui iga sündmuse sobitamine normaal tingimustel toimub. Käsurida võib sisaldada shelli erimärke ja nad jäävad alles. Ainult erisümboleid lähteväärtusega "%" läbivad selle. String "% e" on asendatakse sõnasõnalise teksti korral kui ta tugineb antud tegevusele. See string võib sisaldada tühikuid, järelikult käsurida peab hoolitsema tsiteerides "% e", kui ta tahab tugineda ainult ühele märgile/sümbolile. String "%%", asendatakse sõnasõnaliselt "%". Kõik teised "%" väljumised on reserveeritud, ja preegleid ei rakendata.

See funktsioon võimaldab mitut kindlaksmääratud eeskirjadele vastavat sama sündmust (kui järjestust ei garanteerita) samuti üks reegel, mis määratakse mitmetele sündmustele. Et sundida acpid reload reegel konfiguratsiooni, saa talle käsk "SIGHUP"

Lisaks faili reeglitele, aksepteerib acpid ühendusi UNIX domeeni ühilduvuspaigas /var/run/acpid.socket) vaikimisi. Iga aplikatsiooni võib samuti ühendada sinna. Kui oled juba ühe korra ühendanud siis acpid saadab teksti kõigi ACPI sündmustest kliendile. Kliendil oleks parem filtreerida saadud sõnum parema ülevaate saamiseks. Acpid ei sulge kliendi tuuma va juhul kui SIGHUP või acpid väljumisel. Acpid logib kõik oma tegevuse, samuti stdout ja stderr mistahes sündmustest, mis on järjendatud syslogi faili. Kõiki vaikimisi olevaid faile ja kaustu saab muuta läbi käsurea võtmete

NB! Töötab ainult alates 2003 aastast välja realiseeritud linuxi kernelite distributsioonidel.

Loc module acpid.png

pildi allikas: http://dev.gentoo.org/~darkside/stats/statcvs-sys-apps/dir_acpid.html

Acpid lisavõimalused

Võtmed:

-c, --confdir directory

See võti muudab kausta kus acpid otsib/vaatab reegeleid. Vaikimisi on see /etc/acpi/events.

-C, --clientmax number

See valik muudab maksimaalse arv mitte-root tuum ühendusi, mida saab teha acpid tuum. Vaikimisi on selle väärtus 256.

-d, --debug 

See võti suurendab acpid veaotsingu taste 1 võrra. Kui veaotsingu ease on 0, acpid jätkab toiminguid esiplaanil ning logides stderr-i, lisades selle ka syslogi.

-e, --eventfile filename 

See valik muudab sündmuste faiil jus acpid loeb kõiki sündmusi. Vaikimisi on see koht /proc/acpi/event.

-f, --foreground

See võimalus hoiab acpid esiplaanil, ei tööta käivitamisel.

-l, --logevents 

See käsk ütleb, et acpid teeks kõikide toimvuate sündmsute kohta logi

 -L, --lockfile filename 

See käsk muudab lukustatud faili peatamaks sündmuste protsessi. Vaikimisi on see kohas /var/lock/acpid.

-g, --socketgroup groupname 

See valik muudab grupi omaniku UNIX domeeni tuumas kus acpid toimetab sündmustega.

-m, --socketmode mode 

This option changes the permissions of the UNIX domain socket to which acpid publishes events. Default is 0666.

-s, --socketfile filename 

See valik muudab nike UNIX domeeni tuumas kus acpid avab. Vaikimisi on selleks kohaks/var/run/acpid.socket.

-S, --nosocket filename 

See käsk ütleb acpid program mile mitte avada UNIX domeeni tuuma. See tühistab -s käsu ja negatiseerib teisi tuuma käske.

-p, --pidfile filename 

See käsk ütleb acid-le, et tuleb kasutada määratud faili kui "pidfile" formaadina. Kui see fail on olemas, siis eemaldatakse ja kirjutatakse see üle. Vaikimisi asub /var/run/acpid.pid.

-v, --version 

Väljastab versiooni ning väljub.

-h, --help 

Näitab abiraamatut ja väljub.

Näited

Lihtsam skrpit:

Sulgeb süsteemi kui vajutada "power" ehk sisselülitamis nuppu:


/etc/acpi/events/power

event=button/power.*

action=/usr/local/sbin/power.sh "%e"


Kui skript power.sh käivitatakse siis terve juhtumi string seatakse $1 parameetriks.

Kasutatud kirjandus

http://linux.die.net/man/8/acpid

https://wiki.archlinux.org/index.php/Acpid

http://dev.gentoo.org/~darkside/stats/statcvs-sys-apps/dir_acpid.html

Autor

Kristjan Karu A31 2012