- Panduan langkah demi langkah yang membantu pengguna membangun sistem Linux langsung dari source code
- Versi 12.4 dirilis pada 1 September 2025, mencakup kernel 6.16.1 terbaru, GCC 15.2.0, Glibc 2.42, dan lainnya
- Mencakup seluruh proses mulai dari menyusun cross-toolchain, menginstal temporary tools, hingga menyelesaikan sistem yang dapat di-boot
- Setiap bab disajikan secara rinci dengan pemisahan daftar paket, urutan build, prosedur pengujian, dan konfigurasi sistem
- Menjadi referensi penting bagi developer dan system engineer untuk mempelajari struktur internal Linux dan membuat distribusi kustom
Ikhtisar
- Linux From Scratch(LFS) adalah proyek yang dirancang agar pengguna dapat membangun sistem Linux sendiri tanpa distribusi yang sudah ada
- Menjelaskan langkah demi langkah proses kompilasi dan konfigurasi seluruh komponen dari source code
- Didirikan oleh Gerard Beekmans, dengan penyuntingan pemeliharaan oleh Bruce Dubbs
- Dokumen tersedia dalam bentuk manual online berbasis HTML, dengan tautan rinci dan versi paket untuk setiap tahap
Informasi versi
- Versi stabil saat ini adalah 12.4, dirilis pada 1 September 2025
- Hak cipta dimiliki oleh Gerard Beekmans untuk periode 1999–2025
- Rilis terbaru mencakup paket utama seperti Linux 6.16.1, GCC 15.2.0, Glibc 2.42, dan Python 3.13.7
Struktur dokumen
- Dokumen terdiri dari 5 bagian utama: kata pengantar, persiapan build, pembangunan cross-toolchain, build sistem, konfigurasi boot, dan lampiran
- Kata Pengantar(Preface) : menjelaskan pembaca sasaran, pengetahuan yang dibutuhkan, kepatuhan terhadap standar, alasan pemilihan paket, dan lain-lain
- Persiapan Build(Preparing for the Build) : mencakup kebutuhan host system, pembuatan partisi, pengaturan environment variable, dan lainnya
- Membangun LFS Cross Toolchain dan Temporary Tools(Building the LFS Cross Toolchain and Temporary Tools) : menyusun komponen compiler inti seperti Binutils, GCC, dan Glibc
- Membangun Sistem LFS(Building the LFS System) : instalasi dan konfigurasi software sistem utama
- Membuat Sistem LFS Dapat Di-boot(Making the LFS System Bootable) : kompilasi kernel dan konfigurasi GRUB
- Lampiran(Appendices) : mencakup singkatan, dependensi, boot script, lisensi, dan lainnya
Komponen utama
- Daftar paket mencakup lebih dari 100 utilitas inti dan library
- Contoh: Coreutils 9.7, Bash 5.3, Perl 5.42.0, Python 3.13.7, OpenSSL 3.5.2, Systemd Udev 257.8
- Untuk setiap paket, langkah instalasi, pengujian, dan pembersihan(cleanup) dijabarkan secara spesifik
- Termasuk boot script berbasis SysVinit 3.14 dan konfigurasi bootloader GRUB 2.12
Konfigurasi sistem dan boot
- Bab 9(System Configuration) membahas jaringan, locale, manajemen perangkat, pengaturan input, dan lainnya
- Bab 10(Making the LFS System Bootable) mencakup proses penulisan
/etc/fstab, build kernel, dan konfigurasi GRUB
- Bab 11(The End) memandu reboot sistem dan materi pembelajaran lanjutan
Lampiran dan lisensi
- Lampiran D mencakup versi script
boot dan sysconfig 20250827
- Lampiran F menyatakan dua lisensi: Creative Commons dan MIT License
- Menyediakan materi referensi seperti daftar dependensi, glosarium, dan ucapan terima kasih
Makna
- LFS adalah proyek pendidikan dan riset yang memungkinkan pengguna mengalami langsung prinsip penyusunan dan sistem build Linux
- Digunakan oleh administrator sistem, developer distribusi, dan peneliti keamanan sebagai referensi standar untuk membangun lingkungan Linux minimal
1 komentar
Komentar Hacker News
Dimulai pada 1999 dan digunakan hingga 2001, tetapi akhirnya ditinggalkan karena manajemen dependensi dan kompilasi ulang terlalu menyulitkan
Saat itu dokumentasinya belum sedetail sekarang sehingga banyak hal harus ditelusuri sendiri, dan ada banyak paket yang tidak umum
Meski begitu, masa beralih ke Slackware sambil membangun sendiri paket seperti XFree86 dan GNOME serta ikut berkontribusi tetap terasa menyenangkan
Jika ada waktu, sangat disarankan untuk mencobanya. Cara pandang terhadap Linux akan benar-benar berubah
Sekarang rasanya layak dicoba lagi di mesin virtual
Kekuatan sejati LFS/BLFS adalah kita bisa menyesuaikan sistem dengan kebutuhan sendiri
Saya melacak 4000 proyek dengan skrip Ruby. Jika gem-coop menjadi alternatif untuk rubygems.org komersial, saya berencana membuka kembali proyek saya
Saya memang tidak benar-benar memakai sistem yang sudah jadi, tetapi beberapa malam yang dihabiskan untuk itu tetap sangat berharga
Saya rasa kemudahan akses informasi adalah salah satu alasan besar pertumbuhan Linux
Saat kecil, membangun LFS membuat saya belajar bahwa kita bisa mengakses komputer sampai level paling bawah
Hanya saja Gentoo atau Arch bisa memberi efek belajar yang mirip dengan waktu instalasi yang jauh lebih singkat
Banyak orang bilang, “Saya akan pakai LFS, bukan Gentoo,” tetapi kebanyakan menyerah di tengah jalan atau jadi membenci distro berbasis source selamanya
Slackware dan LFS diibaratkan seperti Haskell, dengan maksud bahwa jika terlalu ekstrem maka jadinya tidak produktif
LFS punya dokumentasi yang kaya, dan meskipun Slackware sudah tertinggal zaman, usaha Patrick tetap luar biasa
Saya mengumpulkan komponen PC 386/486 dari gudang daur ulang PC di Seattle, merakitnya, lalu memasang Linux
Saya tumbuh belajar Linux lewat komputer Frankenstein yang saya buat seperti itu
Dengan sistem berbasis RPM, fitur transaksi dnf memungkinkan riwayat instalasi dan rollback sehingga pengelolaan jauh lebih mudah
Sekali mengikuti buku itu untuk membuat OS, akan lebih mudah memahami perbedaan antar distro lain dan timbul rasa kepemilikan terhadap sistem
Karena ini cross-compiling untuk ARMv6, tingkat kesulitannya sangat tinggi, tetapi saya belajar banyak
Saya mengotomatisasi build dengan Jenkins, dan menyusun sistem dengan skrip bash serta Makefile
Citra akhirnya sekitar 40MB, dan itu sendiri terasa membanggakan
Saya terkesan dengan kalimat “jangan pernah melewati pengujian”
Karena glibc juga mengizinkan sebagian tes gagal, saya pun memasukkan kalimat serupa ke dalam pengujian perangkat lunak saya
Saat melihat peringatan “jika langkah ini dilanggar, sistem bisa rusak”, saya merasa ini seperti distribusi Linux ala Dark Souls
Saat mengompilasi ulang kernel, banyaknya opsi memang melelahkan, tetapi proses belajar seperti inilah daya tarik Linux
Ini budaya yang sulit ditemukan di OS lain, terutama Windows
Saya jadi penasaran apakah ada versi LFS untuk BSD