Blog.YHT.Web.ID

Icon

Bosan adalah awal dari penciptaan perubahan.

Kompilasi Kernel Linux

Dipindahkan dari http://www.ryht.co.cc/wordpress/?p=5, yang telah terbit per 28 Nopember 2007, dengan perubahan seperlunya.

Sebenarnya manual untuk kompilasi kernel sudah disertakan disetiap paket kode sumber kernel Linux.

Baca berkas $KERNEL_PATH/README.

Mengapa dibutuhkan kompilasi kernel terbaru / update kernel?

Perkembangan semakin cepat dengan adanya komunitas open source. Bila Anda berniat masuk ke dalam komunitas pengguna aplikasi open source anda harus bersiap-siap dengan perubahan-perubahan tersebut. Perubahan tersebut disediakan komunitas dengan patch atau kode sumber utuh rilis terbaru.

Begitu juga dengan kernel Linux, perubahan akan dukungan hardware semakin bertambah banyak, dan penemuan akan bugs dari kernel yang telah ada juga masih saja ada. Perubahan ini tidak semua diperlukan oleh setiap pengguna Linux. Dukungan hardware yang dibutuhkan mungkin saja tidak mengharuskan pengguna untuk meng-update kernel-nya.

Bila anda adalah pengguna awam, tidak mau tahu dalam sistem anda atau bahkan tidak menggunakan GNU/Linux, JANGAN MENERUSKAN MEMBACA.

Apa saja yg dibutuhkan?

Yang dibutuhkan :
1. Komputer; [ Tentu saja anda menjalankan semuanya dalam komputer, bukan ? ]
2. Sistem Operasi GNU/Linux; [ Anda menjalankan Linux, bukan ? ]
3. Paket Development GNU Tools; [ Untuk kompilasi kernel, requirements baca di $KERNEL_PATH/Documentation/Changes ]
4. Space HD minimal 1 GB; [ Ruang yang cukup untuk kompilasi ] dan tentunya
5. Kode sumber kernel Linux.

Saya sendiri menggunakan SlackWare 12.0 dan kompilasi kernel Linux versi 2.6.22.9 yang akan di-patch menjadi 2.6.23.9

Langkah-langkah kompilasi

Langkah langkah di sini adalah langkah-langkah dalam mode CLI, dengan asumsi : Anda menggunakan SlackWare 12.0 asli, belum pernah di otak-atik. Belum pernah extract kernel 2.6.23 sebelumnya..

Pertama, cek versi kernel :

root@kpp033:/# uname -a
Linux kpp033 2.6.22.9-ryht-ck-smp-1 #1 SMP Thu Sep 27 10:35:44 WIT 2007 i686 Inter (R) Pentium (R) D CPU 3.40GHz GenuineIntel GNU/Linux
root@kpp033:/#

Kedua, masukkan kode sumber beserta patch ke satu folder, mis. /usr/src [ biasanya di sini ] dan extract kode sumber tersebut, lalu patch. Berikut perintahnya :

root@kpp033:/usr/src# ls
linux-2.6.23.tar.bz2
patch-2.6.23.1.tar.bz2
patch-2.6.23.1-2.tar.bz2
patch-2.6.23.2-3.tar.bz2
patch-2.6.23.3-4.tar.bz2
patch-2.6.23.4-5.tar.bz2
patch-2.6.23.6-7.tar.bz2
patch-2.6.23.7-8.tar.bz2
patch-2.6.23.8-9.tar.bz2
root@kpp033:/usr/src# tar xf linux-2.6.23.tar.bz2
root@kpp033:/usr/src# cd linux-2.6.23
root@kpp033:/usr/src/linux-2.6.23# bzcat ../patch-2.6.23.1.tar.bz2 | patch -p1
root@kpp033:/usr/src/linux-2.6.23# bzcat ../patch-2.6.23.1-2.tar.bz2 | patch -p1
root@kpp033:/usr/src/linux-2.6.23# bzcat ../patch-2.6.23.2-3.tar.bz2 | patch -p1
root@kpp033:/usr/src/linux-2.6.23# bzcat ../patch-2.6.23.3-4.tar.bz2 | patch -p1
root@kpp033:/usr/src/linux-2.6.23# bzcat ../patch-2.6.23.4-5.tar.bz2 | patch -p1
root@kpp033:/usr/src/linux-2.6.23# bzcat ../patch-2.6.23.6-7.tar.bz2 | patch -p1
root@kpp033:/usr/src/linux-2.6.23# bzcat ../patch-2.6.23.7-8.tar.bz2 | patch -p1
root@kpp033:/usr/src/linux-2.6.23# bzcat ../patch-2.6.23.8-9.tar.bz2 | patch -p1

