Muokataan sivua Init

Siirry navigaatioon Siirry hakuun
Varoitus: Et ole kirjautunut sisään. IP-osoitteesi näkyy julkisesti kaikille, jos muokkaat. Jos kirjaudut sisään tai luot tunnuksen, muokkauksesi yhdistetään käyttäjänimeesi ja saat paremman käyttökokemuksen.

Kumoaminen voidaan suorittaa. Varmista alla olevasta vertailusta, että haluat saada aikaan tämän lopputuloksen, ja sen jälkeen julkaise alla näkyvät muutokset.

Nykyinen versio Oma tekstisi
Rivi 1: Rivi 1:
'''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). Nykyään tässä artikkelissa kuvatut init-järjestelmät on useimmissa Linux-jakeluissa korvannut [[systemd]].
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). Nykyään tässä artikkelissa kuvatut init-järjestelmät on useimmissa Linux-jakeluissa korvannut [[systemd]].


==Perinteiset initit==
==Perinteiset initit==


Alun perin Linux-järjestelmissä oli 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ä. Aikanaan lähes kaikki [[jakelu]]t käyttivät System V -tyylistä initiä poikkeuksena esimerkiksi [[Slackware]] ja [[Arch Linux]] jotka käyttivät [[BSD-init]]iä.  
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ä.  


System V -initin toiminta pohjautui ns. [[ajotaso]]ihin (''runlevel''), joiden avulla määriteltiin järjestelmän eri tilojen (esim. monen käyttäjän tekstipohjainen, monen käyttäjän graafinen, yhden käyttäjän tila sekä uudelleenkäynnistys ja sulkeminen) yhteydessä käynnistettävät ja suljettavat prosessit. Käytännössä nämä määriteltiin yleensä /etc/rc?.d-hakemistojen alle sijoitettavilla [[symbolinen linkki|symlinkeillä]]. BSD-init taas pohjautuu /etc-hakemiston alle sijoitettaviin rc-[[wikipedia:fi:skripti|skripteihin]]. BSD-initin valttina on nopeus ja yksinkertaisuus.
System V -initin toiminta pohjautuu ns. [[ajotaso]]ihin (''runlevel''), joiden avulla määritellään järjestelmän eri tilojen (esim. monen käyttäjän tekstipohjainen, monen käyttäjän graafinen, yhden käyttäjän tila sekä uudelleenkäynnistys ja sulkeminen) yhteydessä käynnistettävät ja suljettavat prosessit. Käytännössä nämä määritellään yleensä /etc/rc?.d-hakemistojen alle sijoitettavilla [[symbolinen linkki|symlinkeillä]]. BSD-init taas pohjautuu /etc-hakemiston alle sijoitettaviin rc-[[wikipedia:fi:skripti|skripteihin]]. BSD-initin valttina on nopeus ja yksinkertaisuus.


==Uudempia init-toteutuksia==
==Uusia init-toteutuksia==


Perinteisten initien korvaajiksi toteutettiin uudempia järjestelmiä, kuten [[Initng]] sekä [[Upstart]]. Nämä pohjautuivat 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.
On myös olemassa uudempia initejä 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ältyi perinteisten init-ominaisuuksien lisäksi mahdollisuus hallita palveluiden käynnistämistä joustavasti erilaisten järjestelmätapahtumien pohjalta. Siinä on myös suppeita [[komentojen ajastaminen|komentojen ajastusominaisuuksia]], joiden pyrkimys oli korvata perinteiset at, cron ja anacron.  
Upstartiin sisältyy perinteisten init-ominaisuuksien lisäksi mahdollisuus hallita palveluiden käynnistämistä joustavasti erilaisten järjestelmätapahtumien pohjalta. Siihen on suunnitteilla myös [[komentojen ajastaminen|komentojen ajastusominaisuuksia]], jotka korvaisivat perinteiset at:n, cronin ja anacronin.  


Initng ei saavuttanut kovin suurta suosiota. Upstartia sen sijaan käyttivät [[Fedora]] ja [[Ubuntu]] vuosina 2006-2014. Näiden lisäksi on olemassa myös eräitä vähemmän tunnettuja initejä, kuten [[runit]], [[eINIT]] ja [[minit]] (kevyt init).
Initng ei ole toistaiseksi saavuttanut kovin suurta suosiota. Upstart on käytössä [[Fedora]]ssa ja [[Ubuntu]]ssa. Näiden lisäksi on olemassa myös eräitä vähemmän tunnettuja initejä, kuten [[runit]], [[eINIT]] ja [[minit]] (kevyt init).
 
== Nykyinen init-järjestelmä ==
Nykyisin ylivoimaisesti suosituin init-järjestelmä on [[Systemd]]. Systemd perustuu samaan lähtökohtaan kuin Upstart: palveluita käynnistetään rinnakain, ja palveluita voi käynnistää paitsi järjestelmän käynnistyessä, myös esimerkiksi tietokoneeseen kytkettyjen laitteiden muuttuessa. Siihen on lisätty komentojen ajastusominaisuuksia, jotka Upstartista puuttuivat. Myös käynnistettyjen palveluiden lokitiedostot tallentaa nykyään Systemd:n alainen journalointi.
 
Systemd on käytössä lähes kaikissa tunnetuimmissa Linux-jakeluissa, ja luultavimmin järjestelmien ylläpitäjänä törmääkin juuri siihen. Edelleen käytetään myös joitain muita Init-järjestelmiä, tunnetuinpana näistä Gentoossa käytössä oleva [[OpenRC]].
 
Tässä artikkelissa ei käsitellä Systemd:n käyttöä, vaan ohjeet sen kanssa toimimiseen löytyvät [[Systemd]]-artikkelista.


==Käyttö==
==Käyttö==
Wikin materiaali on kaikkien vapaasti käytettävissä Creative Commons 3.0 - nimi mainittava -lisenssin alaisuudessa. TEKIJÄNOIKEUDEN ALAISEN MATERIAALIN KÄYTTÄMINEN ILMAN LUPAA ON EHDOTTOMASTI KIELLETTYÄ!

Muokataksesi tätä sivua vastaa alla olevaan kysymykseen (lisätietoja):

Peruuta Muokkausohjeet (avautuu uuteen ikkunaan)
Noudettu kohteesta ”https://www.linux.fi/wiki/Init