Startup dan Shutdown diLinux


Proses shutdown
Memahami proses yang berlangsung pada saat startup dan shutdown akan memudahkan dalam mencari
kesalahan (troubleshooting) ketika terjadi masalah yang berhubungan dengan startup dan shutdown
komputer.

2.1. Proses Startup
Proses startup pada sistem Linux dapat dilihat pada gambar di bawah:


Keterangan:
1. Pertama kali mesin melakukan power on self test (pemeriksaan hardware).
2. Program BIOS yang ada di ROM akan dieksekusi.
3. Boot Loader yang ada di MBR akan dieksekusi.
4. Load Kernel Linux ( /boot/vmlinuz ) ke RAM.
5. Menjalankan program init.
2.1.1. init
init merupakan proses level user yang pertama kali dijalankan oleh kernel dan mempunyai nomor
proses (PID)=1. Selanjutnya init akan membaca file /etc/inittab dan menjalankan perintah didalamnya.

2.1.2. File /etc/inittab
Format umum isi file /etc/inittab adalah sbb:
id:runlevel:action:process

Keterangan :

id  = menunjukan identitas suatu baris
runlevel = menunjukan di run level berapa saja yang akan diterapkan
action = menunjukan action  apa yang akan kita lakukan
proses = program atau perintah yang haru di lakukan/di eksekusi

Proses Startup

Proses starup dimulai ketika sistem sudah memanggil LILO dan proses booting sudah diserahkan pada sebuah program induk yang disebut dengan init. Pada hampir kebanyakan distribusi Linux, proses startup mengikuti aturan-aturan seperti berikut.

    Eksekusi LILO
    LILO Memuat secondary loader pada /boot/chain.b.
    /boot/chain.b menjalankan Kernel Linux. Sampai pada bagian ini, seorang pengguna akan melihat tampilan pesan pada layar seperti menjalankan daemon, memerika integritas perangkat keras, dan sebagainya.
    Kernel menyerahkan tugasnya kepada init.
    Init menjalankan berbagai program di belakang layar yang dibutuhkan oleh seorang user untuk login ke dala sistem.
    Init memanggil program yang digunakan untuk login.

Proses Startup pada tiap Distribusi

Seperti sudah diterangkan di atas, setelah init mengambil alih tugas booting sistem dari LILI atau GRUB, init akan menjalankan sistem sesuai dengan default run level yang digunakan. Pada beberapa distribusi, penanganan run level ini berbeda satu dengan lainnya.



Run Level pada RedHat dan OpenLinux

Kedua distribusi ini meletakkan program-program shell pada direktori /etc/rc.d. Program-program yang berhubungan dengan init diletakkan dalam sebuah direktori master pada /etc/rc.d/init.d. Sedangkan direktori lainnya lagi memiliki nama yang sama untuk setiap run level, misalnya /etc/rc1.d/ untuk run level 1.

Debian/GNU LINUX
Debian memiliki kesamaan dengan RedHat ataupun OpenLinux. Perbedaan terletak pada direktori master, yaitu /etc/init.d sedangkan untuk RedHat atau OpenLinux adalah /etc/rc.d.init.d.

Slackware
Slackware memiliki kesamaan dengan RedHat ataupun OpenLinux. Perbedan terletak pada distribusi Slackware yang tidak menggunakan file dengan link sombolik seperti yang digunakan oleh distribusi lainnya. Jadi setiap file yang berhubungan dengan init adalah program binari yang memang dapat dieksekusi untuk menjalankan script shell.

SuSE
Perbedaan utama SuSE dengan RedHat ataupun Open Linux adalah struktur yang berada pada direktori master /etc/rc.d/rc di link kembali ke direktori aktif yang berada pada /etc/rc.d/.

Proses Startup dan LILO
Penggunaan boot manajer memungkinkan kita untuk menjalankan lebih dari sistem operasi pada satu komputer. Dengan boot manajer kita dapat memilih salah satu sistem operasi untuk dijalankan pada waktu proses booting pertama kali. Kebanyakan distribusi saat ini menyertakan LILO atau GRUB yang dapat diinstal pada waktu proses instalasi. Keberadaan boot manajer ini memungkinkan seorang user untuk dapat menggunakan harddisk berukuran besar dengan menyertakan opsi linear pada lilo.conf. Untuk mengkonfigurasikan lilo, dapat dilakukan dengan menggunakan tool-tool berbasis grafis, seperti RedHat dengan Linuxconf atau Webmin untuk Open Linux. Meskipun tersedia tool berbasis grafis, kita dapat mengkonfigurasikan lilo dengan menggunakan cara manual pada file /etc/lilo.conf.

Jika pada satu komputer terdapat dua sistem operasi (misal Linux dan MS Windows), pada file lilo.conf terdapat dua baris utama yang menunjukkan opsi yang digunakan untuk menjalankan kedua sistem operasi tersebut. Pada kedua baris tersebut terdapat sebuah opsi label yang merupakan nama dari sistem operasi yang digunakan untuk menjalankan salah satu sistem operasi yang digunakan.

Salah satu opsi yang digunakan pada lilo adalah pengaturan waktu yang digunakan untuk memberikan kesempatan user memilih salah satu sistem operasi yang digunakan sebelum nilai default yang digunakan lilo dijalankan. Opsi ini menggunakan timeout dan berisikan nilai dalam satuan detik. Misalkan kita akan mengatur timeout dengan satuan waktu 20 detik, tambahkan opsi berikut ke dalam lilo.conf.

timeout = 200
opsi lainnya dalah default, yang digunakan untuk mengatur dafult sistem operasi yang akan dijalankan jika batas timeout di atas sudah habis. Untuk mengatur Linux sebagai default sistem operasi yang akan dijalankan, gunakan opsi berikut.

default = linux
Untuk menjalankan sistem operasi, dalam konfigurasi lilo harus dimasukkan opsi image yang digunakan untuk memanggil image dari kernel Linux. Contoh berikut digunakan untuk memanggil image kernel yang digunakan pada distribusi RedHat 7.2.

image=/boot/vmlinuz-2.4.7-10
Setelah memuat image dari Kernel Linux, langkah berikutnya adalah menentukan label dari kernel Linux yang digunakan, termasuk partisi tempat file image tersebut berada.

label=linux

root=/dev/hda5

Langkah terakhir adalah dengan mengaktifkan perubahan yang dilakukan pada file lilo.conf dengan mengetikkan perintah lilo pada prompt Linux seperti berikut.

#lilo
Berikut ini adalah isi file lilo.conf yang penulis gunakan pada distribusi RedHat 7.2.

prompt

timeout=50

default=linux

boot=/dev/hda

map=/boot/map

install=/boot/boot.b

message=/boot/message

linear

image=/boot/vmlinuz-2.4.7-10

label=linux

read-only

root=/dev/hda5



Facebook Twitter RSS