LINUX FROM SCRATCH
Pengantar
Buku Linux From Scratch adalah pokok utama untuk membangun
sendiri suatu system operasi Linux. Di dalamnya terserdia latar dan instruksi
yang di perlukanmu untuk membangun dan mendesain system sendiri. Buku ini
ditulis oleh Gerrad Beekmans.
Banyak keuntungan kita membangun Linux system from scratch
daripada hanya mendownload dan langsung menginstal yang sudah ada. Satu hal
yang terpenting adalah kita belajar mengetahui bagaimana system Linux bekerja
dari dalam dan luar. Selain itu kita dapat memiliki kemampuan untuk meng customize system Linux menjadi kebutuhan
kita yang unik, mempunyai control sistem lebih dalam, membuat system Linux yang
kompleks, dan membangun keamanan.
Target Arsitektur LFS
Target utama arsitektur LFS adalah AMD/Intel x86 (32-bit)
dan x86_64 (64-bit) CPU. Jika kita memiliki lebih dari 4GB RAM atau ingin
memanipulasi data melebihi 4GB, keuntungan dari 64-bit system akan banyak
sekali.
LFS dan Standar
- POSIX.1-2008.
- Filesystem Standar Hirerarki versi 3.0 Draft 1 (FHS)
- Linux Standard Base (LSB) spesifikasi
- LSB memiliki 5 standar yang terpisah : Core, C++, Desktop, Runtime Languages, dan Printing.
Packages yang disediakan LFS untuk memenuhi requirements LSB
- LSB Core: Bash, Bc, Binutils, Coreutils, Diffutils, File, Findutils, Gawk, Grep, Gzip, M4, Man
- DB, Ncurses, Procps, Psmisc, Sed, Shadow, Tar, Util-linux, Zlib
- LSB C++: Gcc
- LSB Desktop: None
- LSB Runtime Languages: Perl
- LSB Printing: None
- LSB Multimeda: None
Packages yang disediakan BLFS untuk memenuhi requirements LSB
- LSB Core: At, Batch (a part of At), Cpio, Ed, Fcrontab, Initd-tools, Lsb_release, PAM,
- Sendmail (or Postfix or Exim)
- LSB C++: None
- LSB Desktop: ATK, Cairo, Desktop-file-utils, Freetype, Fontconfig, Glib2, GTK+2, Icon-
- naming-utils, Libjpeg, Libpng, Libxml2, MesaLib, Pango, Qt4, Xorg
- LSB Runtime Languages: Python
- LSB Printing: CUPS
- LSB Multimeda: Alsa Libraries, NSPR, NSS, OpenSSL, Java, Xdg-utils
Packages yang tidak disediakan oleh LFS atau BLFS untuk memenuhi requirements LSB
- LSB Core: time (executable) and pax
- LSB C++: None
- LSB Desktop: Qt3
- LSB Runtime Languages: None
- LSB Printing: None
- LSB Multimeda: None
Rationale for Packages in the Book
Tujuan dari LFS adalah membangun dasar pondasi level sistem
secara lengkap dan dapat digunakan. Dibawah ini merupakan dasar pemikiran untuk
setiap package :
- · Autoconf
- · Automake
- · Bash
- · Bc
- · Binutils
- · Bison
- · Bzip2
- · Check
- · Coreutils
- · DejaGNU
- · Diffutils
- · E2fsprogs
- · Expect
- · File
- · Findutils
- · Flex
- · Gawk
- · Gcc
- · GDBM
- · Gettext
- · Glibc
- · GMP
- · Grep
- · Groff
- · GRUB
- · Gzip
- · Iana-etc
- · Inetutils
- · IProute2
- · Kbd
- · Kmod
- · Less
- · Libpipipeline
- · Libtool
- · Linux Kernel
- · M4
- · Make
- · Man-DB
- · Man-pages
- · MPC
- · MPFR
- · Ncurses
- · Patch
- · Perl
- · Pkg-config
- · Procps-NG
- · PSMISC
- · Readline
- · Sed
- · Shadow
- · Sysklogd
- · Sysvinit
- · Tar
- · Tcl
- · Texinfo
- · Udev
- · Util-Linux
- · Vim
- · XZ Utils
- · Zlib
Persyaratan
Membangun LFS system bukanlah pekerjaan yang mudah. Ini
membutuhkan pengetahuan yang luas tentang Unix
system administration untuk mengatasi masalah dan memperbaiki perintah yang
dijalankan.
Sebelum membangun system LFS, kita merekomendasikan pembaca
untuk membaca referensi :
- · Software-Building-HOWTO http://www.tldp.org/HOWTO/Software-Building-HOWTO.html
- · The Linux Users' Guide http://tldp.org/pub/Linux/docs/ldp-archived/users-guide/
- · The Essential Pre-Reading Hint http://www.linuxfromscratch.org/hints/downloads/files/essential_prereading.txt
Host System Requirements
Host system harus mengikuti
software minimum versi yang telah
diindikasikan. Versi terbaru dari yang di list mungkin bekerja, tetapi belum
pernah dicoba.
•
Bash-3.2
•
Binutils-2.17 (Versions greater than 2.24 are
not recommended as they have not been tested)
•
Bison-2.3
•
Bzip2-1.0.4
•
Coreutils-6.9
•
Diffutils-2.8.1
•
Findutils-4.2.31
•
Gawk-4.0.1 (/usr/bin/awk shou
•
GCC-4.1.2 including the C++ compiler, g++
(Versions greater than 4.8.2 are not recommended as they have not been tested)
•
Glibc-2.5.1 (Versions greater than 2.19 are not
recommended as they have not been tested)
•
Grep-2.5.1a
•
Gzip-1.3.12
•
Linux Kernel-2.6.32
•
M4-1.4.10
•
Make-3.81
•
Patch-2.5.4
•
Perl-5.8.8
•
Sed-4.1.5
•
Tar-1.18
•
Xz-5.0.0
Typography
Untuk membuat hal ini mudah diikuti, ada beberapa typographical atau cara penulisan.
./configure --prefix=/usr
CC=”gcc -B/usr/bin/” ../binutils-2.18/configure \Perhatikan bahwa backslash harus diikuti dengan segera kembali. Karakter spasi lain seperti spasi atau tab karakter akan menciptakan hasil yang salah.
–prefix=/tools –disable-nls –disable-werror
install-info: unknown option ‘–dir-file=/mnt/lfs/usr/info/dir’
Bentuk teks (fixed-width teks) menunjukkan output layar, biasanya sebagai hasil dari perintah yang dikeluarkan. Format ini juga digunakan untuk menunjukkan nama file, seperti /etc/ld.so.conf.
Penekanan bentuk teks digunakan untuk beberapa tujuan dalam buku ini.
http://www.linuxfromscratch.org/
Format ini digunakan untuk hyperlink baik dalam komunitas LFS dan ke halaman eksternal. Ini termasuk HOWTO, ambil lokasi, dan situs web.
cat > $LFS/etc/group << “EOF”
root:x:0:
bin:x:1:
……
EOF
Format ini digunakan saat membuat file konfigurasi. Perintah pertama memberitahu sistem untuk membuat file $ LFS / etc / kelompok dari apa pun yang diketik pada baris berikut sampai akhir urutan Of file (EOF) ditemui.
Format ini digunakan untuk merangkum teks yang tidak diketik seperti yang terlihat atau untuk operasi copy-and-paste.
[OPTIONAL TEXT]
Format ini digunakan untuk merangkum teks yang bersifat opsional.
passwd(5)
Format ini digunakan untuk merujuk kepada manual (man) halaman tertentu. Misalnya, passwd memiliki dua halaman manual. Per petunjuk instalasi LFS, dua halaman manual akan berlokasi di /usr/share/man/man1/passwd.1 dan /usr/share/man/man5/passwd.5. Ketika buku menggunakan passwd (5) secara khusus mengacu /usr/share/man/man5/passwd.5. man passwd akan mencetak halaman manual pertama ditemukan yang cocok “passwd”, yang akan /usr/share/man/man1/passwd.1. Untuk contoh ini, Anda akan perlu menjalankan man 5 passwd untuk membaca halaman tertentu yang dimaksud. Perlu dicatat bahwa sebagian besar halaman manual tidak memiliki nama halaman duplikat dalam bagian yang berbeda.
0 komentar:
Posting Komentar