Berikut ini proses startup pada sistem linux
BIOS Basic Input/Output System adalah antar muka level terendah antara komputer dan peripheral. Bios melakukan pemeriksaan pada memori dan mencari instruksi pada Master Boot Record (MBR) pada floppy atau hard drive.
MBR menunjuk ke boot loader (LILO : Linux boot loader)
LILO / GRUB akan menanyakan label sistem operasi yang akan mengidentifikasi kernel yang dijalankan. Kernel akan menjalankan sistem operasi Linux.
Yang pertama kali dikerjakan oleh kernel adalah menjalankan program init. Init adalah root/parent dari semua proses yang dijalankan pada Linux
Proses pertama yang memulai init adalah skrip /etc/rc.d/rc/sysinit.
Berdasarkan run-level yang ditentukan, skrip dieksekusi untuk memulai proses tertentu untuk menjalankan sistem dan membuat sistem lebih fungsional.
Proses init adalah langkah terakhir pada prosedur boot dan di identifikasi sebagai process ide “1”.
Init bertanggung-jawab untuk memulai proses sistem seperti yang ditentukan pada file /etc/inittab.
Init biasanya memulai “getty” yang menunggu layar login yang menandakan proses shell seorang user.
Pada saat shutdown, init mengontrol urutan dan proses untuk shutdown.
Proses init tidak pernah shut down. Proses init merupakan proses user dan bukan proses sistem kernel meskipun dijalankan sebagai root.
Proses Boot / runlevel
Run level menggambarkan keadaan sistem yang mendefinisikan layanan apa yang sedang berjalan. Run level ditunjukkan dengan angka. Seluruh baris di file /etc/inittab akan diproses sesuai dengan run level yang berlaku. Baris yang tidak mempunyai run level, berarti proses pada baris tersebut dijalankan pada setiap run level.
Linux mempunyai 6 state operasi dimana “0” adalah shutdown state dan “3” keatas adalah operasional penuh dengan semua proses yang esensial dijalankan untuk interaksi user.
Berdasarkan sistem boot, Linux sistem akan melakukan :
l Mengeksekusi program /sbin/init yang memulai semua proses-proses lain. Program ini akan diberikan ke mesin oleh proses awal yang didefinisikan pada file /etc/inittab
l Komputer akan di-booting ke runlevel yang didefinisikan oleh baris initdefault pada file /etc/inittab. id:5:initdefault:
- Pada contoh diatas, runlevel ”5” dipilih. Runlevel “5” akan melakukan booting sistem pada mode GUI menggunakan XDM dan X-Windows. Booting ke runlevel ”3” (biasanya disebut mode console) biasanya digunakan oleh server yang tidak memerlukan GUI.
File inittab mengijinkan menggunakan kunci (Ctrl-Alt-Del), memulai dial
ke koneksi internet dll.
l Satu dari proses-proses yang dimulai oleh init adalah /sbin/rc. Skrip ini menjalankan sekumpulan skrip pada direktory /etc/rc.d/rc0.d/, /etc/rc.d/rc1.d, /etc/rc.d/rc2.d dan seterusnya.
l Skrip pada direktory tersebut dieksekusi pada setiap boot state dari oeprasi sampai menjadi operasi yang lengkap. Skrip mulai dengan S yang merupakan skrip startup sedangkan skrip yang dimulai dengan K menandakan skrip shutdown (kill). Angka yang mengikuti huruf tersebut merupakan urutan eksekusi (terendah ke tertinggi)
l Apabila melakukan perpindahan level init dengan menggunakan perintah init dengan runlevel tertentu.
l Gunakan perintah ”init#” dimana # adalah satu dari 0, 1, 3, 5, 6. Dapat juga menggunakan perintah telinit.
l Skrip untuk run level yang diberikan dijalankan selama boot dan shutdown. Skrip ditemukan pada direktory /etc/rc.d/rc#.d/ dimana simbol # menandakan run level, misalnya run level ”3” akan menjalankan semua skrip pada direktory /etc/rc.d/rc3.d/ yang dimulai dengan huruf ”S” selama sistem boot.
l Skrip ini akan menjalankan proses background yang dibutuhkan oleh sistem. Pada saat shutdown semua skrip pada direktory yang dimulai dengan huruf ”K” akan dieksekusi. Sistem ini
l Menyediakan urutan sistem ke state yang berbeda untuk mode produksi dan maintenance.
l TIP : Daftar state dan run level dari semua service dimulai oleh ini : chkconfig –list
l GUI tool : /usr/X11R6/bin/tksysv
/etc/inittab
Berikut ini isi dari file /etc/inittab:
id:3:initdefault:
Keterangan :
Baris di atas menunjukkan bahwa pada saat dijalankan sistem
akan masuk ke run level 3
1:2345:respawn:/sbin/getty 9600 tty1
Keterangan:
Kolom pertama menunjukkan bahwa baris ini untuk /dev/tty1
Kolom kedua menunjukkan bahwa baris ini diterapkan untuk run level 2,3,4,dan 5.
Kolom ketiga berarti bahwa perintah /sbin/getty akan dijalankan lagi apabila berhenti.
Kolom terakhir menunjukkan program /sbin/getty akan dijalankan pada virtual console yang pertama.
Memeriksa runlevel
Memeriksa runlevel dibutuhkan untuk mengetahui kita sekarang berada pada level berapa kita bekerja di sistem operasi linux. Ada dua cara untuk memeriksa runlevel yaitu:
l Menggunakan perintah who
# who –r
run-level 5 16 Marc 2009 10:24 last=S
l Menggunakan printah runlevel
# runlevel
N 5
Mengganti runlevel
Sintak untuk mengganti runlevel adalah:
init [runlevel]
Contoh:
1. Menjalankan runlevel 0 atau melakukan proses shutdown
# init 0
2. Menjalankan runlevel 1 atau masuk ke modus single user
# init 1
Menentukan default boot runlevel
l Default boot runlevel pada file /etc/inittab diset dengan menggunakan variabel initdefault. Jika diset “3″, sistem boot menggunakan antar muka teks pada console VGA; jika diset “5″, menggunakan GUI.
l Hapus baris initdefault yang tidak diperlukan pada file /etc/inittab. Buatlah bari baru untuk set sistem boot menggunakan console VGA / teks # vi /etc/inittab
l Setelah dilakukan perubahan variabel initdefault, lakukan reboot. Perhatikan apakah masuk ke mode teks # reboot
l Lakukan perubahan kembali dari 3 ke 5 dan lakukan reboot sistem. Ingat, jangan melakukan setting ke 6 karena sistem akan reboot terus-menerus. Sedangkan setting 0 maka sistem tidak pernah dimulai
Menggunakan Console GUI
l Kita dapat masuk ke console GUI jika sistem berada pada mode teks. Pertamaubahlah variabel initdefault pada file /etc/inittab dan ubahlah ke mode 3 atau dengan menggunakan perintah init
# init 3
l Metode Manual : Jalankan aplikasi X terminal GUI dengan menjalankan perintah “startx” pada console VGA. Untuk keluar gunakan logout
# startx
l Metode Otomatis : Anda dapat menjalankan X terminal GUI setiap kali reboot menggunakan perintah init. Anda harus mengedit variabel ”initdefault” pada file /etc/inittab seperti percobaan sebelumnya agar setiap booting masuk ke mode GUI. Ubahlah kembali ke mode 5.
# init 5
Tidak ada komentar:
Posting Komentar