Chkconfig: Difference between revisions

From ICO wiki
Jump to navigationJump to search
No edit summary
No edit summary
 
(37 intermediate revisions by the same user not shown)
Line 1: Line 1:
Hendrik Milt AK41 2013
= Sissejuhatus =
= 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 [https://wiki.itcollege.ee/index.php/Init#Runlevelid runlevelite] kaustad) kataloogide hierarhiat ja hallata nendes kataloogides olevaid nimelinke(Symbolic Link).
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 [https://wiki.itcollege.ee/index.php/Init#Runlevelid 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 tööriista chkconfig versiooniga 11.0-79.1-2
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.
Oluline on teada, et erinevate toimingute teostamiseks(nt teenuste väljalülitamine) on vaja olla juurkasutaja õigustes(kasutades ''sudo'' korraldust)[https://access.redhat.com/site/documentation/en-US/Red_Hat_Enterprise_Linux/6/html/Deployment_Guide/s2-services-chkconfig.html].




Line 14: Line 11:
= Paigaldamine =
= Paigaldamine =


Alates Ubuntu versioonist 12.04 ja edasi on vaja tööriist käsitsi paigaldada.
Alates Ubuntu versioonist 12.10 ja edasi on vaja tööriist käsitsi paigaldada[https://launchpad.net/ubuntu/+source/chkconfig/+publishinghistory].


<pre>apt-get install chkconfig</pre>
<pre>apt-get install chkconfig</pre>
Line 24: Line 21:
Chkconfig töötab peamiselt 6 erinevas režiimis, mis võimaldavad teha erinevaid toiminguid, kontrollida teenuste oleku hetkeseisu või neid muuta.
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''' - sellisel juhul kuvatakse kõikide teenuste nimed ja iga nime järel hetkel kehtiva runleveli sätted
* '''Terse List mode''' - kuvatakse kõikide teenuste nimed ja iga nime järel hetkel aktiivse runleveli sätted


* '''Set mode''' – siin määratakse ära, millisel runlevelil teenus käivitatakse. Parameetriteks on teenuse nimi ja selle väärtus
* '''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
* '''Edit mode''' – siin kirjutatakse kõik olemas olevate teenuste nimed ja parameeetrid ajutisse faili ning avatakse tekstieditor muudatuste tegemiseks


* '''Check mode ?????????''' – siin saab tsekkida mingi teenuse hetke seisu(kontrollitakse ainult jooksvast runlevelist)
* '''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
* '''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''' – siin saab teenuseid, mis käivitatakse mingil kindlal runlevelil, kas lisada või eemaldada
* '''Add ja Del mode''' – võimaldab teenuseid, mis käivitatakse mingil kindlal runlevelil, kas lisada või eemaldada




= Näited =
= Näited =


1) Kontrollime, millised on teenuste seaded kasutusel oleval runlevelil
1) Chkconfig'i süntaks
<pre>chkconfig --help</pre>
 
 
2) Kontrollime, millised on teenuste olekud kasutusel oleval runlevelil
<pre>chkconfig -t</pre>
<pre>chkconfig -t</pre>
[[File:chkconfig_t.PNG]]
[[File:chkconfig_t.PNG]]




2) Kontrollime, millised on teenuste sätted kõikidel runlevelitel
3) Kontrollime, millised on teenuste sätted kõikidel runlevelitel
<pre>chkconfig -l</pre>
<pre>chkconfig -l</pre>
[[File:chkconfig_l.PNG]]
[[File:chkconfig_l.PNG]]




3) Lülitame välja teenuse bluetooth, eeldusel et pakett bluetooth on paigaldatud
4) Lülitame välja teenuse bluetooth, eeldusel et pakett bluetooth on paigaldatud
<pre>chkconfig bluetooth off</pre>
<pre>chkconfig bluetooth off</pre>


4) Lülitame uuesti sisse teenuse bluetooth
 
5) Lülitame uuesti sisse bluetooth'i teenuse  
<pre>chkconfig bluetooth on</pre>
<pre>chkconfig bluetooth on</pre>


Selle peale saame aga veateate: /sbin/insserv: No such file or directory
Selle peale saame suure tõenäosusega aga veateate: ''/sbin/insserv: No such file or directory''


[[File:chkconfig_on_error.PNG]]
[[File:chkconfig_on_error.PNG]]


Kuna tegemist on bug'iga, mis on omane just sellel versioonidele Ubuntu Server 12.04 ja 12.04.3, siis tuleb ise tekitada nimelink:
Kuna tegemist on ''bug''<nowiki>'</nowiki>iga, mis on omane just versioonidele Ubuntu Server 12.04 ja 12.04.3, siis tuleb ise tekitada nimelink:
<pre>ln -s /usr/lib/insserv/insserv /sbin/insserv</pre>
<pre>ln -s /usr/lib/insserv/insserv /sbin/insserv</pre>




Proovime uuesti sisselülitada teenust bluetooth, näiteks 2. runlevelil(vaikeseadena on aktiivne 2. runlevel)
Proovime uuesti sisselülitada bluetooth'i teenuse, näiteks 2. runlevelil(vaikeseadena on opsüsteemis kasutusel 2. runlevel [http://books.google.ee/books?id=67XOXWOxG5sC&pg=PA174&lpg=PA174&dq=ubuntu+server+default+runlevel&source=bl&ots=rIDatmQ68H&sig=5VD8bKbssglMsYr2NpK6mp_c0j8&hl=en&sa=X&ei=knzFUtmxIqfk4wTZ6oCACg&ved=0CFEQ6AEwBQ#v=onepage&q=ubuntu%20server%20default%20runlevel&f=false])
<pre>chkconfig --level 2 bluetooth on</pre>
<pre>chkconfig --level 2 bluetooth on</pre>
ning kontrollime, et teenus oleks sisselülitatud
ning kontrollime, et teenus oleks 2. runlevelil sisselülitatud
<pre>chkconfig -l | grep bluetooth</pre>
<pre>chkconfig -l | grep bluetooth</pre>
[[File:chkconfig_on_ok.PNG]]
[[File:chkconfig_on_ok.PNG]]




5) Teenuse lisamine alglaadimise nimekirja
6) Teenuse lisamine alglaadimise nimekirja
Lisada saab ainult paigaldatud teenuseid, vastasel juhul tuleb esmalt teenus installeerida ja seejärel kasutada chkconfig -a käsku
 
Lisada saab ainult paigaldatud teenuseid, vastasel juhul tuleb esmalt teenus installeerida ja seejärel kasutada chkconfig -a käsku [http://www.thegeekstuff.com/2011/06/chkconfig-examples/]
<pre>chkconfig -a bluetooth</pre>
<pre>chkconfig -a bluetooth</pre>




6)Teenuse eemaldamine alglaadimise nimekirjast
7) Teenuse eemaldamine alglaadimise nimekirjast
<pre>chkconfig -d bluetooth</pre>
<pre>chkconfig -d bluetooth</pre>
8) Kontrollime, milline on bluetooth'i teenuse olek 6.-ndas runlevelis
<pre>chkconfig --level 6 bluetooth</pre>
[[File:chkconfig_c.PNG]]
= 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''.
<br>
* 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 [http://www.debuntu.org/how-to-managing-services-with-update-rc-d/].
* sysv-rc-conf - suuresti sarnane chkconfig-iga, kuid teenuste haldamine(sisse/välja lülitamine) on teostatud tekstipõhise graafilise kasutajaliidesega[http://www.dedoimedo.com/computers/linux-system-utilities.html].
= 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://linuxcommand.org/man_pages/chkconfig8.html]<br>
[http://www.thegeekstuff.com/2011/06/chkconfig-examples/ http://www.thegeekstuff.com/2011/06/chkconfig-examples/]<br>
[https://access.redhat.com/site/documentation/en-US/Red_Hat_Enterprise_Linux/6/html/Deployment_Guide/s2-services-chkconfig.html https://access.redhat.com/site/documentation/en-US/Red_Hat_Enterprise_Linux/6/html/Deployment_Guide/s2-services-chkconfig.html]<br>
[http://askubuntu.com/questions/221293/why-is-chkconfig-no-longer-available-in-ubuntu http://askubuntu.com/questions/221293/why-is-chkconfig-no-longer-available-in-ubuntu]<br>
[http://manpages.ubuntu.com/manpages/natty/man8/chkconfig.8.html http://manpages.ubuntu.com/manpages/natty/man8/chkconfig.8.html]<br>
[http://www.uni.edu/~prefect/devel/chkconfig/index.shtml http://www.uni.edu/~prefect/devel/chkconfig/index.shtml]<br>
[https://launchpad.net/ubuntu/+source/chkconfig/+publishinghistory https://launchpad.net/ubuntu/+source/chkconfig/+publishinghistory]<br>
[http://books.google.ee/books?id=67XOXWOxG5sC&pg=PA174&lpg=PA174&dq=ubuntu+server+default+runlevel&source=bl&ots=rIDatmQ68H&sig=5VD8bKbssglMsYr2NpK6mp_c0j8&hl=en&sa=X&ei=knzFUtmxIqfk4wTZ6oCACg&ved=0CFEQ6AEwBQ#v=onepage&q=ubuntu%20server%20default%20runlevel&f=false eRaamat: Beginning Ubuntu LTS Server Administration: From Novice to Professional]<br>
Autor: Hendrik Milt AK41 2013

Latest revision as of 21:47, 2 January 2014

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