Ero sivun ”Init-skriptit” versioiden välillä

Siirry navigaatioon Siirry hakuun
mouseemu lisätty
EgoLuser (keskustelu | muokkaukset)
Lisätty Katso Myös -osio.
 
(6 välissä olevaa versiota 5 käyttäjän tekeminä ei näytetä)
Rivi 3: Rivi 3:
System V -tyylistä initiä ([[sysvinit]]) käyttävissä järjestelmissä init-skriptit löytyvät [[Linuxin hakemistorakenne|hakemistosta]] <tt>/etc/init.d</tt> ja BSD-tyylistä initiä käyttävissä hakemistosta <tt>/etc/rc.d</tt>.
System V -tyylistä initiä ([[sysvinit]]) käyttävissä järjestelmissä init-skriptit löytyvät [[Linuxin hakemistorakenne|hakemistosta]] <tt>/etc/init.d</tt> ja BSD-tyylistä initiä käyttävissä hakemistosta <tt>/etc/rc.d</tt>.


Käynnistettävien init-skriptien hallintaan löytyy useita valikkopohjaisia käyttöliittymiä. Monilla jakeluilla on tähän omia ohjelmiansa. Esimerkiksi [[Fedora]]- ja [[Red Hat]] -pohjaisista järjestelmistä löytyy [[system-config-services]] ([[GUI|graafinen]]) ja [[ntsysv]] ([[TUI|tekstipohjainen]]). [[openSUSE]]ssa käynnistettäviä palveluita voi säätää [[YaST]]in kautta.
Käynnistettävien init-skriptien hallintaan löytyy useita valikkopohjaisia käyttöliittymiä. Monilla jakeluilla on tähän omia ohjelmiansa. Esimerkiksi [[Fedora]]- ja [[Red Hat]] -pohjaisista järjestelmistä ennen löytyi[[system-config-services]] ([[GUI|graafinen]]) ja [[ntsysv]] ([[TUI|tekstipohjainen]]). Nykyään ne käyttävät [[systemd]]tä [[sysvinit]]in sijaan. [[openSUSE]]ssa käynnistettäviä palveluita voi säätää [[YaST]]in kautta.


[[Komentorivi]]ltä init-skriptejä voi käynnistää ja sulkea lennosta siirtymällä skriptit sisältävään hakemistoon ja käyttämällä komentoja <tt>./skriptinnimi start</tt>, <tt>./skriptinnimi restart</tt> tai <tt>./skriptinnimi stop</tt>.
[[Komentorivi]]ltä init-skriptejä voi käynnistää ja sulkea lennosta siirtymällä skriptit sisältävään hakemistoon ja käyttämällä komentoja <tt>./skriptinnimi start</tt>, <tt>./skriptinnimi restart</tt> tai <tt>./skriptinnimi stop</tt>.


Sysvinitiä käyttävissä järjestelmissä eri [[ajotaso]]illa käynnistettäviä skriptejä hallitaan <tt>/etc/rc''?''.d</tt>-hakemistoissa olevilla [[symbolinen linkki|symbolisilla linkeillä]]. <tt>S</tt> linkin nimessä tarkoittaa ajotasoon siirtymisen (käynnistyksen) yhteydessä ajamista ja <tt>K</tt> ajotasosta poistumisen yhteydessä ajamista. Näiden jälkeen tuleva numero ilmaisee järjestyksen, jossa skriptit suoritetaan.
Sysvinitiä käyttävissä järjestelmissä eri [[ajotaso]]illa käynnistettäviä skriptejä hallitaan <tt>/etc/rc''?''.d</tt>-hakemistoissa olevilla [[symbolinen linkki|symbolisilla linkeillä]]. <tt>S</tt> linkin nimessä tarkoittaa ajotasoon siirtymisen (käynnistyksen) yhteydessä ajamista ja <tt>K</tt> ajotasosta poistumisen yhteydessä ajamista. Näiden jälkeen tuleva numero ilmaisee järjestyksen, jossa skriptit suoritetaan.
Jos päätät ottaa pois jonkin käynnistysskriptin tarpeettomana, kannattaa ehkä poistaa samalla koko ohjelmapaketti, kun se kerta on tarpeeton. Esimerkiksi [[Debian]]-pohjaisissa jakeluissa (kuten [[Ubuntu]]) voi tarkistaa mihin pakettiin tietty tiedosto kuuluu esim. komennolla <tt>dpkg-query -S /etc/init.d/exim4</tt>, tuloksena saadun paketin voi poistaa esimerkiksi komennolla <tt>sudo [[apt-get]] purge exim4-base</tt>, lisätietoja artikkelissa [[ohjelmien asentaminen]].
== Init-skriptien kanssa työskentely - Pikaohje ==
Oletetaan, että käytössä ei ole BSD-tyylinen init, vaan käytetään tavanomaista sysvinit asennusta.
Oletetaan myös, että käytössä ei ole sysvinitin käyttöä helpottavia työkaluja (kuten '''service''' tai esim. '''update-rc.d''').
Oletetaan myös, että haluttu sysvinit [[ajotaso]] on 3.
Sysvinit noudattaa tapaa, jonka mukaan init-skriptit nimetään tietyllä tavalla. Init-skriptit, jotka käynnistävät taustaprosessin nimetään esimerkiksi ''S42foobar''. Siinä "S" tarkoittaa käynnistä (eli "start"), "42" merkitsee järjestystä jossa ko. init-skripti suoritetaan ja lopuksi "foobar" on esimerkki taustapalvelun nimestä. Init-skriptit, jotka pysäyttävät taustapalvelun nimetään muutoin samalla tavalla, mutta ensimmäinen kirjain ei ole "S", vaan se on on "K", joka tulee englanninkielen sanasta "kill".
Alla olevassa taulukossa käytetään [[ufw|ufw:ta]] esimerkkinä.
{| class="wikitable"
|+ Sysvinitin, Systemd:n ja OpenRC:n vastaavuudet
|-
! Sysvinit komento !! Systemd komento !! OpenRC komento
|-
| /etc/init.d/ufw start || systemctl start ufw.service || rc-service ufw start
|-
| /etc/init.d/ufw stop || systemctl stop ufw.service || rc-service ufw stop
|-
| ln -siv /etc/init.d/ufw /etc/rc3.d/S42ufw <br> ln -siv /etc/init.d/ufw /etc/rc0.d/K42ufw || systemctl enable ufw.service || rc-update add ufw default
|-
| rm -iv /etc/rc3.d/S42ufw || systemctl disable ufw.service || rc-update del ufw default
|}
Huom! Viimeisessä esimerkissä olisimme voineet myös poistaa UFW:n lopettavan init-skriptin ajotasosta ''0'', mutta ennen kuin sen voi poistaa, tulee olla varma että mikään muu ajotaso ei käynnistä ufw:n taustapalvelua (muutoin tulisi ongelmia).
Jos haluaa käyttää sysvinitiä, on suositeltavaa käyttää jotakin edellä mainituista työkaluista, koska ne merkittävästi helpottavat sen käyttämistä ja sysvinit on silloin lähes yhtä helppokäyttöinen kuin Systemd.


