Chkconfig
Sissejuhatus
Chkconfig on käsurea utiliit, mis on kasutusel erinavates Unix’i ja Linux’i operatsioonisüsteemides. See vahend võimaldab lisada, kustutada, sisse ja välja lülitada erinevaid süsteemi teenuseid. Lisaks on üheks peamiseks ülesandeks säilitada /etc/rc[0-6].d(nendes kataloogides asuvad erinevate runlevelite kaustad) kataloogide hierarhiat ja hallata nendes kataloogides olevaid nimelinke(Symbolic Link).
Antud juhend on koostatud kasutades opsüsteemina Ubunut Server versiooni 12.04.3 LTS ning utiliiti chkconfig versiooniga 11.0-79.1-2
Oluline on teada, et erinevate toimingute teostamiseks(nt teenuste väljalülitamine) on vaja olla juurkasutaja õigustes(kasutades sudo korraldust)[1].
Paigaldamine
Alates Ubuntu versioonist 12.10 ja edasi on vaja tööriist käsitsi paigaldada[2].
apt-get install chkconfig
Peamiste töörežiimide kirjeldused
Chkconfig töötab peamiselt 6 erinevas režiimis, mis võimaldavad teha erinevaid toiminguid, kontrollida teenuste oleku hetkeseisu või neid muuta.
- Terse List mode - kuvatakse kõikide teenuste nimed ja iga nime järel hetkel aktiivse runleveli sätted
- Set mode – võimaldab määrata, millisel runlevelil teenus käivitatakse. Parameetriteks on teenuse nimi ja selle väärtus
- Edit mode – siin kirjutatakse kõik olemas olevate teenuste nimed ja parameeetrid ajutisse faili ning avatakse tekstieditor muudatuste tegemiseks
- Check mode – võimaldab kontrollida teenuse hetke seisu runlevelite kaupa
- List mode – siin kuvatakse kõikide teenuste kõikide runlevelite(0-st 6-ni, osadel juhtudel 7. kohal S) väärtused
- Add ja Del mode – võimaldab teenuseid, mis käivitatakse mingil kindlal runlevelil, kas lisada või eemaldada
Näited
1) Chkconfig'i süntaks
chkconfig --help
2) Kontrollime, millised on teenuste olekud kasutusel oleval runlevelil
chkconfig -t
3) Kontrollime, millised on teenuste sätted kõikidel runlevelitel
chkconfig -l
4) Lülitame välja teenuse bluetooth, eeldusel et pakett bluetooth on paigaldatud
chkconfig bluetooth off
5) Lülitame uuesti sisse bluetooth'i teenuse
chkconfig bluetooth on
Selle peale saame suure tõenäosusega aga veateate: /sbin/insserv: No such file or directory
Kuna tegemist on bug'iga, mis on omane just versioonidele Ubuntu Server 12.04 ja 12.04.3, siis tuleb ise tekitada nimelink:
ln -s /usr/lib/insserv/insserv /sbin/insserv
Proovime uuesti sisselülitada bluetooth'i teenuse, näiteks 2. runlevelil(vaikeseadena on opsüsteemis kasutusel 2. runlevel [3])
chkconfig --level 2 bluetooth on
ning kontrollime, et teenus oleks 2. runlevelil sisselülitatud
chkconfig -l | grep bluetooth
6) Teenuse lisamine alglaadimise nimekirja
Lisada saab ainult paigaldatud teenuseid, vastasel juhul tuleb esmalt teenus installeerida ja seejärel kasutada chkconfig -a käsku [4]
chkconfig -a bluetooth
7) Teenuse eemaldamine alglaadimise nimekirjast
chkconfig -d bluetooth
8) Kontrollime, milline on bluetooth'i teenuse olek 6.-ndas runlevelis
chkconfig --level 6 bluetooth
Teised sarnased programmid
Lisaks chkconfig-ile on olemas veel samalaadseid programme, mis teostavad samu ülesandeid. Näitena võiks tuua update-rc.d ja sysv-rc-conf.
- update-rc.d - suurimaks erinevuseks chkconfig-ist võib pidada asjaolu, et see programm võimaldab määrata ka prioriteete teenustele käivitamisel ja sulgemisel. Madalama prioriteedinumbriga teenus käivitatakse varem ja kõrgema prioriteediga teenus suletakse varem [5].
- sysv-rc-conf - suuresti sarnane chkconfig-iga, kuid teenuste haldamine(sisse/välja lülitamine) on teostatud tekstipõhise graafilise kasutajaliidesega[6].
Kokkuvõte
Kuna teenuste haldamine on süsteemiadministraatori üheks tööülesandeks, siis oleks oluline, et selle töö jaoks oleks olemas ka õiged tööriistad, mis võimaldavad teha tööd vähema ajakuluga ja mugavamalt. Üheks selliseks tööriistaks võib kindlasti ka pidada utiliit-i chkconfig.
Kasutatud kirjandus/lingid
http://linuxcommand.org/man_pages/chkconfig8.html
http://www.thegeekstuff.com/2011/06/chkconfig-examples/
https://access.redhat.com/site/documentation/en-US/Red_Hat_Enterprise_Linux/6/html/Deployment_Guide/s2-services-chkconfig.html
http://askubuntu.com/questions/221293/why-is-chkconfig-no-longer-available-in-ubuntu
http://manpages.ubuntu.com/manpages/natty/man8/chkconfig.8.html
http://www.uni.edu/~prefect/devel/chkconfig/index.shtml
https://launchpad.net/ubuntu/+source/chkconfig/+publishinghistory
eRaamat: Beginning Ubuntu LTS Server Administration: From Novice to Professional
Autor: Hendrik Milt AK41 2013