inittab - format file inittab yang digunakan oleh proses init yang kompatibel dengan sysv
Deskripsi
File inittab menggambarkan proses mana yang dimulai saat boot dan selama operasi normal (mis. /etc/init.d/boot, /etc/init.d/rc, gettys ...). Init (8) membedakan beberapa runlevel , yang masing-masing dapat memiliki serangkaian proses sendiri yang dimulai. Runlevel yang valid adalah 0 - 6 plus A , B , dan C untuk entri ondemand . Entri dalam file inittab memiliki format berikut:
id: runlevels: action: process
Baris yang diawali dengan `# 'diabaikan.
id adalah urutan unik dari 1-4 karakter yang mengidentifikasi entri di inittab (untuk versi sysvinit yang dikompilasi dengan pustaka <5.2.18 atau a.out pustaka, batasnya adalah 2 karakter).
Catatan: Untuk gettys atau proses login lainnya, bidang id harus menjadi akhiran tty dari tty yang sesuai, misalnya 1 untuk tty1 . Jika tidak, akuntansi login mungkin tidak berfungsi dengan benar.
runlevels berisi daftar runlevel dimana tindakan yang ditentukan harus diambil.
tindakan menggambarkan tindakan mana yang harus diambil.
proses menentukan proses yang akan dieksekusi. Jika bidang proses dimulai dengan karakter `+ ', init tidak akan melakukan utmp dan wtmp akuntansi untuk proses itu. Ini diperlukan untuk gettys yang bersikeras melakukan sendiri utmp / wtmp housekeeping. Ini juga bug bersejarah.
Bidang runlevels mungkin berisi beberapa karakter untuk runlevel yang berbeda. Misalnya, 123 menetapkan bahwa proses harus dimulai di runlevel 1, 2, dan 3. Runlevel untuk entri ondemand dapat berisi A , B , atau C. Bidang runlevels dari entri sysinit , boot , dan bootwait diabaikan.
Ketika runlevel sistem diubah, setiap proses yang berjalan yang tidak ditentukan untuk runlevel baru dibunuh, pertama dengan SIGTERM, kemudian dengan SIGKILL.
Tindakan yang valid untuk bidang tindakan adalah:
respawn
Proses akan dimulai kembali setiap kali berakhir (misalnya getty).
Tunggu
Proses akan dimulai satu kali ketika runlevel yang ditentukan dimasukkan dan init akan menunggu penghentiannya.
sekali
Proses akan dijalankan satu kali ketika runlevel yang ditentukan dimasukkan.
boot
Proses akan dijalankan selama boot sistem. Bidang runlevels diabaikan.
boot menunggu
Proses akan dijalankan selama boot sistem, sementara init menunggu terminasi (misal / etc / rc). Bidang runlevels diabaikan.
mati
Ini tidak melakukan apa-apa.
atas permintaan
Sebuah proses yang ditandai dengan runlevel ondemand akan dieksekusi kapan pun runlevel panggilan yang ditentukan dipanggil. Namun, tidak ada perubahan runlevel yang akan terjadi ( ondemand runlevels adalah `a ',` b', dan `c ').
initdefault
Entri initdefault menentukan runlevel yang harus dimasukkan setelah boot sistem. Jika tidak ada, init akan meminta runlevel di konsol. Bidang proses diabaikan.
sysinit
Proses akan dijalankan selama boot sistem . Ini akan dieksekusi sebelum entri boot atau boot menunggu . Bidang runlevels diabaikan.
powerwait
Proses akan dijalankan ketika listrik mati. Init biasanya diberitahu tentang ini oleh suatu proses yang berbicara dengan UPS yang terhubung ke komputer. Init akan menunggu proses selesai sebelum melanjutkan.
powerfail
Sedangkan untuk powerwait , kecuali bahwa init tidak menunggu proses selesai.
powerokwait
Proses ini akan dijalankan segera setelah init diberi tahu bahwa daya telah dipulihkan.
powerfailnow
Proses ini akan dijalankan ketika init diberitahu bahwa baterai UPS eksternal hampir kosong dan daya listriknya mati (asalkan UPS eksternal dan proses pemantauan dapat mendeteksi kondisi ini).
Proses akan dieksekusi ketika init menerima sinyal SIGINT. Ini berarti bahwa seseorang di konsol sistem telah menekan kombinasi tombol CTRL-ALT-DEL . Biasanya orang ingin melakukan semacam shutdown baik untuk masuk ke level single-user atau reboot komputer.
kbrequest
Proses akan dijalankan ketika init menerima sinyal dari pengendali keyboard yang kombinasi tombol khusus ditekan pada keyboard konsol.
Dokumentasi untuk fungsi ini belum lengkap; lebih banyak dokumentasi dapat ditemukan dalam paket kbd-x.xx (yang terbaru adalah kbd-0.94 pada saat penulisan ini). Pada dasarnya Anda ingin memetakan beberapa kombinasi keyboard ke aksi "KeyboardSignal". Misalnya, untuk memetakan Alt-Uparrow untuk tujuan ini, gunakan yang berikut ini dalam file peta kunci Anda:
alt keycode 103 = KeyboardSignal
CONTOH
Ini adalah contoh dari inittab yang menyerupai Linux inittab lama:
# inittab untuk id linux: 1: initdefault: rc :: bootwait: / etc / rc 1: 1: respawn: / etc / getty 9600 tty1 2: 1: respawn: / etc / getty 9600 tty2 3: 1: respawn: / dll / getty 9600 tty3 4: 1: respawn: / etc / getty 9600 tty4File inittab ini mengeksekusi / etc / rc saat boot dan memulai gettys pada tty1-tty4.
Inittab yang lebih rumit dengan runlevel yang berbeda (lihat komentar di dalamnya):
# Tingkat untuk dijalankan dalam id: 2: initdefault: # Inisialisasi sistem sebelum hal lain. si :: sysinit: /etc/rc.d/bcheckrc # Runlevel 0,6 berhenti dan reboot, 1 adalah mode pemeliharaan. 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: tunggu: /etc/rc.d/rc.reboot # Apa yang harus dilakukan pada "3 finger salute". ca :: ctrlaltdel: / sbin / shutdown -t5 -rf sekarang # Runlevel 2 & 3: getty di konsol, level 3 juga getty di port modem. 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 M19200Lihat juga
Penting: Gunakan perintah man ( % man ) untuk melihat bagaimana perintah digunakan pada komputer khusus Anda.