OS: PRAKTIKUM — Custom Kernel Ubuntu

From OnnoWiki
Revision as of 07:15, 14 February 2026 by Onnowpurbo (talk | contribs) (Created page with "PRAKTIKUM 4 — Custom Kernel Ubuntu Tujuan Praktikum ini bertujuan membawa mahasiswa satu tingkat lebih dekat ke dunia kernel engineer. Mahasiswa tidak hanya meng-compile ker...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

PRAKTIKUM 4 — Custom Kernel Ubuntu Tujuan Praktikum ini bertujuan membawa mahasiswa satu tingkat lebih dekat ke dunia kernel engineer. Mahasiswa tidak hanya meng-compile kernel, tetapi juga: Memberi identitas kernel sendiri Menambahkan dukungan file system Windows Mem-boot sistem menggunakan kernel hasil karyanya Pada tahap ini, mahasiswa akan menyadari bahwa kernel Linux adalah sistem yang sangat dapat dikustomisasi, sebagaimana ditekankan dalam sistem-operasi-3.pdf bahwa kernel bukan artefak statis, melainkan living system yang dapat dibentuk sesuai kebutuhan . Compile Kernel Sendiri Konteks Akademik Kernel Linux merupakan komponen paling kritis dari sistem operasi. Ia mengelola CPU, memori, I/O, filesystem, dan device driver. Dengan meng-compile kernel sendiri, mahasiswa: Memahami struktur internal kernel Melihat langsung dampak konfigurasi terhadap sistem Menghilangkan persepsi bahwa kernel adalah black box Persiapan Lingkungan Build (Ubuntu 24.04) Pastikan semua dependency tersedia. sudo apt update sudo apt install -y \

 build-essential \
 libncurses-dev \
 bison \
 flex \
 libssl-dev \
 libelf-dev \
 dwarves \
 bc \
 git

Catatan penting: Kernel Ubuntu modern mewajibkan dukungan BTF, sehingga paket dwarves harus terpasang, jika tidak proses build akan gagal.

Mengambil Kernel Source mkdir -p ~/kernel cd ~/kernel wget https://cdn.kernel.org/pub/linux/kernel/v6.x/linux-6.8.tar.xz tar -xvf linux-6.8.tar.xz cd linux-6.8 Menggunakan Konfigurasi Kernel Ubuntu Agar aman dan stabil, gunakan konfigurasi kernel yang sedang berjalan. cp /boot/config-$(uname -r) .config make oldconfig Tekan Enter untuk menerima nilai default. Pendekatan ini dianjurkan dalam sistem-operasi-3.pdf untuk menghindari kegagalan boot pada pemula . Compile Kernel Awal make -j$(nproc) ⏱ Estimasi waktu: VM: 20–40 menit Bare metal: 10–25 menit Enable / Disable Fitur Kernel Masuk ke Menu Konfigurasi make menuconfig Di sinilah mahasiswa secara aktif “mendesain” kernel-nya sendiri. Contoh Enable / Disable Fitur (Aman & Edukatif) Menonaktifkan Sound Driver Cocok untuk server dan VM. Device Drivers

└── Sound card support

Ubah menjadi: Sound card support = [ ] Dampak: Kernel lebih kecil Boot lebih cepat Tidak ada driver audio yang dimuat Memastikan File System Penting Aktif Masuk ke: File systems Pastikan aktif (y): EXT4 filesystem support Pseudo filesystems /proc & /sys filesystem Filesystem root yang tidak aktif = kernel tidak bisa boot. Menambahkan Nama Versi Kernel (Identitas Kernel) Konsep Version Signature Kernel Linux menyediakan opsi untuk menambahkan string identitas khusus, sangat berguna untuk: Identifikasi kernel custom Debugging Dokumentasi praktikum Menambahkan Nama Kernel di menuconfig Masuk ke: General setup

└── Local version - append to kernel release

Isi dengan: -itts-custom-kernel Contoh hasil: 6.8.0-itts-custom-kernel Praktik ini sangat dianjurkan dalam pembelajaran, agar mahasiswa tidak tertukar dengan kernel bawaan distro.

Simpan Konfigurasi Simpan dan keluar dari menuconfig. File .config akan diperbarui. Menambahkan File System Windows (NTFS & FAT) Konteks Akademik Dalam lingkungan dual-boot atau data exchange, Linux sering berinteraksi dengan file system Windows. Oleh karena itu, kernel harus memiliki dukungan filesystem yang sesuai. Mengaktifkan NTFS & FAT di Kernel Masuk ke: File systems

└── DOS/FAT/NT Filesystems

Aktifkan: FAT filesystem support VFAT (Windows-95) fs support NTFS filesystem support NTFS write support (opsional, untuk eksperimen) Set sebagai: y (built-in) atau m (module, disarankan) Module lebih fleksibel dan aman untuk sistem produksi. Dampak Praktis Setelah kernel ter-boot: lsmod | grep ntfs Atau mount filesystem Windows: sudo mount -t ntfs /dev/sdb1 /mnt

Recompile & Install Kernel Recompile Kernel make -j$(nproc) Install Module & Kernel

sudo make modules_install sudo make install Secara otomatis: Kernel disalin ke /boot initramfs dibuat GRUB diperbarui Boot Kernel Hasil Compile Reboot System sudo reboot Saat boot: Tekan Shift / Esc Masuk menu GRUB Pilih kernel dengan nama: 6.8.0-itts-custom-kernel Verifikasi Kernel Aktif uname -r Contoh output: 6.8.0-itts-custom-kernel Kernel custom berhasil dijalankan

Troubleshooting Wajib Kernel Tidak Muncul di GRUB sudo update-grub Kernel Gagal Boot Langkah aman: Pilih kernel lama di GRUB Login normal Perbaiki .config Recompile Kernel lama adalah “lifeboat” mahasiswa. Refleksi Akademik & OBE Praktikum ini secara langsung memenuhi profil lulusan: System Builder → membangun kernel sendiri Kernel Tinkerer → mengatur fitur & filesystem Low-Level Engineer Mindset → memahami konsekuensi konfigurasi Filosofi-nya, keberanian menyentuh kernel adalah kunci membangun kepercayaan diri mahasiswa di dunia sistem operasi . Challenge Mandiri (Fun & Menantang) Tambahkan tag nama sendiri pada kernel Bandingkan ukuran kernel sebelum & sesudah NTFS Uji mount partisi Windows di VM Dokumentasikan perubahan .config


Pranala Menarik