DEV Community

Rizky Amrullah
Rizky Amrullah

Posted on

Belajar Linux OS - #3 Bootloader

Bootloader adalah "sesuatu" yang bikin komputer kita menyala (boot up).

Kita mungkin sering melihat pesan sekilas pada monitor kita seperti "Your computer is starting up".

Ketika pesan sekilas ini muncul, bagian bootloader dari OS sedang bekerja di belakang layar (background), memastikan komputer kita siap dipake.

Bootloader adalah bagian dari Master Boot Record (MBR) yang mana MBR adalah bagian dari OS.

Bootloader itu kerjanya ngapain sih? Dia itu kerjanya nge-load OS ke RAM komputer kita.

Umumnya Bootloader Linux itu berisi:

  • GRUB (GRand Unified Bootloader)
  • LILO (LInux LOader)
  • Syslinux yang mana campuran dari banyak bootloader-bootloader ringan yang bikin komputer kita berhasil boot dari berbagai macam metode, seperti dari CD, DVD, USB bahkan dari LAN.

Untuk mengetahui apa itu bootloader yang kita pake sekarang, kita bisa ketikkan perintah file -s.

Tapi sebelum kita mencari bootloader tersebut, kita harus cari tahu dimana sih bootdisk itu.

Untuk mencari tahu dimana bootdisk, kita perlu perintah fdisk -l

$ fdisk -l
Disk /dev/vda: 245.1 GiB, 263217741824 bytes, 514097152 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x58ca730c

Device     Boot     Start       End   Sectors   Size Id Type
/dev/vda1  *         2048 503758847 503756800 240.2G 83 Linux
/dev/vda2       503760894 511997951   8237058     4G  5 Extended
/dev/vda5       503760896 511997951   8237056     4G 82 Linux swap / Solaris
Enter fullscreen mode Exit fullscreen mode

Jika kita perhatikan pada bagian Boot, ada salah satu baris yang ada tanda bintangnya ()(asterisk). Nah device yang ada bintangnya itu adalah **bootdisk*, dalam hal ini /dev/vda1.

Sekarang, ketikkan perintah file -s /dev/vda1. -s pada perintah tersebut berarti special files dan bootloader adalah special file di Linux OS. Perintah tersebut akan ngasih kita informasi tentang "bootloader itu apa sih?". Berikut kira-kira output dari perintah tersebut.

$ file -s /dev/vda1
/dev/vda1: Linux rev 1.0 ext4 filesystem data, UUID=cef09b81-ccb0-45a2-b61a-622e3665d87e (needs journal recovery) (extents) (large files) (huge files)
Enter fullscreen mode Exit fullscreen mode

Jika kalian perhatikan, output dari perintah tersebut tidak memuat secara eksplisit nama bootloader.

Jadi, yang bisa kita lakukan sekarang adalah pake perintah dmesg dan grep dan cari kata BOOT.

Ketikkan perintah dmesg | grep BOOT_IMAGE. Perintah tersebut akan nyari kata BOOT di kernel messages dan ngasih tau kita detail dari BOOT_IMAGE.

Ketika kita jalanin perintah tersebut, kira-kira akan muncul seperti ini:

$ dmesg | grep BOOT_IMAGE
[    0.000000] Command line: BOOT_IMAGE=/boot/vmlinuz-4.4.0-193-generic root=UUID=cef09b81-ccb0-45a2-b61a-622e3665d87e ro quiet nosplash console=tty1 console=ttyS0 quiet nosplash console=tty1 console=ttyS0
[    0.000000] Kernel command line: BOOT_IMAGE=/boot/vmlinuz-4.4.0-193-generic root=UUID=cef09b81-ccb0-45a2-b61a-622e3665d87e ro quiet nosplash console=tty1 console=ttyS0 quiet nosplash console=tty1 console=ttyS0
Enter fullscreen mode Exit fullscreen mode

Coba perhatikan di bagian Kernel command line, kita akan menemukan kata BOOT_IMAGE=/boot/vmlinuz-4.4.0-193-generic.

Linux Loader (LILO) selalu memasukkan kata BOOT_IMAGE=[Kernelname] ke dalam kernel, dimana [KernelName] adalah nama dari kernelnya.
Dari sini kita bisa tau kalau bootloader yang dipake sekarang adalah LILO.

Btw, kalau dari sudut pandang seorang hacker, sangat penting untuk tahu kalau virus Bootloader komputer merusak bagian bootloader dari OS yang membuat komputer tidak bisa menyala (booting), yang berakibat pada denial of service atau DoS attack.

Discussion (0)