Kompilasi Kernel Pada Linux CentOS 5.0
-
Upload
mashum-rois -
Category
Documents
-
view
28 -
download
7
description
Transcript of Kompilasi Kernel Pada Linux CentOS 5.0
Kompilasi Kernel Pada Linux centOS 5.0
Dosen pengampu :
Ibu Nila Feby P. S.Kom
Oleh:
Agus Supriyadi : 09.11.2695
Mochamad Fiqh P : 09.11.2652
Okta Dwi Saputro : 09.11.2696
Bondan Hartanto : 09.11.2688
Frendy A : 09.11.2678
Adi Nurcahya : 09.11.2645
Maksum Ro’is A : 09.11.2680
Andri Kurniawan : 09.11.2704
S1 – TEKNIK INFORMATIKA SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER
STMIK AMIKOM YOGYAKARTA 2010
BAB 1
PENDAHULUAN
A. Latar Belakang
Linux adalah sebuah sistem operasi yang dikembangkan oleh Linus Benedict
Torvalds dari Universitas Helsinki Finlandia sebagai proyek hobi mulai tahun 1991.Ia
menulis Linux, sebuah kernel untuk prosesor 80386, prosesor 32-bit pertama dalam
kumpulan CPU Intel yang cocok untuk PC. Baru pada tanggal 14 Maret 1994 versi 1.0
mulai diluncurkan, dan hal ini menjadi tonggak sejarah Linux.
Linux termasuk sistem operasi yang didistribusikan secara open source, artinya
kode sumber Linux diikutsertakan sehingga dapat dipelajari dan dikembangkan dengan
mudah.Selain itu Linux dikembangkan oleh GNU (General Public License). Linux dapat
digunakan untuk berbagai keperluan, seperti: jaringan, pengembangan software, dan
sebagai end-user platform. Selama ini Linux menjadi sistem operasi yang menjadi banyak
perhatian karena kecanggihan dan harganya yang relatif murah dibanding dengan sistem
operasi yang lain. Macam-macam distribusi Linux antara lain: Fedora, Stackware,
Debian, RedHat, S.u.s.e., Caldera,CentOS, dan Turbo Linux dan lain-lain.
B. Pengertian kernel
Dalam ilmu komputer, kernel adalah suatu perangkat lunak yang menjadi bagian
utama dari sebuah sistem operasi.Tugasnya melayani bermacam program aplikasi untuk
mengakses perangkat keras komputer secara aman.
Karena akses terhadap perangkat keras terbatas, sedangkan ada lebih dari satu
program yang harus dilayani dalam waktu yang bersamaan, maka kernel juga bertugas
untuk mengatur kapan dan berapa lama suatu program dapat menggunakan satu bagian
perangkat keras tersebut. Hal tersebut dinamakan sebagai multiplexing.
Akses kepada perangkat keras secara langsung merupakan masalah yang
kompleks, oleh karena itu kernel biasanya mengimplementasikan sekumpulan abstraksi
hardware.Abstraksi-abstraksi tersebut merupakan sebuah cara untuk menyembunyikan
kompleksitas, dan memungkinkan akses kepada perangkat keras menjadi mudah dan
seragam.Sehingga abstraksi pada akhirnya memudahkan pekerjaan programer.
Untuk menjalankan sebuah komputer kita tidak harus menggunakan kernel sistem
operasi. Sebuah program dapat saja langsung diload dan dijalankan diatas mesin
'telanjang' komputer, yaitu bilamana pembuat program ingin melakukan pekerjaannya
tanpa bantuan abstraksi perangkat keras atau bantuan sistem operasi. Teknik ini
digunakan oleh komputer generasi awal, sehingga bila kita ingin berpindah dari satu
program ke program lain, kita harus mereset dan meload kembali program-program
tersebut.
Sebuah kernel sistem operasi tidak harus ada dan dibutuhkan untuk menjalankan
sebuah komputer.Program dapat langsung dijalankan secara langsung di dalam sebuah
mesin (contohnya adalah CMOS Setup) sehingga para pembuat program tersebut
membuat program tanpa adanya dukungan dari sistem operasi atau hardware
abstraction.Cara kerja seperti ini, adalah cara kerja yang digunakan pada zaman awal-
awal dikembangkannya komputer (pada sekitar tahun 1950). Kerugian dari diterapkannya
metode ini adalah pengguna harus melakukan reset ulang komputer tersebut dan
memuatkan program lainnya untuk berpindah program, dari satu program ke program
lainnya. Selanjutnya, para pembuat program tersebut membuat beberapa komponen
program yang sengaja ditinggalkan di dalam komputer, seperti halnya loader atau
debugger, atau dimuat dari dalam ROM (Read-Only Memory). Seiring dengan
perkembangan zaman komputer yang mengalami akselerasi yang signifikan, metode ini
selanjutnya membentuk apa yang disebut dengan kernel sistem operasi
Selanjutnya, para arsitek sistem operasi mengembangkan kernel sistem operasi
yang pada akhirnya terbagi menjadi empat bagian yang secara desain berbeda, sebagai
berikut:
▪ Kernel monolitik. Kernel monolitik mengintegrasikan banyak fungsi di dalam kernel
dan menyediakan lapisan abstraksi perangkat keras secara penuh terhadap
perangkat keras yang berada di bawah sistem operasi.
▪ Mikrokernel. Mikrokernel menyediakan sedikit saja dari abstraksi perangkat keras dan
menggunakan aplikasi yang berjalan di atasnya—yang disebut dengan server—
untuk melakukan beberapa fungsionalitas lainnya.
▪ Kernel hibrida. Kernel hibrida adalah pendekatan desain microkernel yang
dimodifikasi. Pada hybrid kernel, terdapat beberapa tambahan kode di dalam
ruangan kernel untuk meningkatkan performanya.
▪ Exokernel. Exokernel menyediakan hardware abstraction secara minimal, sehingga
program dapat mengakses hardware secara langsung. Dalam pendekatan desain
exokernel, library yang dimiliki oleh sistem operasi dapat melakukan abstraksi
yang mirip dengan abstraksi yang dilakukan dalam desain monolithic kernel.
Modul kernel Linux adalah bagian dari kernel Linux yang dapat dikompilasi,
dipanggil dan dihapus secara terpisah dari bagian kernel lainnya saat dibutuhkan.Modul
kernel dapat menambah fungsionalitas kernel tanpa perlu me-reboot sistem. Secara teori
tidak ada yang dapat membatasi apa yang dapat dilakukan oleh modul kernel. Kernel
modul dapat mengimplementasikan antara lain device driver, sistem berkas, protokol
jaringan.
Modul kernel Linux memudahkan pihak lain untuk meningkatkan fungsionalitas
kernel tanpa harus membuat sebuah kernel monolitik dan menambahkan fungsi yang
mereka butuhkan langsung ke dalam image dari kernel. Selain hal tersebut akan membuat
ukuran kernel menjadi lebih besar, kekurangan lainnya adalah mereka harus membangun
dan me-reboot kernel setiap saat hendak menambah fungsi baru. Dengan adanya modul
maka setiap pihak dapat dengan mudah menulis fungsi-fungsi baru dan bahkan
mendistribusikannya sendiri, di luar GPL. Kernel modul juga memberikan keuntungan
lain yaitu membuat sistem Linux dapat dinyalakan dengan kernel standar yang minimal,
tanpa tambahan device driver yang ikut dipanggil. Device driver yang dibutuhkan dapat
dipanggil kemudian secara eksplisit maupun secara otomatis saat dibutuhkan. Terdapat
tiga komponen untuk menunjang modul kernel Linux.Ketiga komponen tersebut adalah
manajemen modul, registrasi driver, dan mekanisme penyelesaian konflik
Proses instalasi kernel yang berasal dari rilis resmi ke dalam distribusi CentOS
tidak dapat dilakukan seperti petunjuk yang diberikan pada situs www.kernel.org. Proses
instalasi yang harus dilakukan mengikuti langkah-langkah sebagai berikut (tentu saja
dengan user root):
BAB II
KOMPILASI KERNEL PADA centOS 5.0
A. Sejarah Singkat CentOS 5.0
Pada pertengahan Maret 2007 RedHat baru saja merilis RedHat Enterprise Linux
(RHEL) versi 5.0 tak lama kemudian terdapat beberapa distro turunan RHEL 5 yang juga
dirilis salah satunya adalah CentOS 5.0.CentOS 5.0 merupakan distro linux untuk
enterprise yang dibuat berbasiskan kode sumber RHEL 5.0.
Karena dibuat berbasiskan RHEL 5.0,banyk teknologi terbaru yang diadopsi oleh
CentOS 5.0.Sejumlah tool untuk mempermudah pembuatan virtualisasi di RHEL 5.0
seperti Libvirt,Virtual machine manager,dan Xen 3.0,sudah terdapat pada CentOS 3.0.
Secara umum CentOS 5.0 dapat dibilang distro yang paling baik untuk kalangan
perusahaan yang ingin merasakan fitur RHEL 5.0 tanpa diharuskan membayar lisensi.
B. Kompilasi kernel Linux di CentOS
a. Kompilasi secara Offline (tidak terhubung dengan internet)
Kita bisa menggunakan fresh kernel terbaru dari kernel source, tipe yang
kami gunakan adalah linux-2.6.34.tar.gz. Silahkan download di
http://www.kernel.org/pub/linux/kernel/v2.6/. Proses kompilasi yang kami
lakukan pada laptop dengan prosesor Intel Centrino 1,73 GHz dan memory 512
MB.
Langkah-langkahnya sebagai berikut :
1. Setelah source kernel di-download, copy ke direktori lokasi source
kernel di /usr/src/kernels. Ini adalah lokasi source kernel yang
digunakan pada centOS 5.0.
# cp /home/fxekobudi/Download/linux-2.6.34.9.tar.gz
/usr/src/kernels/
2. Masuk ke direktori tersebut : # cd /usr/src/kernels/
3. Ekstrak tarbal source kernel : # tar -zxvf linux-2.6.34.9.tar.gz
4. Masuk ke direktori hasil ekstraksi : # cd linux-2.6.34.9
5. Mulai konfigurasi kernel, jalankan command : # make menuconfig
6. Akan muncul window konfigurasi kernel. Untuk kepentingan
upgrade, kita gunakan saja konfigurasi default kernel supaya lebih
mudah. Pilih Exit dan Save untuk menyimpan konfigurasi.
7. Jalankan kompilasi : # make
8. Membuat image vmlinuz dengan command : # make bzImage
9. Membuat module aktif yang sudah dikompilasi : # make modules
10. Instal module dengan command : # make modules_install
11. Sampai disini kita hanya perlu instal kernel yang baru di GRUB
(boot loader default CentOS 5.0). Gunakan command : # make
install
Silahkan check file konfigurasi GRUB di /etc/grub.conf, disitu akan
muncul konfigurasi untuk menjalankan kernel baru kita. Pada laptop yang saya
gunakan, menjadi sebagai berikut:
title CentOS (2.6.34.9)
root (hdo,7)
kernel/vmlinuz-2.6.34.9 ro root=LABEL=/rhgbquite
initrd/ Initrd-2.6.34.9.img
catatan : tetap aktifkan konfigurasi untuk kernel bawaan centOS 5.0 pada saat
instalasi, karena kita belum tahu apakah kernel yang baru dapat berjalan dengan
baik atau tidak. Dengan demikian, pada saat booting, kita bisa memilih
menggunakan kernel baru atau kernel yang lama.
Selanjutnya coba restart dan boot dengan kernel yang baru, dan setelah masuk di
centOS 5.0, buktikan kernel tersebut dengan menjalankan command : # uname –r
b. Kompilasi secara Online (terhubung dengan internet)
Buka terminnal dan ketikkan perintah berikut :
rpm -Uvh
http://mirror.pacific.net.au/linux/CentOS/5.0/os/i386/CentOS/ce
ntos-release-5-0.0.el5.centos.2.i386.rpm
atau juga :
http://mirror.pacific.net.au/linux/CentOS/5.0/os/i386/CentOS/centos-
release-notes-5.0.0-2.i386.rpm
http://mirror.pacific.net.au/linux/CentOS/5.0/os/i386/CentOS/centos-
release-notes-5.0.0-2.i386.rpm
Tunggu hingga proses selesai dan kemudian ketikkan :
mv CentOS-Base.repo CentOS-Base.repo.CentOS4
mv CentOS-Base.repo.rpmnew CentOS-Base.repo
Tunggu hingga proses selesai dan kemudian ketikkan :
yum remove hal
Tunggu hingga proses selesai dan kemudian ketikkan :
yum clean all
Tunggu hingga proses selesai dan kemudian ketikkan :
uname -a
Tunggu hingga proses selesai dan kemudian ketikkan :
rpm -e --nodeps --justdb kernel-2.6.9-42.0.10.EL kernel-smp-
2.6.9-42.0.10.EL
Tunggu hingga proses selesai dan kemudian ketikkan :
rpm-e --nodeps --justdb zaptel*
Tunggu hingga proses selesai dan kemudian ketikkan :
yum install kernel
Proses pun selesai : rpm -Uvh
http://mirror.pacific.net.au/linux/CentOS/5.0/os/i386/CentOS
/centos-release-5-0.0.el5.centos.2.i386.rpm
http://mirror.pacific.net.au/linux/CentOS/5.0/os/i386/CentOS
/centos-release-notes-5.0.0-2.i386.rpm rpm -Uvh http://mirror.pacific.net.au/linux/CentOS/5.0/os/i386/CentOS
/centos-release-5-0.0.el5.centos.2.i386.rpm
http://mirror.pacific.net.au/linux/CentOS/5.0/os/i386/CentOS
/centos-release-notes-5.0.0-2.i386.rpm (all one line) rpm -Uvh http://mirror.pacific.net.au/linux/CentOS/5.0/os/i386/CentOS
/centos-release-5-0.0.el5.centos.2.i386.rpm
http://mirror.pacific.net.au/linux/CentOS/5.0/os/i386/CentOS
/centos-release-notes-5.0.0-2.i386.rpm (semua satu baris) mv CentOS-Base.repo CentOS-Base.repo.CentOS4 mv CentOS-Base.repo.rpmnew CentOS-Base.repo yum remove hal yum clean all uname -a rpm -e --nodeps --justdb kernel-2.6.9-42.0.10.EL kernel-smp-
2.6.9-42.0.10.EL rpm-e --nodeps --justdb zaptel* yum remove asterisk-addons yum upgrade yum install kernel reboot
NB: Warning, Jangan Lakukan yum remove hal, karena ini bisa juga menghapus file file yang diperlukan untuk installasi,
karena dependecy. Dalam kasus ini ada beberapa file kehapus,
karena nggak ngeh terhadap file depedency nya, jadiny file
yum, wget, ls dll ikut juga terhapus. Jadi hati hati ya....,
atau file yum remove hal tidak usah di jalankan. Peringatan,
Jangan Lakukan yum remove hal, karena ini bisa juga menghapus file file yang diperlukan untuk installasi, karena
dependecy. Dalam kasus ini ada beberapa file kehapus, karena
nggak ngeh terhadap file depedency nya, jadiny file yum,
wget, ls dll ikut juga terhapus. Jadi hati hati ya...., atau
file yum remove hal tidak usah di jalankan.
yum remove hal, karena ini bisa juga menghapus file file
yang diperlukan untuk installasi, karena dependecy. Dalam
kasus ini ada beberapa file kehapus, karena nggak ngeh
terhadap file depedency nya, jadiny file yum, wget, ls dll
ikut juga terhapus. Jadi hati hati ya...., atau file yum
remove hal tidak usah di jalankan.
C. Gambar Proses Kompilasi Kernel pada centOS
a. Proses Offline
>>
>
>>
>>
Keterangan : Proses yang kami lakukan secara offiline belum berhasil dan baru mencapai tahap
ini, dimana proses bisa dilanjutkan apabila ditambahakan “gcc” terlebih dahulu, agar bisa
mengenali perintah “make menuconfig”.
b. Proses Online
(untuk proses online belum sempat kami abadikan secara sempurna tapi kami
sudah berhasil hingga proses terakhir dan lancar)
D. Pembagian tugas
Mochamad Fiqh P : ngoprek kernel
Ma’shum Rois Adin Syaf : ngoprek kernel
Agus Supriyadi : pembuat makalah
Okta Dwi Saputro : pembuat makalah
Adi Nurcahya : pembuat makalah
Bondan Hartanto : pembuat slide presentasi
Frendy Andriansyah : pembuat slide presentasi
Andri Kurniawan : pembuat slide presentasi
BAB III
PENUTUP
A. Kesimpulan
Kernel adalah suatu perangkat lunak yang menjadi bagian utama dari sebuah
sistem operasi.Tugasnya melayani bermacam program aplikasi untuk mengakses
perangkat keras komputer secara aman.
Pada pertengahan Maret 2007 RedHat baru saja merilis RedHat
Enterprise Linux (RHEL) versi 5.0 tak lama kemudian terdapat beberapa distro turunan
RHEL 5 yang juga dirilis salah satunya adalah CentOS 5.0.CentOS 5.0 merupakan distro
linux untuk enterprise yang dibuat berbasiskan kode sumber RHEL 5.0.
Karena dibuat berbasiskan RHEL 5.0,banyk teknologi terbaru yang diadopsi oleh
CentOS 5.0.Sejumlah tool untuk mempermudah pembuatan virtualisasi di RHEL 5.0
seperti Libvirt,Virtual machine manager,dan Xen 3.0,sudah terdapat pada CentOS 3.0.
Secara umum CentOS 5.0 dapat dibilang distro yang paling baik untuk kalangan
perusahaan yang ingin merasakan fitur RHEL 5.0 tanpa diharuskan membayar lisensi.
Adapun cara kompilasi kernel pada centOS ada dua cara yaitu :
1. Secara offline yaitu tanpa terhubung dengan internet dan kita mendownload
seluruh source yang dibutuhkan terlebih dahulu.
2. Secara Online yaitu proses kompilasi yang terhubung langsung dengan
internet
B. Penutup
Demikian makalah ini kami buat semoga bermanfaat, mohon maaf atas
banyak nya kekurangan yang ada, tapi ini sudah hasil maksimal yang kami
raih setelah proses selama 2 minggu secara maraton.
Refrensi
1. http://www.centos.org
2. http://www.centos-id.org
3. en.wikipedia.org/wiki/CentOS_(operating_system)
4. http://en.wikipedia.org/wiki/Linux_kernel
5. http://www.aioalloperator.com
6. http://tulangbelakang.co.cc/category/centOS/