/ETC/INITTAB DOSYASI
/etc/inittab dosyası init deamon ile yakın ilişki içindedir. Sisteminizdeki /etc/inittab dosyasına bakarak, Linux’un açılması esnasında hangi çalışma seviyelerinin devreye girdiğini ve hangi süreçlerin başladığını görünüz.
/etc/inittab dosyasındaki her satır spesifik bir formatı takip eder.
ID:runlevel:action:process
ID bir veya iki karakter string’e sahip ve girişi tek olarak tanımlayan bir kimlik karakter setidir. Çoğu durumlarda, bu string tty1 için bir, tty2 için 2 ve benzeri gibi cihaz adına karşılık gelir çalışma seviyesi, bu satırların hangi çalışma seviyelerinin uygulanabileceğine karar verir.
Örnek : /etc/inittab dosyasında ilk kısım kimlik ve benimsenmiş çalışma düzeyini verir, bu örnekte seviye 5 dir.
id:5:initdefault:
Sonraki kısım sistemdeki başlatma sürecini, /etc/rc.d klasöründeki dosyalar aracılığıyla devreye sokar:
su:s:sysinit:/etc/rc.d/rc.S
Sonraki kısım /etc/rc.d/rc.K dosyasına yönlendirir (Bu dosya sisteme tek kullanıcı çalışma seviyesinde girildiğinde kullanılır)
su:s:wait:/etc/rc.d/rc.K
Sonraki satır /etc/rc.d/rc.M dosyasına yönlendirir çok kullanıcılı seviyede sistem başladığında devreye girer.
rc:123456:wait:/etc/rc.d/rc.M
En yaygın çalışma seviyesi 5 olup Linux’un çok kullanılıcı modundaki normal operasyon seviyesidir. Bu nedenle kulanım için çalışma düzeyi beş ve superuser için s seviyesi kullanılır. Linux, PC makinelerde çalıştığından dolayı, “three-fingered-salute” veya Ctrl+Alt+Delete dizisini destekler. Bu dizi genellikle UNIX sistemlerinde desteklenmez bu nedenle özel bir talimat /etc/inittab dosyasındaki diziye kopyalanır.
ca::ctrlaltdel:/sbin/shutdown –t3 –rf now
böylelikle Ctrl+Alt+Del dizisi uygulandığında sistem aşağıdaki satırların sonuna kadarki komutlarla kapatılmaya başlanır. /etc/inittab dosyası, bu durumda sistemdeki sanal terminal ve her terminal için getty sürecini başlatmak için bir talimat tutar. Aşağıdaki /etc/inittab dosyası 6 sanal terminal (tty1’den tty6’ya kadar) ve iki veri hattı (ttys0 ve ttys1) başlatır.
c1:12345:respawn:/sbin/agetty 38400 tty1
c2:12345:respawn:/sbin/agetty 38400 tty2
c3: 45:respawn:/sbin/agetty 38400 tty3
c4: 45:respawn:/sbin/agetty 38400 tty4
c5: 45:respawn:/sbin/agetty 38400 tty5
c6: 456:respawn:/sbin/agetty 38400 tty6
s1: 45:respawn:/sbin/agetty 19200 ttys0
s2: 45:respawn:/sbin/agetty 19200 ttys1
Eğer init bir güç kaybı durumu sezinlerse (örneğin; UPS {Uninterruptable Power Supply} tarafından sinyal gönderilen PC’nin güç kaybı gibi) ve sistem çok kullanılıcı mode’da ise bazı özel güç kullanımı şartları makinenin yeniden açılması durumunda çalıştırılır. Bu şartlar genellikle sistemi geri getirmeden önce dosya sistemlerindeki olası problemlerin kontrolleri şeklindedir. /etc/inittab dosyası bu tür şartlar için talimatları barındırır.
Örneğin :
pf::powerfail:/sbin/shutdown –f +5 “THE POWER IS FAILING”
pg:0123456:powerokwait:/sbin/shutdown -c “THE POWER İS BACK”
ps:s:powerokwait:/sbin/init 5
ASCII editörü kullanarak inittab dosyası değiştirilebilir fakat değişikliklerin aktif olabilmesi için sistemin reboot edilmesi veya yeniden okuma şartlarında birisi oluşması gerekir; diğer bir alternatif’de, init’i kullanarak /etc/inittab dosyasını değerlendirmeye almaktır. Bunun için;
$ init q
komutunu kullanmalıyız. init süreci, bir sürecin kaç kere yeniden başlatılması (respawn) gerektiğini kontrol eder.