Sekarang, ambil konfigurasi kernel yg lama, dan buat konfigurasi baru yang sesuai dengan sistem [ Kalo di sini gak ngerti, mendhing tekan enter aja dech, soalnya tergantung hardware & konfigurasi sistem ] :

root@kpp033:/usr/srclinux-2.6.23# zcat /proc/config.gz > .config # ini mengambil konfig saat ini
root@kpp033:/usr/srclinux-2.6.23# make oldconfig # menjalankan konfigurasi

Bila anda masih ingin melihat-lihat konfigurasi, gunakan perintah :

root@kpp033:/usr/srclinux-2.6.23# make menuconfig

Sekarang saatnya mengupdate lilo anda. Ma’af, para pengguna Grub, saya prefer menggunakan Lilo. Gunakan perintah :

root@kpp033:/usr/srclinux-2.6.23# echo “” >> /etc/lilo.conf
root@kpp033:/usr/srclinux-2.6.23# echo “# BackUp Kernel by ryht” >> /etc/lilo.conf
root@kpp033:/usr/srclinux-2.6.23# echo “image = vmlinuz.old” >> /etc/lilo.conf
root@kpp033:/usr/srclinux-2.6.23# echo ” root = /dev/hda7″ >> /etc/lilo.conf
root@kpp033:/usr/srclinux-2.6.23# echo ” label = Old.kernel” >> /etc/lilo.conf
root@kpp033:/usr/srclinux-2.6.23# echo ” read-only” >> /etc/lilo.conf
root@kpp033:/usr/srclinux-2.6.23# lilo -v

Saya tidak mengotak-atik kernel, karena nanti akan di ganti sendiri oleh script ‘Makefile’ dari kode sumber kernel.

Selanjutnya jalankan perintah kompilasi kernel :

root@kpp033:/usr/srclinux-2.6.23# make all

Tunggu sampai dengan selesai… Ngopi dulu, kek… Ngudud… Ngerjain apa, kek… Lumayan… 30 menitan bisa lebih.. 😀

Capek nunggunya? Dikit lagi koq. Lalu instalasi modul :

root@kpp033:/usr/srclinux-2.6.23# make module_install

Terakhir, instalasi kernel :

root@kpp033:/usr/srclinux-2.6.23# make install

Selesai…

Post Installation Syndrome

Wew… Kernel-ku dah berubah…. Cek ah…

root@kpp033:/# uname -a
Linux kpp033 2.6.22.9-ryht-ck-smp-1 #1 SMP Thu Sep 27 10:35:44 WIT 2007 i686 Inter (R) Pentium (R) D CPU 3.40GHz GenuineIntel GNU/Linux
root@kpp033:/#

Lho… Koq masih sama??

Reboot, ah…

root@kpp033:/usr/srclinux-2.6.23# reboot

Wah!

Welcome to Linux 2.6.23.9-ryht-mp-1(tty1)
kpp033 login :

Hore…….!!!!!!!!!

Special to : tole & evanz, selamat belajar ngoprek kernel

Thx, to all #DJPGNULab Crew!

Kategori: /artikel

Tag: , ,

2 Responses

  1. xisxon says:

    Wah, tutorialnya bagus, teruslah berkarya kawan 😉

Leave a Reply