Panduan Dasar untuk Berbagai Tahapan Proses Boot Linux


Setiap kali Anda menyalakan PC Linux, ia melewati serangkaian tahapan sebelum akhirnya menampilkan layar login yang meminta nama pengguna atau kata sandi Anda. Ada 4 tahapan berbeda yang dilalui setiap distribusi Linux dalam proses boot-up.

Dalam panduan ini, kami akan menyoroti berbagai langkah yang diambil oleh OS Linux mulai dari saat dihidupkan hingga saat Anda masuk. Mohon dicatat bahwa panduan ini hanya mempertimbangkan bootloader GRUB2 dan systemd init karena saat ini digunakan oleh sebagian besar distribusi Linux modern.

Proses booting melalui 4 langkah berikut yang akan kita bahas lebih detail:

  • BIOS Pemeriksaan integritas (POST)
  • Memuat Boot loader (GRUB2)
  • Inisialisasi kernel
  • Memulai systemd, induk dari semua proses

1. Pemeriksaan Integritas BIOS (POST)

Proses booting biasanya dimulai saat pengguna menekan tombol power-on – jika PC telah dimatikan – atau melakukan boot ulang sistem menggunakan GUI atau baris perintah.

Saat sistem Linux menyala, BIOS (Basic Input Output System) akan aktif dan melakukan Power On Self Test (POST ). Ini adalah pemeriksaan integritas yang melakukan sejumlah besar pemeriksaan diagnostik.

POST menyelidiki pengoperasian perangkat keras komponen seperti HDD atau SSD, Keyboard, RAM<, port USB, dan perangkat keras lainnya. Jika beberapa perangkat keras tidak terdeteksi, atau jika ada kegagalan fungsi pada salah satu perangkat seperti HDD atau SSD yang rusak, pesan kesalahan akan muncul di layar yang meminta Anda melakukan intervensi.

Dalam beberapa kasus, bunyi bip akan berbunyi terutama jika modul RAM hilang. Namun jika perangkat keras yang diharapkan sudah ada dan berfungsi sesuai harapan, proses booting dilanjutkan ke tahap berikutnya.

2. Bootloader (GRUB2)

Setelah POST selesai dan pantai bersih, BIOS memeriksa MBR (Master Boot Record) untuk mengetahui informasi bootloader dan partisi disk.

MBR adalah kode 512-byte yang terletak di sektor pertama hard drive yang biasanya /dev/sda atau /dev/hda tergantung pada arsitektur hard drive Anda. Namun perlu diperhatikan bahwa terkadang MBR dapat ditemukan di instalasi Live USB atau DVD Linux.

Ada 3 jenis bootloader utama di Linux: LILO, GRUB, dan GRUB2. Bootloader GRUB2 adalah bootloader terbaru dan utama dalam distribusi Linux modern dan menginformasikan keputusan kami untuk mengabaikan dua bootloader lainnya yang sudah ketinggalan zaman seiring berjalannya waktu.

GRUB2 adalah singkatan dari GRand Unified Bootloader versi 2. Setelah BIOS menemukan bootloader grub2, ia akan mengeksekusi dan memuatnya ke memori utama (RAM).

Menu grub2 memungkinkan Anda melakukan beberapa hal. Ini memungkinkan Anda memilih versi kernel Linux yang ingin Anda gunakan. Jika Anda telah mengupgrade sistem Anda beberapa kali, Anda mungkin melihat versi kernel yang berbeda tercantum. Selain itu, ini memberi Anda kemampuan untuk mengedit beberapa parameter kernel dengan menekan kombinasi tombol keyboard.

Selain itu, dalam pengaturan dual-boot di mana Anda memiliki beberapa instalasi OS, menu grub memungkinkan Anda memilih OS mana yang akan digunakan untuk boot. File konfigurasi grub2 adalah file /boot/grub2/grub2.cfg. Tujuan utama GRUB adalah memuat kernel Linux ke memori utama.

3. Inisialisasi Kernel

Kernel adalah inti dari semua sistem Linux. Ini menghubungkan perangkat keras PC dengan proses yang mendasarinya. Kernel mengontrol semua proses di sistem Linux Anda. Setelah kernel Linux yang dipilih dimuat oleh bootloader, kernel tersebut harus mengekstrak sendiri dari versi terkompresi sebelum melakukan tugas apa pun. Setelah mengekstraksi sendiri, kernel yang dipilih memasang sistem file root dan menginisialisasi program /sbin/init yang biasa disebut sebagai init.

Init selalu merupakan program pertama yang dieksekusi dan diberi ID proses atau PID 1. Ini adalah proses init yang memunculkan berbagai daemon & memasang semua partisi yang ditentukan dalam /etc/ file fstab.

Kernel kemudian memasang disk RAM awal (initrd) yang merupakan sistem file root sementara hingga sistem file root sebenarnya dipasang. Semua kernel terletak di direktori /boot bersama dengan image disk RAM awal.

4.Memulai Sistemd

Kernel akhirnya memuat Systemd, yang merupakan pengganti init SysV yang lama. Systemd adalah induk dari semua proses Linux dan mengelola antara lain pemasangan sistem file, memulai dan menghentikan layanan, dan masih banyak lagi.

Systemd menggunakan file /etc/systemd/system/default.target untuk menentukan status atau target di mana sistem Linux harus melakukan booting.

  • Untuk stasiun kerja desktop (dengan GUI) nilai target defaultnya adalah 5 yang setara dengan run level 5 untuk init SystemV lama.
  • Untuk server, target defaultnya adalah multi-user.target yang sesuai dengan run level 3 di SysV init.

Berikut rincian target systemd:

  • poweroff.target (runlevel 0): Mematikan atau Mematikan sistem.
  • rescue.target (runlevel 1): meluncurkan sesi shell penyelamat.
  • multi-user.target (runlevel 2,3,4): Mengonfigurasi sistem ke sistem multi-pengguna non-grafis (konsol).
  • graphical.target (runlevel 5): Mengatur sistem untuk menggunakan antarmuka grafis multi-pengguna dengan layanan jaringan.
  • reboot.target (runlevel 6): mem-boot ulang sistem.

Untuk memeriksa target saat ini di sistem Anda, jalankan perintah:

systemctl get-default

Anda dapat beralih dari satu target ke target lainnya dengan menjalankan perintah berikut di terminal:

init runlevel-value

Misalnya, init 3 mengkonfigurasi sistem ke keadaan non-grafis.

Perintah init 6 akan me-reboot sistem Anda dan init 0 mematikan sistem. Pastikan untuk menjalankan perintah sudo ketika Anda ingin beralih ke dua target ini.

Proses booting berakhir setelah systemd memuat semua daemon dan menetapkan nilai target atau tingkat proses. Pada titik inilah Anda diminta memasukkan nama pengguna dan kata sandi yang digunakan untuk masuk ke sistem Linux Anda.