Bootloader adalah Sebuah program kecil dalam komputer yang dipakai untuk mengenali operating system yang ada di dalam komputer. Ketika komputer dinyalakan yang terjadi adalah proses booting, salah satu sekuen yang terjadi adalah bootloader mengenali adanya operating system dan membawanya ke dalam memory. Tanpa adanya bootloader, operating system tidak dapat digunakan, karena didalam memory tidak ada sistem operasi. Semua operating system rata-rata disimpan di dalam harddisk. Bootloader di Linux yang paling umum adalah LILO atau GRUB. Windows memiliki NTLDR sebagai bootloadernya.
LILO (LInux LOader), adalah Boot Loader yang terdapat pada sistem operasi GNU/Linux Red Hat dan turunannya. Biasanya, LILO sering di-set sesuai kebutuhan penggunanya. Banyak menu konfigurasi yang disediakan oleh LILO, dan LILO-pun dapat di-install dan di-uninstall. LILO merupakan boot loader package yang dipakai hampir di semua varian sistem operasi Linux. Dengannya kita dapat menginstal sistem operasi lebih dari satu. Pada saat kita mulai mengoperasikan sistem di mana LILO terinstal, kita dapat memasukkan parameter atau option dan menentukan sistem operasi apa yang akan dijalankan.
LILO, pada dasarnya adalah program boot loader. Dia terdiri dari beberapa program dan file. Dua program utamanya adalah yang disebut map installer dan boot program. Program map installer merupakan program pada Linux yang meletakkan file-file yang dibutuhkan pada tempatnya dan kemudian merekam lokasi file-file tersebut dalam suatu map file. Map file inilah yang kemudian digunakan untuk menentukan letak sistem operasi pada saat booting dijalankan. Program Map installer ini berada di direktori /sbin dan dinamakan lilo. Karena itu, untuk mengoperasikannya kita perlu memasukkan /sbin/lilo (atau cukup lilo) di command prompt.
LILO terkonfigurasi dan terinstal sebagai bagian dari instalasi awal Linux di berbagai distribusi.
File-file yang menjadi bagian dari distribusi LILO antara lain sebagai berikut:
1. /boot/boot.b : Diinstal sebagai boot sector yang default.
2. /boot/chain.b : Digunakan untuk mem-boot sistem operasi non-Linux
3. /boot/os2_d.b : Digunakan untuk mem-boot sistem OS/2
4. /sbin/activate : Digunakan untuk mengubah flag aktif pada suatu partisi
5. /sbin/lilo : Program map installer. Program ini menginstall boot loader yang ditentukan di file konfigurasi /etc/lilo.conf
Konfigurasi LILO disimpan di file /etc/lilo.conf. Contoh file /etc/lilo.conf :
#vi /etc/lilo.conf
message = /boot/message
timeout = 40
prompt
default = Suse
boot = /dev/hda
##system oprasi linux ##
image = /boot/vmlinuz
label = Suse
initrd = /boot/initrd
root = /dev/hda7
message = /boot/message
timeout = 40
prompt
default = Suse
boot = /dev/hda
##system oprasi linux ##
image = /boot/vmlinuz
label = Suse
initrd = /boot/initrd
root = /dev/hda7
keterangan dari isi file /etc/lilo.conf :
message : Memanggil pesan yang akan ditampilkan saat booting yang terletak di /boot/message
timeout : Waktu untuk melilih OS lain jika kita cantumkan pada lilo.conf . 40 artinya akan login ke OS default setelah 4 detik default---Merupakan OS default untuk login
boot : Harddisk yang digunakan untuk booting yaitu /dev/hda
image : Ini berisi image dari kernel sistem oprasi yang akan di booting biasanya /boot/vmlinuz
label : Nama yang akan di tampilkan pada saat booting
initrd : Ini berisi initial ramdisk dari kernel biasanya di /boot/initrd
root : Berisi letak partisi dari sistem oprasi yang akan di booting
Untuk Menyimpan perubahan
Untuk menyimpan perubahan yang telah dilakukan pada file /etc/lilo.conf ke MBR lakukan
perintah berikut:
# /sbin/lilo
Menghapus LILO
Untuk menghapus LILO dari MBR lakukan langkah berikut :
Hal 24 Modul Linux System Administration STT-PLN dan InfoSolusi
# /sbin/lilo -u
LILO juga bisa dihapus menggunakan perintah DOS sbb:
a:\fdisk /mbr
GRUB
GRUB (GRand Unified Boot loader) saat ini telah menjadi boot loader default di beberapa
distribusi Linux menggantikan LILO. Seperti halnya LILO, GRUB juga dapat diinstal di MBR
atau di sektor pertama dari partisi root.
Fitur GRUB
1. Menyediakan lingkungan pre-OS berbasis perintah. Fitur ini memungkinkan user untuk
menyertakan option pada saat masuk ke sistem operasi.
2. Mendukung mode Logical Block Addressing (LBA). Fitur ini memungkinkan boot loader
dapat membaca partisi di atas silinder 1024.
3. Dapat membaca partisi ext2. Fitur ini memungkinkan GRUB dapat membaca file
konfigurasinya yaitu /boot/grub/grub.conf setiap kali sistem di boot.
Cara kerja GRUB
Ketika komputer melakukan booting, BIOS akan melakukan pengecekan terhadap komputer
seperti jumlah RAM, waktu dan tanggal disk yang terpasang dan membaca media yang dianggap
sebagai boot media sesuai dengan konfigurasi pada BIOS. Proses pemanggilan GRUB meliputi
beberapa tahap yaitu :
14. Memanggil Primary Boot Loader.
Primary boot-loader berisi program dengan ukuran lebih kecil dari 512 bytes karena
diletakkan pada MBR, yang hanya berukuran sebesar 512 bytes. Kemudian memanggil
secondary boot-loader.
15. Memanggil Secondary
Secondary boot-loader akan membawa kita ke menu pilihan sistem operasi yang akan kita
jalankan. GRUB menjalankan dua pilihan utama yaitu pilihan menu sistem operasi dan menu
boot-loader command.
16. Memanggil Sistem Operasi pada posisi partisi tertentu
Dalam memanggil sistem operasi, GRUB mendapat instruksi tertentu untuk memanggil
sistem operasi tersebut. Instruksi ini bisa kita definisikan melalui konfigurasi GRUB, atau
kita ketikkan secara manual pada mode boot-loader command.
Instalasi GRUB
Berikut langkah-langkah menginstal GRUB :
1. Pastikan anda sudah memiliki paket GRUB pada sistem anda, baik dari tarball ataupun dari RPM.
2. Pada Konsol lakukan login sebagai root.
login: root
password: _
3. Dari shell prompt ketikkan :
# grub-install /dev/hda
4. Selanjutnya reboot sistem anda.
Untuk konfigurasi dapat negetikan perintah :
#vi /boot/grub/menu.lst
default 0
timeout 10
title Windows XP
root (hd0,0)
savedefault
makeactive
chainloader +1
title Ubuntu, kernel 2.6.15-26-386
root (hd0,1)
kernel /boot/vmlinuz-2.6.15-26-386 root=/dev/hda2
initrd /boot/initrd.img-2.6.15-26-386
savedefault
boot
#vi /boot/grub/menu.lst
default 0
timeout 10
title Windows XP
root (hd0,0)
savedefault
makeactive
chainloader +1
title Ubuntu, kernel 2.6.15-26-386
root (hd0,1)
kernel /boot/vmlinuz-2.6.15-26-386 root=/dev/hda2
initrd /boot/initrd.img-2.6.15-26-386
savedefault
boot
keterangan :
Default : Nomor dari OS yang secara default akan login, dimulai dari 0 untuk OS pertama dan seterusnya ,pada contoh diatas windows XP adalah defaultnya
Timeout : Lamanya waktu yang disediakan untuk memilih OS dalam detik, 10 detik pada contoh diatas
Title : Nama OS yang akan ditampilkan
Root : Menunjukan Letak partisi penulisannya dimulai dari 0
Kernel : Letak dari kernel , dan diikuti dengan penulisan letak partisi seperti pada konfigurasi lilo
Initrd : Letak dari initial ramdisk
beberapa penjelasan dari file yang ada di dalam /etc/inittab :
irqbalance : untuk menyeimbangkan gangguan pda CPU dimana kinerjanya dapat menjadi lebih baik.
isdn : mengatur layanan data yang diinterasikan ke dalam suatu jaringan.
killall : menghentikan semua proses yang sedang berjalan.
Krb524 : merupakan layanan autentikasi yang dikembangkan oleh MIT (Massachusetts Institute of Technology) untuk memungkinkan pengguna (user) dan layanan (service) untuk saling mengautentikasi satu dengan yang lainnya. Dengan kata lain, saling menunjukkan identitasnya.
kudzu : mendeteksi dan mengkonfigurasi perangkat keras baru dan / atau diubah pada sebuah sistem.
lvm2-monitor : aplikasi monitoring (Logical Volume Management) sistem LVM.
Mcstrans : daemon penerjemahan digunakan pada komputer dengan SELinux diaktifkan untuk menerjemahkan konteks program ke bentuk terbaca-manusia.
Mdmonitor : Pemantauan perangkat lunak RAID
mdmpd : Daemon untuk memonitor MD multipath perangkat
messagebus : D-BUS pertama sebuah perpustakaan yang menyediakan satu-ke-satu komunikasi antara dua aplikasi; dbus- daemon-1 adalah sebuah aplikasi yang menggunakan library ini untuk menerapkan daemon bus pesan. Beberapa program terhubung ke daemon bus pesan dan dapat bertukar pesan dengan satu sama lain.
microcode_ctl : Ini decodes dan mengirimkan microcode baru untuk driver kernel untuk diupload ke prosesor Intel IA32.(Pentium Pro, PII, PIII, Pentium 4, Celeron, Xeon dll - semua P6 dan di atas, yang TIDAK termasuk klasik pentium). Driver ini dirancang untuk mikroprosesor Intel IA32 saja, itu tidak akan bekerja dengan AMD atau Intel non-prosesor lain karena mereka tidak mendukung update microcode atau mereka mendukung dalam cara yang berbeda dari spesifikasi Intel.
Multipadhd : daemon bertanggung jawab untuk memeriksa jalur gagal. Ketika ini terjadi, maka akan mengkonfigurasi ulang peta multipath jalan milik, sehingga peta ini mendapatkan kembali kinerja maksimum dan redundansi.
Netconsole : modul kernel Linux memungkinkan Output dmesg untuk ditransmisikan melalui jaringan syslogd
netfs : Jaringan Filesystem Mounter. Dibutuhkan untuk mounting NFS, SMB dan saham NCP saat boot.
Netplugd : netplugd merupakan sebuah daemon yang merespon terhadap peristiwa link jaringan dari kernel Linux, seperti antarmuka jaringan kehilangan atau mengakuisisi sinyal pembawa.
Network : jaringan komunikasi yang ada pada linux.
Networkmanager : Jaringan antarmuka konfigurasi otomatis.
nfs : Jaringan Layanan Transfer File.
nfslock : Untuk membantu mengelola konflik dan melindungi akses file sesi selama kegagalan NFS, menawarkan
layanan file dan merekam mengunci disebut manajer kunci jaringan. Para manajer kunci jaringan adalah layanan terpisah NFS membuat tersedia untuk aplikasi pengguna. Untuk menggunakan layanan penguncian, aplikasi harus membuat panggilan ke rutinitas kunci standar.
Nscd : Nscd merupakan sebuah daemon yang menyediakan cache untuk permintaan nama yang paling umum layanan.
Ntpd : Para ntpd set dan memelihara sistem waktu hari di sinkron dengan server waktu Internet standar.Ini adalah implementasi lengkap dari Network Time Protocol (NTP) versi 4. Memungkinkan komputer lain untuk sinkronisasi waktu sistem dengan server Anda.
Oddjobd : menyediakan layanan com.redhat.oddjob di bus pesan sistem-lebar.
Pan (Personal Area Nerwork) : daemon memungkinkan komputer Anda untuk menghubungkan ke jaringan ethernet.
Pscsd : program daemon untuk pcsc-lite dan kerangka MuscleCard. Ini adalah manajer sumber daya yang mengkoordinasikan komunikasi dengan pembaca kartu pintar dan kartu pintar dan token kriptografi yang terhubung ke sistem.
Portmap : Layanan portmap tugas daemon port dinamis untuk layanan RPC seperti NIS dan NFS.
Psacct : Paket psacct berisi beberapa utilitas untuk kegiatan proses pemantauan, termasuk ac, lastcomm, accton dan sa.
Rawdevice : Blok perangkat. Link hardware untuk perangkat yang menyimpan data.
Rdisc : mengimplementasikan sisi klien dari router menemukan protokol ICMP.
readahead_early : Hard Disc membaca depan Cache
readahead_later : Hard Disc membaca belakang Cache