Inittab-Linux / Unix-komento

inittab - inittap-tiedoston käyttämä sysv-yhteensopiva init-prosessi

Kuvaus

Inittab- tiedosto kertoo, mitkä prosessit alkavat käynnistyksessä ja normaalin käytön aikana (esim. /etc/init.d/boot, /etc/init.d/rc, gettys ...). Init (8) erottaa useat runlevelit , joista kullakin voi olla omat prosessinsa, jotka alkavat. Voimassa olevat runlevelit ovat 0 - 6 plus A , B ja C ondemand- merkinnöissä. Inittab- tiedoston merkinnällä on seuraava muoto:

id: ajotasojen: toiminta: prosessi

Linjat, jotka alkavat `# ': lla, jätetään huomiotta.

id on ainutlaatuinen 1-4-merkkinen merkkijono, joka tunnistaa merkinnän inittab- kirjastosta (sysvinit-versiot, jotka on koottu kirjastoihin <5.2.18 tai a.out-kirjastot, raja on 2 merkkiä).

Huomaa: Gettys- tai muiden kirjautumisprosessien osalta id- kentän pitäisi olla vastaavan tty: n tty- jälkipide , esim. 1 tty1: lle . Muutoin kirjautumistiedotus ei välttämättä toimi oikein.

Runlevelsissa luetellaan runlevelit, joille määritelty toimenpide on suoritettava.

Toimenpide kuvaa, mitä toimia on toteutettava.

prosessi määrittää suoritettavan prosessin. Jos prosessikenttä alkaa "+" -merkillä, init ei tee utmp- eikä wtmp-kirjanpitoa kyseiseen prosessiin. Tämä on tarpeen gettys, jotka vaativat tekemään omia utmp / wtmp siivousta. Tämä on myös historiallinen vika.

Runlevels- kenttä voi sisältää useita merkkejä eri runlevelle. Esimerkiksi 123 määrittelee, että prosessi olisi aloitettava runlevelle 1, 2 ja 3. Ondemand- merkinnän runlevelit voivat sisältää A , B tai C. Sysinitin käynnistys- , käynnistys- ja bootwait- merkinnät jätetään huomiotta.

Kun järjestelmän runlevelia muutetaan, kaikki käynnissä olevat prosessit, joita ei ole määritetty uudelle runlevelille, tapetaan ensin SIGTERM: llä, sitten SIGKILL: llä.

Toimintokentän kannalta tärkeät toimet ovat:

respawn

Prosessi käynnistyy uudelleen aina, kun se päättyy (esim. Getty).

odota

Prosessi käynnistetään kerran, kun määritetty runlevel on syötetty ja init odottaa sen päättymistä.

kerran

Prosessi suoritetaan kerran, kun määritetty runlevel syötetään.

saapas

Prosessi suoritetaan järjestelmän käynnistyksen aikana. Runlevels- kenttä jätetään huomiotta.

bootwait

Prosessi suoritetaan järjestelmän käynnistyksen aikana, kun taas init odottaa sen päättymistä (esim. / Etc / rc). Runlevels- kenttä jätetään huomiotta.

pois päältä

Tämä ei tee mitään.

tarpeen vaatiessa

Ondemand- runlevelillä merkitty prosessi suoritetaan aina, kun määritettyä ondemand- runlevelia kutsutaan. Runlevelin muutosta ei kuitenkaan tapahdu ( ondemand runlevels on `a ',` b' ja `c ').

initdefault

Initdefault- merkinnällä määritetään runlevel, joka tulisi syöttää järjestelmän käynnistyksen jälkeen. Jos yksikään ei ole olemassa, init pyytää konsolin ohjauspylväästä. Prosessikenttä jätetään huomiotta.

sysinit

Prosessi suoritetaan järjestelmän käynnistyksen aikana. Se suoritetaan ennen käynnistys- tai käynnistyskäynnin merkintöjä. Runlevels- kenttä jätetään huomiotta.

powerwait

Prosessi suoritetaan, kun virta menee alas. Initille ilmoitetaan yleensä tästä prosessista, joka puhuu tietokoneeseen liitetylle UPS: lle. Init odottaa prosessin päättymistä ennen jatkamista.

POWERFAIL

Mitä tulee powerwait , paitsi että init ei odota prosessin päätökseen.

powerokwait

Tämä prosessi suoritetaan heti, kun init on ilmoitettu, että teho on palautettu.

powerfailnow

Tämä prosessi suoritetaan, kun init: tä kerrotaan, että ulkoisen UPS: n akku on melkein tyhjä ja teho ei toimi (edellyttäen, että ulkoinen UPS ja seurantatoiminto pystyvät havaitsemaan tämän ehdon).

ctrlaltdel

Prosessi toteutetaan, kun init vastaanottaa SIGINT-signaalin. Tämä tarkoittaa, että järjestelmän konsolissa oleva käyttäjä on painanut CTRL-ALT-DEL -yhdistelmää. Tyypillisesti yksi haluaa suorittaa jonkinlaisen sulkemisen joko päästäkseen yksitasoiseen tasoon tai käynnistämään kone uudelleen.

kbrequest

Prosessi suoritetaan, kun init vastaanottaa näppäimistön käsittelijältä signaalin, että erityinen näppäinyhdistelmä on painettu konsolin näppäimistöllä.

Tämän toiminnon dokumentaatio ei ole vielä valmis; Lisätietoja dokumentaatiosta löytyy kbd-x.xx-paketeista (viimeisin oli kbd-0.94 tämän kirjoituksen aikaan). Pohjimmiltaan haluat piirtää näppäimistöyhdistelmän "KeyboardSignal" -toimintoon. Jos haluat esimerkiksi muokata Alt-Uparrowia tähän tarkoitukseen, käytä keymaps-tiedostossa seuraavia tietoja:

alt keycode 103 = KeyboardSignal

Esimerkit

Tämä on esimerkki inittabista, joka muistuttaa vanhaa Linux-inittab:

# inittab linux-tunnukselle: 1: initdefault: rc :: bootwait: / etc / rc 1: 1: respawn: / etc / getty 9600 tty1 2: 1: respawn: / etc / getty 9600 tty2 3: etc / getty 9600 tty3 4: 1: respawn: / etc / getty 9600 tty4

Tämä inittab-tiedosto suorittaa / etc / rc käynnistyksen aikana ja aloittaa gettysin tty1-tty4: llä.

Kehittynyt inittab, jossa on eri runlevels (katso kommentit sisältävä):

# Taso ajaa id: 2: initdefault: # Järjestelmän alustus ennen mitään muuta. si :: sysinit: /etc/rc.d/bcheckrc # Runlevel 0,6 pysäytetään ja käynnistetään uudelleen, 1 on ylläpitotila. l0: 0: odota: /etc/rc.d/rc.halt l1: 1: odota: /etc/rc.d/rc.single l2: 2345: odota: /etc/rc.d/rc.multi l6: 6: odota: /etc/rc.d/rc.reboot # Mitä tulee "3 sormen tervehdykseen". ca: ctrlaltdel: / sbin / shutdown -t5 -rf nyt # Runlevel 2 & 3: getty konsolissa, taso 3 myös getty modemportissa. 1: 23: respawn: / sbin / getty tty1 VC linux 2: 23: respawn: / sbin / getty tty2 VC linux 3: 23: respawn: / sbin / getty tty3 VC linux 4:23: respawn: / sbin / getty tty4 VC linux S2: 3: respawn: / sbin / uugetty ttyS2 M19200

Katso myös

init (8), telinit ( 8)

Tärkeää: Käytä man- komentoa ( % man ) nähdäksesi kuinka komentoa käytetään tietyssä tietokoneessa.