==Yleisiä init-skriptejä==
==Yleisiä init-skriptejä==
Rivi 133: Rivi 160:
| ifupdown-clean || Verkkolaitteiden hallintaa ||  
| ifupdown-clean || Verkkolaitteiden hallintaa ||  
|-
|-
| inetd || Palvelinohjelmien verkkoyhteyksien hallintaa ([[wikipedia:initd|artikkeli Wikipediassa]]) ||
| inetd || Palvelinohjelmien verkkoyhteyksien hallintaa ([[wikipedia:inetd|artikkeli Wikipediassa]]) ||
|-
|-
| iptables, ip4tables ja ip6tables || Ajaa määritellyn [[iptables]]-skriptin. Myös nimellä firewall. || Pidä päällä, mikäli käytät jakelusi oletustyökaluja palomuurin asettamiseen. ip6tables-palvelu on turha, mikäli [[IPv6]] on kytketty pois päältä (varmistu, että näin todella on).
| iptables, ip4tables ja ip6tables || Ajaa määritellyn [[iptables]]-skriptin. Myös nimellä firewall. || Pidä päällä, mikäli käytät jakelusi oletustyökaluja palomuurin asettamiseen. ip6tables-palvelu on turha, mikäli [[IPv6]] on kytketty pois päältä (varmistu, että näin todella on).
Rivi 239: Rivi 266:
| procps || [[proc-tiedostojärjestelmä]]n luonti ||
| procps || [[proc-tiedostojärjestelmä]]n luonti ||
|-
|-
| psacct | Prosessoriaktiviteettien tarkkailuun || Et luultavimmin tarvitse tätä.
| psacct || Prosessoriaktiviteettien tarkkailuun || Et luultavimmin tarvitse tätä.
|-
|-
| [[pulseaudio]] || Äänipalvelin ||
| [[pulseaudio]] || Äänipalvelin ||
Rivi 247: Rivi 274:
| rcS || Käynnistää /etc/rcS.d/-skriptit numerojärjestyksessä || Et halua poistaa tätä käytöstä, järjestelmä ei enää käynnisty.
| rcS || Käynnistää /etc/rcS.d/-skriptit numerojärjestyksessä || Et halua poistaa tätä käytöstä, järjestelmä ei enää käynnisty.
|-
|-
| rdisc | Löytää reitittimet lähiverkossa || Löytyy ne muutenkin, joten älä käynnistä
| rdisc || Löytää reitittimet lähiverkossa || Löytyy ne muutenkin, joten älä käynnistä
|-
|-
| readahead || Nopeuttaa ohjelmien käynnistystä. || Lukee käynnistystiedostot etukäteen nopeuttaen käynnistysaikaa  
| readahead || Nopeuttaa ohjelmien käynnistystä. || Lukee käynnistystiedostot etukäteen nopeuttaen käynnistysaikaa  
Rivi 335: Rivi 362:
| [[webmin]] || Selainpohjainen järjestelmän asetustyökalu ||
| [[webmin]] || Selainpohjainen järjestelmän asetustyökalu ||
|-
|-
| xinetd || Palvelinohjelmien verkkoyhteyksien hallintaa ([[wikipedia:xinitd|artikkeli Wikipediassa]]) ||
| xinetd || Palvelinohjelmien verkkoyhteyksien hallintaa ([[wikipedia:xinetd|artikkeli Wikipediassa]]) ||
|-
|-
| xfs || Fonttipalvelin vanhemmissa [[X]]-versioissa. || Jätä käyttöön.
| xfs || Fonttipalvelin vanhemmissa [[X]]-versioissa. || Jätä käyttöön.
Rivi 347: Rivi 374:
| wacom tai xserver-xorg-input-wacom || [[Wacom]]-piirtopöydät ||  
| wacom tai xserver-xorg-input-wacom || [[Wacom]]-piirtopöydät ||  
|}
|}
== Katso myös ==
* [[systemd]]
* [[OpenRC]]
* [[Runit]]
* [[BSD-init]]
* [[sysvinit]]


[[Luokka:Järjestelmä]]
[[Luokka:Järjestelmä]]