Ero sivun ”Init” versioiden välillä

Linux.fista
Siirry navigaatioon Siirry hakuun
(initng:stä ja upstartista lisää ym.)
Rivi 1: Rivi 1:
Init on [[wikipedia:fi:Unix|Unix]]-järjestelmissä ohjelma, jonka tehtävänä on kaikkien muiden ohjelmien (prosessien) käynnistäminen. Tyypillisesti järjestelmän ydin käynnistää init-ohjelman ensimmäisenä ulkoisena prosessina ([[PID]] 1).
Init on [[wikipedia:fi:Unix|Unix]]-järjestelmissä ohjelma, jonka tehtävänä on kaikkien muiden ohjelmien (prosessien) käynnistäminen. Tyypillisesti järjestelmän ydin käynnistää init-ohjelman ensimmäisenä ulkoisena prosessina ([[PID]] 1).


==yleistä==
Linux-järjestelmissä on perinteisesti ollut käytössä kahden tyyppisiä init-ohjelmia, [[wikipedia:en:System V|System V Unixin]] ([[sysvinit]]) ja [[wikipedia:fi:BSD|BSD-Unixin]] initin toimintaa jäljitteleviä. Lähes kaikki [[jakelu]]t käyttävät nykyisin System V -tyylistä initiä poikkeuksena esimerkiksi [[Slackware]] ja [[Arch Linux]] jotka käyttävät [[BSD-init]]iä. On myös olemassa uudempia init-toteutuksia kuten [[Initng]] sekä [[Upstart]], jotka pohjautuvat järjestelmän palveluiden käynnistämiseen rinnakkain. Rinnakkain käynnistäminen nopeuttaa jossain määrin käynnistysprosessia, kun esimerkiksi [[DHCP]]-palvelimelta vastausta odotellessa järjestelmän resursseja voidaan käyttää jonkin muun palvelun käynnistämiseen. Upstartiin sisältyy perinteisten init-ominaisuuksien lisäksi mahdollisuus hallita palveluiden käynnistämistä joustavasti erilaisten järjestelmätapahtumien pohjalta. Upstartiin on suunnitteilla myös [[komentojen ajastaminen|komentojen ajastusominaisuuksia]], jotka korvaisivat perinteiset at:n, cronin ja anacronin. Initng ei ole toistaiseksi saavuttanut kovin suurta suosiota. Upstart on käytössä [[Ubuntu]]ssa. Näiden lisäksi on olemassa myös eräitä vähemmän tunnettuja initejä, kuten [[runit]], [[eINIT]] ja [[minit]] (kevyt init).
Linux-järjestelmissä on perinteisesti ollut käytössä kahden tyyppisiä init-ohjelmia, [[wikipedia:en:System V|System V Unixin]] ([[sysvinit]]) ja [[wikipedia:fi:BSD|BSD-Unixin]] initin toimintaa jäljitteleviä. Lähes kaikki [[jakelu]]t käyttävät nykyisin System V -tyylistä initiä poikkeuksena esimerkiksi [[Slackware]] ja [[Arch Linux]] jotka käyttävät BSD-initiä.  


==toteutukset==
==Käyttö==
*[[sysvinit]]: Useimmat [[jakelu|levitysversiot]] käyttävät tätä
Esimerkiksi [[käynnistyslatain|käynnistyslataimessa]] voidaan [[ydin|ytimen]] parametrilla init määrittää oletuksesta poikkeava init-ohjelma. Hyvin yleinen käyttökohde tälle on järjestelmän käynnistäminen vikatilanteessa suoraan root-komentotulkkiin. Esimerkiksi parametrilla
*[[bsdinit]]: [[archlinux]], [[slackware]]
init=/bin/bash
*[[init-ng]]: uusi init, uusilla ominaisuuksilla, harva distro kuitenkaan suosii tätä
voitaisiin järjestelmä määrittää käynnistymään suoraan [[Bash]]-[[komentotulkki]]in ilman varsinaisen initin lataamista.
*[[upstart]]: [[Ubuntu|Ubuntun]] init
*[[minit]]: kevyt init


==[[ydin]]-parametrit==
Muita ytimelle annettavia parametreja ovat mm.
*init=<polku rootilla inittiin> Oletusarvo tässä on /sbin/init. Kuitenkin vikatilanteessa saatetaan haluta käynnistää kone esimerkiksi suoraan shelliin. Esimerkiksi parametrilla ''init=/bin/zsh'' ydin korvaisi normaalin init-ohjelman [[Zsh]]-[[komentotulkki|komentotulkilla]].
S
 
joka käynnistää initin yhden käyttäjän tilassa sekä
*S käynnistää initin yhden käyttäjän tilassa.
rdinit=<polku initrd:llä initiin>
 
joka ajaa [[initrd]]:n initin ohjelman /init sijaan.
*rdinit=<polku initrd:llä initiin> ajaa [[initrd]]:n initin ohjelman /init sijaan.


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

Versio 10. toukokuuta 2007 kello 20.26

Init on Unix-järjestelmissä ohjelma, jonka tehtävänä on kaikkien muiden ohjelmien (prosessien) käynnistäminen. Tyypillisesti järjestelmän ydin käynnistää init-ohjelman ensimmäisenä ulkoisena prosessina (PID 1).

Linux-järjestelmissä on perinteisesti ollut käytössä kahden tyyppisiä init-ohjelmia, System V Unixin (sysvinit) ja BSD-Unixin initin toimintaa jäljitteleviä. Lähes kaikki jakelut käyttävät nykyisin System V -tyylistä initiä poikkeuksena esimerkiksi Slackware ja Arch Linux jotka käyttävät BSD-initiä. On myös olemassa uudempia init-toteutuksia kuten Initng sekä Upstart, jotka pohjautuvat järjestelmän palveluiden käynnistämiseen rinnakkain. Rinnakkain käynnistäminen nopeuttaa jossain määrin käynnistysprosessia, kun esimerkiksi DHCP-palvelimelta vastausta odotellessa järjestelmän resursseja voidaan käyttää jonkin muun palvelun käynnistämiseen. Upstartiin sisältyy perinteisten init-ominaisuuksien lisäksi mahdollisuus hallita palveluiden käynnistämistä joustavasti erilaisten järjestelmätapahtumien pohjalta. Upstartiin on suunnitteilla myös komentojen ajastusominaisuuksia, jotka korvaisivat perinteiset at:n, cronin ja anacronin. Initng ei ole toistaiseksi saavuttanut kovin suurta suosiota. Upstart on käytössä Ubuntussa. Näiden lisäksi on olemassa myös eräitä vähemmän tunnettuja initejä, kuten runit, eINIT ja minit (kevyt init).

Käyttö

Esimerkiksi käynnistyslataimessa voidaan ytimen parametrilla init määrittää oletuksesta poikkeava init-ohjelma. Hyvin yleinen käyttökohde tälle on järjestelmän käynnistäminen vikatilanteessa suoraan root-komentotulkkiin. Esimerkiksi parametrilla

init=/bin/bash

voitaisiin järjestelmä määrittää käynnistymään suoraan Bash-komentotulkkiin ilman varsinaisen initin lataamista.

Muita ytimelle annettavia parametreja ovat mm.

S

joka käynnistää initin yhden käyttäjän tilassa sekä

rdinit=<polku initrd:llä initiin>

joka ajaa initrd:n initin ohjelman /init sijaan.