Kata Pengantar
Perjalanan saya untuk belajar dan lebih
memahami Linux mulai lebih dari satu dekade yang lalu, kembali pada tahun 1998
saya baru saja diinstal pertama saya Distribusi Linux dan dengan cepat menjadi
tertarik dengan seluruh konsep dan filosofi di balik Linux.Selalu ada banyak cara untuk menyelesaikan
satu tugas. Hal yang sama dapat dikatakan tentang distribusi Linux. Banyak
sekali telah ada selama bertahun-tahun. Beberapa
masih ada, beberapa telah berubah menjadi sesuatu yang lain, namun orang lain
telah terdegradasi
untuk kenangan kita.
Mereka semua melakukan
sesuatu yang berbeda untuk memenuhi kebutuhan audiens target mereka. Karena
begitu banyak yang berbeda cara untuk mencapai tujuan akhir yang sama
ada, aku mulai menyadari saya tidak lagi harus dibatasi oleh salah satu
implementasi. Sebelum menemukan Linux, kita hanya
memasang dengan masalah dalam Sistem Operasi lain seperti yang Anda tidak punya
pilihan. Itu adalah apa yang itu, apakah Anda menyukainya atau tidak.
Dengan Linux, konsep pilihan mulai muncul. Jika Anda tidak menyukai sesuatu, Anda bebas, bahkan dianjurkan, untuk
mengubahnya.
Salah satu alasan penting untuk keberadaan
proyek ini adalah untuk membantu Anda belajar bagaimana sistem Linux bekerja
dari dalam ke luar.Membangun sistem LFS membantu menunjukkan
apa yang membuat Linux kutu, dan bagaimana segala sesuatu bekerja bersama-sama
dan saling bergantung satu sama
lainnya. Salah satu hal terbaik yang
pengalaman belajar ini dapat memberikan adalah kemampuan untuk menyesuaikan
sistem Linux untuk sesuai dengan kebutuhan unik Anda sendiri. Manfaat utama lain dari LFS adalah bahwa
hal itu memungkinkan Anda untuk memiliki kontrol atas sistem tanpa bergantung
pada orang lain adalah Implementasi Linux.
Dengan LFS, Anda berada
di kursi pengemudi dan mendikte setiap aspek dari sistem. LFS memungkinkan Anda untuk membuat sistem
Linux yang sangat kompak. Ketika menginstal distribusi biasa, Anda sering
dipaksa untuk menginstal banyak program besar yang
mungkin tidak pernah digunakan atau dipahami. Program-program ini buang sumber
daya. Anda mungkin berpendapat bahwa dengan hard drive
saat ini dan CPU, sumber daya tersebut tidak lagi menjadi pertimbangan.
Kadang-kadang, bagaimanapun, Anda masih dibatasi oleh pertimbangan
ukuran jika tidak ada lagi. Pikirkan tentang CD bootable, stik USB, dan
tertanam sistem. Mereka adalah daerah di mana LFS
dapat bermanfaat.
Keuntungan lain dari sistem Linux kustom
dibangun adalah keamanan. Dengan mengumpulkan seluruh sistem dari kode sumber,
Anda diberdayakan untuk mengaudit semuanya dan
menerapkan semua patch keamanan yang diinginkan. Hal ini tidak lagi diperlukan
untuk menunggu seseorang lain untuk mengkompilasi paket binary yang
memperbaiki lubang keamanan. Kecuali Anda memeriksa patch dan melaksanakan
sendiri, Anda tidak memiliki jaminan bahwa paket biner
baru dibangun dengan benar dan memadai perbaikan masalah. Tujuan dari Linux From Scratch adalah untuk
membangun sebuah sistem pondasi tingkat lengkap dan dapat digunakan.
Jika Anda
tidak ingin membangun sistem Linux Anda sendiri dari awal, Anda
mungkin tidak sepenuhnya manfaat dari informasi dalam buku ini. Ada terlalu banyak alasan lain untuk
membangun sistem Anda sendiri LFS untuk daftar mereka semua di sini. Pada
akhirnya, pendidikan adalah dengan yang paling kuat alasan. Ketika Anda terus
dalam pengalaman LFS Anda, Anda akan menemukan kekuatan informasi yang dan pengetahuan yang benar-benar membawa.
LFS Sasaran Arsitektur
Arsitektur Target utama LFS adalah AMD /
Intel x86 (32-bit) dan x86_64 (64-bit) CPU. Di sisi lain, petunjuk di buku ini juga dikenal untuk
bekerja, dengan beberapa modifikasi, dengan Power PC dan ARM CPU. Untuk membangun sistem yang memanfaatkan
salah satu dari CPU ini, prasyarat utama, di samping orang-orang di beberapa
halaman berikutnya, adalah sistem Linux yang sudah ada seperti
instalasi sebelumnya LFS, Ubuntu, Red Hat / Fedora, SuSE, atau distribusi lain
yang menargetkan arsitektur yang Anda miliki.
Juga mencatat bahwa distribusi 32-bit dapat diinstal dan digunakan sebagai
sistem host pada 64-bit AMD / Intel komputer. Beberapa fakta lain tentang sistem 64-bit
perlu ditambahkan di sini. Bila dibandingkan dengan sistem 32-bit, ukuran
executable program sedikit lebih besar dan kecepatan
eksekusi hanya sedikit lebih cepat. Misalnya, dalam membangun uji LFS-6.5 pada sistem Core2Duo CPU berbasis,
statistik berikut diukur:
Arsitektur Build Waktu Build Ukuran
32-bit 198,5 menit 648 MB
64-bit 190,6 menit 709 MB
Seperti yang Anda lihat, 64-bit membangun
hanya 4% lebih cepat dan 9% lebih besar dari 32-bit membangun. Keuntungan dari
pergi ke 64-bit sistem yang relatif minim. Tentu saja, jika
Anda memiliki lebih dari 4GB RAM atau ingin memanipulasi data yang melebihi 4GB, keuntungan dari sistem 64-bit
substansial.
Standar 64-bit membangun yang dihasilkan
dari LFS dianggap sebagai "murni" sistem 64-bit. Artinya, mendukung
64-bit executables saja. Membangun "multi-lib"
sistem memerlukan kompilasi banyak aplikasi dua kali, sekali untuk sistem
32-bit dan sekali untuk sistem 64-bit. Hal ini tidak secara
langsung didukung di LFS karena akan mengganggu tujuan pendidikan memberikan instruksi yang diperlukan untuk
dasar sederhana sistem Linux. Anda dapat merujuk kepada Palang Linux Dari Proyek awal untuk topik canggih ini.
LFS dan Standar
Struktur LFS mengikuti standar Linux
semaksimal mungkin. Standar utama adalah:
• POSIX.1-2008.
• Filesystem Hierarchy Standard versi 3.0
Draft 1 (FHS)
• Linux Standard Base (LSB) Spesifikasi
LSB memiliki lima standar terpisah: Inti, C
++, Desktop, Runtime Bahasa, dan Percetakan. Selain itu
persyaratan generik ada juga persyaratan
khusus arsitektur. LFS mencoba agar sesuai dengan
arsitektur dibahas dalam bagian sebelumnya.
Paket yang disediakan oleh LFS diperlukan
untuk memenuhi LSB Persyaratan
LSB Inti: Bash, Bc, Binutils, Coreutils,
diffutils, Berkas, Findutils, melongo, Grep, Gzip, M4, Man-
DB, ncurses, procps, Psmisc, Sed, Shadow,
Tar, Util-linux, Zlib
LSB C ++: GCC
LSB Desktop: Tidak ada
LSB Runtime Bahasa: Perl
LSB Cetakan: Tidak ada
LSB Multimeda: Tidak ada
Paket yang disediakan oleh BLFS diperlukan
untuk memenuhi LSB Persyaratan
LSB Inti: Pada, Batch (bagian dari At),
cpio, Ed, fcrontab, Initd-tools, lsb_release, PAM,
Sendmail (atau Postfix atau Exim)
LSB C ++: Tidak ada
LSB Desktop: ATK, Kairo,
Desktop-file-utils, freetype, fontconfig, Glib2, GTK + 2, Iconnaming-
utils, libjpeg, libpng, libxml2, MesaLib,
Pango, Qt4, Xorg
LSB Runtime Bahasa: Python
LSB Cetakan: CUPS
Paket yang tidak disediakan oleh LFS atau
BLFS diperlukan untuk memenuhi LSB Persyaratan
LSB Inti: waktu (executable) dan pax
LSB C ++: Tidak ada
LSB Desktop: Qt3
LSB Runtime Languages: None
LSB Cetakan: Tidak ada
LSB Multimeda: Tidak ada
Alasan untuk Paket dalam Kitab
Seperti yang dinyatakan sebelumnya, tujuan
LFS adalah untuk membangun sebuah sistem pondasi tingkat lengkap dan dapat
digunakan. Ini termasuk semua paket
diperlukan untuk mereplikasi dirinya
sendiri sambil memberikan basis yang relatif minimal yang untuk menyesuaikan
sistem yang lebih lengkap
berdasarkan pilihan pengguna. Ini tidak
berarti bahwa LFS adalah sistem terkecil yang mungkin. Beberapa paket penting
termasuk yang tidak benar-benar diperlukan.
Daftar di bawah dokumen alasan untuk setiap paket dalam buku ini.
• autoconf
Paket ini berisi program untuk memproduksi
skrip shell yang secara otomatis dapat mengkonfigurasi kode sumber dari
Template pengembang. Hal ini sering
diperlukan untuk membangun kembali paket setelah update ke prosedur membangun.
• Automake
Paket ini berisi program untuk menghasilkan
Membuat file dari template. Hal ini sering diperlukan untuk membangun kembali
sebuah paket
setelah update ke prosedur membangun.
• Bash
Paket ini memenuhi persyaratan inti LSB
untuk menyediakan antarmuka Bourne Shell ke sistem. Itu dipilih
lebih dari paket shell lain karena
penggunaan umum dan kemampuan yang luas di luar fungsi shell dasar.
• Bc
Paket ini memberikan presisi numerik
pengolahan bahasa sewenang-wenang. Ini memenuhi persyaratan yang dibutuhkan
ketika
membangun kernel Linux.
• Binutils
Paket ini berisi linker, assembler, dan
alat-alat lain untuk menangani file objek. Program ini di
Paket yang diperlukan untuk mengkompilasi
sebagian besar paket dalam sistem LFS dan seterusnya.
• Bison
Paket ini berisi versi GNU dari yacc (Yet
Another Compiler Compiler) dibutuhkan untuk membangun beberapa lainnya
Program LFS.
bzip2
Paket ini berisi program untuk mengompresi
dan dekompresi file. Hal ini diperlukan untuk dekompresi banyak LFS
paket.
• Periksa
Paket ini berisi memanfaatkan tes untuk
program lain. Hal ini hanya dipasang di toolchain sementara.
Linux From Scratch - Versi 7.5
xii
• Coreutils
Paket ini berisi sejumlah program penting
untuk melihat dan memanipulasi file dan direktori. Maskapai
program yang diperlukan untuk manajemen
file baris perintah, dan diperlukan untuk prosedur pemasangan setiap
paket di LFS.
• DejaGNU
Paket ini berisi kerangka kerja untuk
menguji program lain. Hal ini hanya dipasang di toolchain sementara.
• diffutils
Paket ini berisi program-program yang
menunjukkan perbedaan antara file atau direktori. Program-program ini dapat
digunakan
untuk membuat patch, dan juga digunakan
dalam banyak paket 'prosedur membangun.
e2fsprogs
Paket ini berisi utilitas untuk menangani
ext2, ext3 dan ext4 berkas sistem. Ini adalah yang paling umum
dan benar-benar teruji file sistem yang
mendukung Linux.
• Mengharapkan
Paket ini berisi program untuk melaksanakan
dialog scripted dengan program interaktif lainnya. Hal ini
biasanya digunakan untuk menguji paket
lain. Hal ini hanya dipasang di toolchain sementara.
• Berkas
Paket ini berisi utilitas untuk menentukan
jenis file atau file yang diberikan. Beberapa paket membutuhkannya untuk
membangun.
• Findutils
Paket ini berisi program untuk menemukan
file dalam sistem file. Hal ini digunakan dalam banyak paket 'build script.
• Flex
Paket ini berisi utilitas untuk
menghasilkan program yang mengenali pola dalam teks. Ini adalah versi GNU dari
Program lex (penganalisis leksikal). Hal ini
diperlukan untuk membangun beberapa paket LFS.
• melongo
Paket ini berisi program untuk memanipulasi
file teks. Ini adalah versi GNU dari awk (Aho-Weinberg-
Kernighan). Hal ini digunakan dalam banyak
paket lain membangun script.
• GCC
Paket ini adalah Gnu Compiler Collection.
Ini berisi C dan C ++ compiler serta beberapa orang lain tidak
dibangun oleh LFS.
• gdbm
Paket ini berisi GNU Database Manager
perpustakaan. Hal ini digunakan oleh satu paket LFS lainnya, Man-DB.
gettext
Paket ini berisi utilitas dan perpustakaan
untuk internasionalisasi dan lokalisasi berbagai paket.
• Glibc
Paket ini berisi library C utama. Program
Linux tidak akan berjalan tanpa itu.
• GMP
Paket ini berisi perpustakaan matematika
yang menyediakan fungsi yang berguna untuk aritmatika presisi sewenang-wenang.
Hal ini diperlukan
untuk membangun GCC.
Linux From Scratch - Versi 7.5
xiii
• Grep
Paket ini berisi program untuk mencari
melalui file. Program ini digunakan oleh sebagian besar membangun paket '
script.
• Groff
Paket ini berisi program untuk pengolahan
dan format teks. Salah satu fungsi penting dari program ini adalah untuk
Format halaman manual.
• GRUB
Paket ini adalah Grand Bersatu Boot Loader.
Ini adalah salah satu dari beberapa boot loader yang tersedia, tetapi yang
paling fleksibel.
• Gzip
Paket ini berisi program untuk mengompresi
dan dekompresi file. Hal ini diperlukan untuk dekompresi banyak
paket di LFS dan seterusnya.
• Iana-etc
Paket ini menyediakan data untuk layanan
jaringan dan protokol. Hal ini diperlukan untuk mengaktifkan jaringan yang
tepat
kemampuan.
Inetutils
Paket ini berisi program untuk administrasi
jaringan dasar.
• iproute2
Paket ini berisi program untuk IPv4 dasar
dan lanjutan dan jaringan IPv6. Itu dipilih atas yang lain
alat jaringan yang umum paket (net-tools)
untuk kemampuan IPv6 nya.
• kBD
Paket ini berisi file kunci-meja, utilitas
Keyboard untuk keyboard non-US, dan sejumlah konsol font.
• kmod
Paket ini berisi program yang dibutuhkan
untuk mengelola modul kernel Linux.
• Kurang
Paket ini berisi sangat bagus file teks
penampil yang memungkinkan bergulir ke atas atau ke bawah saat melihat file.
Hal ini juga
digunakan oleh Man-DB untuk melihat halaman
manual.
• Libpipeline
Paket Libpipeline berisi perpustakaan untuk
memanipulasi pipa dari subproses dalam fleksibel dan nyaman
cara. Hal ini diperlukan oleh paket Man-DB.
• libtool
Paket ini berisi GNU skrip dukungan
perpustakaan umum. Ini membungkus kompleksitas menggunakan shared library di
konsisten, antarmuka portabel. Hal ini
diperlukan oleh suite tes dalam paket lain LFS.
• Kernel Linux
Paket ini adalah sistem operasi. Ini adalah
Linux di lingkungan GNU / Linux.
M4
Paket ini berisi prosesor makro teks umum
berguna sebagai alat membangun untuk program lain.
Linux From Scratch - Versi 7.5
xiv
• Membuat
Paket ini berisi program untuk mengarahkan
pembangunan paket. Hal ini diperlukan oleh hampir setiap paket dalam
LFS.
• Man-DB
Paket ini berisi program untuk menemukan
dan melihat halaman manual. Itu dipilih bukan paket pria karena
kemampuan internasionalisasi unggul. Ini
memasok program man.
• Man-halaman
Paket ini berisi isi sebenarnya dari
halaman dasar Linux manusia.
• MPC
Paket ini berisi fungsi untuk aritmatika
kompleks nomor. Hal ini diperlukan oleh GCC.
• MPFR
Paket ini berisi fungsi untuk beberapa
aritmatika presisi. Hal ini diperlukan oleh GCC.
• ncurses
Paket ini berisi perpustakaan untuk
penanganan terminal-independen layar karakter. Hal ini sering digunakan untuk
menyediakan
kursor kontrol untuk sistem berbasis menu.
Hal ini diperlukan oleh sejumlah paket di LFS.
• patch
Paket ini berisi program untuk memodifikasi
atau membuat file dengan menerapkan file patch biasanya dibuat oleh
program diff. Hal ini diperlukan oleh
prosedur membangun beberapa paket LFS.
• Perl
Paket ini merupakan penerjemah untuk bahasa
PERL runtime. Hal ini diperlukan untuk suite instalasi dan uji
beberapa paket LFS.
Pkg-config
Paket ini menyediakan program untuk kembali
meta-data tentang perpustakaan atau paket yang diinstal.
• procps-NG
Paket ini berisi program untuk proses
pemantauan. Program-program ini berguna untuk administrasi sistem,
dan juga digunakan oleh LFS Bootscripts.
• Psmisc
Paket ini berisi program untuk menampilkan
informasi tentang proses yang berjalan. Program-program ini berguna untuk
sistem administrasi.
• Readline
Paket ini adalah satu set perpustakaan yang
menawarkan pengeditan baris perintah dan kemampuan sejarah. Hal ini digunakan
oleh Bash.
• Sed
Paket ini memungkinkan mengedit teks tanpa
membukanya dalam editor teks. Hal ini juga diperlukan oleh sebagian besar LFS
paket '
mengkonfigurasi skrip.
• Bayangan
Paket ini berisi program untuk penanganan
password dalam cara yang aman.
Linux From Scratch - Versi 7.5
xv
• sysklogd
Paket ini berisi program untuk pesan sistem
logging, seperti yang diberikan oleh kernel atau daemon
proses ketika peristiwa yang tidak biasa
terjadi.
• sysvinit
Paket ini menyediakan program init, yang
merupakan induk dari semua proses lain pada sistem Linux.
• Tar
Paket ini menyediakan pengarsipan dan
ekstraksi kemampuan hampir semua paket yang digunakan dalam LFS.
Tcl
Paket ini berisi Bahasa Perangkat Command
digunakan di banyak tes suite dalam paket LFS. Hal ini hanya dipasang
dalam toolchain sementara.
• Texinfo
Paket ini berisi program untuk membaca,
menulis, dan mengkonversi halaman-halaman Info. Hal ini digunakan dalam
instalasi
Prosedur paket banyak LFS.
• Udev
Paket ini berisi program untuk penciptaan
dinamis node perangkat. Ini adalah sebuah alternatif untuk menciptakan ribuan
perangkat statis di direktori / dev.
• Util-linux
Paket ini berisi program utilitas
lain-lain. Diantaranya adalah utilitas untuk menangani file sistem,
konsol, partisi, dan pesan.
• Vim
Paket ini berisi editor. Itu dipilih karena
kompatibilitas dengan klasik vi editor dan yang besar
jumlah kemampuan yang kuat. Editor adalah
pilihan yang sangat pribadi bagi banyak pengguna dan editor lain bisa
diganti jika diinginkan.
• XZ Utils
Paket ini berisi program untuk mengompresi
dan dekompresi file. Ini menyediakan kompresi tertinggi
umumnya tersedia dan berguna untuk
dekompresi paket XZ atau format LZMA.
• Zlib
Paket ini berisi kompresi dan dekompresi
rutinitas yang digunakan oleh beberapa program.
Prasyarat
Membangun sistem LFS bukanlah tugas
sederhana. Hal ini membutuhkan tingkat tertentu pengetahuan yang ada sistem
Unix
administrasi dalam rangka memecahkan
masalah dan benar jalankan perintah yang terdaftar. Secara khusus, sebagai
mutlak
minimum, Anda harus sudah memiliki
kemampuan untuk menggunakan baris perintah (shell) untuk menyalin atau
memindahkan file dan direktori, daftar
direktori dan isi file, dan mengubah
direktori sekarang. Hal ini juga diharapkan bahwa Anda memiliki pengetahuan
yang wajar
menggunakan dan menginstal perangkat lunak
Linux.
Karena buku LFS mengasumsikan setidaknya
tingkat dasar ini keterampilan, berbagai forum dukungan LFS tidak mungkin dapat
untuk menyediakan Anda dengan banyak
bantuan di daerah-daerah. Anda akan menemukan bahwa pertanyaan Anda tentang
pengetahuan dasar seperti
kemungkinan akan terjawab atau Anda akan
dirujuk ke LFS penting daftar pra-membaca.
0 Comments:
Posting Komentar
Bagi Yang Ingin Berkomentar Tentang Artikel Diatas
Silahkan Beri Komentar Serta Sarannya Dibawah Ini
Komentar Yang Membangun Akan Sangat Saya Hargai
Anda Juga Bisa Pasang Banner / Iklan Anda Disini
Hubungi :
Email : lea_ramadhan@rocketmail.com
Hp : 087828646099
Terimakasih Atas Kunjungannya