inittab(5) sysv uyumlu init süreci tarafından kullanılan inittab dosyasının biçimi

AÇIKLAMA

inittab dosyasında, sistem açılışında ve normal çalışma sırasında hangi süreçlerin başlatılacağı belirtilir (örneğin, /etc/init.d/boot, /etc/init.d/rc, getty, ...). init(8), her birinin başlatılacak kendi süreç kümesi olan çalışma seviyelerinden birini seçebilir. Geçerli çalışma seviyeleri 0 dan 6 ya kadar olan normal seviyeler ile A, B ve C isteğe bağlı seviyeleridir. inittab dosyası içindeki bir girdinin biçimi şöyledir:

kimlik:çalışma_seviyeleri:eylem:süreç

`#' karakteri ile başlayan satırlar yoksayılır.


kimlik
inittab içindeki bir girdiyi tanımlayan 1-4 karakterlik eşsiz bir dizilimdir (a.out kütüphaneleri ya da sürümü 5.2.18 den küçük kütüpanelerle derlenmiş sysvinit sürümleri için bu sınır 2 karakterdir.).

Not: getty ve diğer login süreçleri için kimlik alanı ilgili tty'nin numarası (örn, tty1 için 1) olmalıdır. Aksi takdirde login hesapları düzgün çalışmayabilir.

çalışma_seviyeleri
Belirtilen eylemi gerçekleştirecek çalışma seviyelerinin listesidir.

eylem
Gerçekleştirilecek eylem belirtilir.

süreç
Çalıştırılacak süreç belirtilir. Süreç alanı bir '+' karakteri ile başlıyorsa, init, süreç için utmp ve wtmp hesabı oluşturmayacaktır. Bu, kendi utmp/wtmp yönetimini yapmakta ısrar eden getty için gereklidir. Bu ayrıca tarihsel bir hatadır.

çalışma_seviyeleri alanı, farklı çalışma seviyelerini belirtmek için çok sayıda karakter içerebilir. Örneğin; 123, sürecin 1, 2 ve 3. çalışma seviyelerinde başlatılacağını belirtir. çalışma_seviyeleri alanı ondemand girdileri için A, B veya C içerebilir. sysinit, boot ve bootwait girdilerinin çalışma_seviyeleri alanı gözardı edilir.

Sistem çalışma seviyesinin değiştirilmesi halinde, çalışmakta olan ancak yeni çalışma seviyesinde belirtilmeyen süreçler bir SIGTERM sinyalinin ardından bir SIGKILL sinyali gönderilerek öldürülür.

eylem alanında belirtilebilecek eylemler şunlardır:


respawn
Süreç her sonlandırılışında yeniden başlatılacaktır (örn, getty)

wait
Süreç belirtilen çalışma seviyesine girildiğinde bir defalık çalıştırılacak ve init sonlanmasını bekleyecektir.

once
Süreç belirtilen çalışma seviyesine girildiğinde bir defalık çalıştırılacaktır.

boot
Süreç sistem açılışı sırasında çalıştırılacaktır. çalışma_seviyeleri alanı yoksayılır.

bootwait
Süreç sistem açılışı sırasında çalıştırılacak ve init sonlanmasını bekleyecektir (örn, /etc/rc) çalışma_seviyeleri alanı yoksayılır.

off
Hiçbir şey yapmaz.

ondemand
ondemand çalışma seviyesi ile işaretlenmiş bir süreç belirtilen ondemand çalışma seviyesinin her çağrılışında çalıştırılacaktır. Bu durumda, çalışma seviyesi değiştirilmez. (ondemand çalışma seviyeleri `a', `b', ve `c' dir.)

initdefault
Bir initdefault girdisi, sistem açılışından sonra girilecek çalışma seviyesini belirtmek için kullanılır. Eğer yoksa, init girilecek çalışma seviyesini konsolda soracaktır. süreç alanı gözardı edilir.

sysinit
süreç sistem açılışı sırasında bir boot veya bootwait girdisinden önce çalıştırılır. çalışma_seviyeleri alanı yoksayılır.

powerwait
süreç sistem kapanışı sırasında çalıştırılır. init, makinaya bağlı bir kesintisiz güç kaynağı ile haberleşen bir süreç tarafından bu durum hakkında bilgilendirilir. init kapanışı bitirmeden önce süreci bekleyecektir.

powerfail
init'in sürecin sonlanmasını beklememesi dışında powerwait gibidir.

powerokwait
Süreç, gücün tekrar geri gelmesi olasılığı gözönünde tutularak mümkün olduğunca çalıştırılır.

powerfailnow
KGK boşalmaya yaklaşıncaya kadar süreç çalıştırılır (bu bilgi KGK tarafından kendisi ile haberleşen sürece veriliyorsa)

ctrlaltdel
Süreç, init bir SIGINT sinyali alınca çalıştırılır. Bu durum konsoldan CTRL-ALT-DEL tuşlarına aynı anda basıldığında oluşur. Genellikle, kapanma sırasında tek kullanıcılı seviyeye geçmek ya da makinayı yeniden başlatmak için kullanılır.

kbrequest
Konsol klavyesinden özel olarak belirlenmiş bir tuş grubuna aynı anda basıldığında init bir sinyal alarak bu süreci başlatabilir.

Bu işlev için belgelendirme henüz yeterli değildir. kbd-x.xx paketlerinde daha fazla bilgi bulunabilir (bu sayfa yazılırken son sürüm kbd-0.94 idi). Temel olarak, tuşlar "KeyboardSignal" eylemine eşlenir. Örneğin, Alt+Yukarı_ok için klavye dosyanıza aşağıdaki girdiyi yazabilirsiniz:

alt keycode 103 = KeyboardSignal

ÖRNEKLER

Eski Linux inittab'ını andıran bir inittab örneği:

# linux için inittab
id:1:initdefault:
rc::bootwait:/etc/rc
1:1:respawn:/etc/getty 9600 tty1
2:1:respawn:/etc/getty 9600 tty2
3:1:respawn:/etc/getty 9600 tty3
4:1:respawn:/etc/getty 9600 tty4

Bu inittab dosyası, açılış sırasında /etc/rc betiğini ve ardından tty1-tty4 üzerinde getty'leri çalıştırır.

Biraz daha özenilmiş bir inittab (açıklamalar içindedir)

# içinde çalışılacak seviye
id:2:initdefault:
# herşeyden önce sistemi ilkendirelim.
si::sysinit:/etc/rc.d/bcheckrc
# 0 kapanma, 6 yeniden başlatma, 1 onarım kipi.
l0:0:wait:/etc/rc.d/rc.halt
l1:1:wait:/etc/rc.d/rc.single
l2:2345:wait:/etc/rc.d/rc.multi
l6:6:wait:/etc/rc.d/rc.reboot
# 3 parmak selamında yapılacak olan.
ca::ctrlaltdel:/sbin/shutdown -t5 -rf now
# 2 ve 3. çalışma seviyeleri: konsolda getty,
# 3 ise ayrıca modem portunda getty
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

İLGİLİ DOSYALAR

/etc/inittab
   

YAZAN

init Miquel van Smoorenburg <miquels (at) cistron.nl> tarafından yazılmıştır. Bu kılavuz sayfası Sebastian Lederer <lederer (at) francium.informatik.uni-bonn.de> tarafından yazılmış ve Michael Haardt <u31b3hs (at) pool.informatik.rwth-aachen.de> tarafından geliştirilmiştir.
   

ÇEVİREN

Nilgün Belma Bugüner <nilgun (at) belgeler·gen·tr>, Ocak 2004