thono




.HOME
.IMAGE
. KONTAK

.TEST



Jumat, 23 Desember 2011

Cara Compile/upgrade Kernel di linux slackware

Oke sebenarnya cara ini saya dapet dari situs Jasakom. Dengan mengedit sedikit perintah saja dan alhamdullah Slackware saya akhirnya bisa upgrade kernel dari versi 2.6.xx ke 3.0.0.
Yaudah daripada lama-lama mending kita langsung saja ya praktekin. :D

Pertama download dulu kernelnya di kernel.org atau klik ini. Ingat download yang versi stabil ya..
Setelah di download langsung aja ekstrak ke direktory /usr/src. (misalnya kernel tadi ada di direktory /home/aim/Downloads), jadi kita ke direktory tersebut dulu dengan mengetikkan kode di terminal:

# cd /home/aim/Downloads.

Setelah itu ketik # ls dan lihat adakah file kernel kita?
Kalau ada langsung aja kita ekstrak filenya dengan code:

# tar xjvf linux-3.0.tar.bz2 -C /usr/src/

Setelah di ekstrak tadi maka langsung aja kita ke direktory /usr/src. Codenya:

# cd /usr/src

Lalu liat kernel yang udah di ekstrak tadi ada tidak dengan code # ls. Maka akan menghasilkan file:

linux linux-2.6.37.6 linux-3.0

Setelah itu kita masuk ke direktory linuxnya dengan code:

# cd /usr/src/linux-3.0

(karena kernel yang saya pakai dan ekstrak tadi adalah versi 3.0). Lalu baca file README-nya dengan code:

# cat /usr/src/linux-3.0/README

Apabila ada perintah kayak gini make mrproper (untuk install), maka kita harus kutin dulu baru kelangkah selanjutnya. code:

# make mrproper

Ini adalah tahap pertama kompile. Karena kita hanya akan meng-upgrade kernel pada saat ini, jadi kita copy config kernel yang lama dari direktori /boot. caranya kita liat dulu dengan perintah

# ls /boot. Misal akan keluar seperti ini:
README.initrd config-huge-smp-2.6.37.6-smp
System.map diag1.img
System.map-generic-2.6.37.6 diag2.img
System.map-generic-smp-2.6.37.6-smp initrd-tree
System.map-huge-2.6.37.6 initrd.gz
System.map-huge-smp-2.6.37.6-smp map
boot.0800 slack.bmp
boot_message.txt vmlinuz
config vmlinuz-generic-2.6.37.6
config-generic-2.6.37.6 vmlinuz-generic-smp-2.6.37.6-smp
config-generic-smp-2.6.37.6-smp vmlinuz-huge-2.6.37.6
config-huge-2.6.37.6 vmlinuz-huge-smp-2.6.37.6-smp

Copy file confignya dengan code:

# cp /boot/config-generic-2.6.37.6 /usr/src/linux-3.0/.config

Oke selanjutkan kita akan membuat Sym-link arsip kernel baru. Pada bagian ini kita harus membuat symbolic link (shortcut) buat kernel linux yang baru. Tapi sebelum itu kita hapus dulu symbolic link yang dibuat oleh Slackware/linux ente (default). Codenya:

# cd /usr/src/
# rm linux
# ln -s linux-3.0 linux

Kalau udah sekarang saatnya kita ke direktory linuxnya dengan code:

# cd /usr/src/linux

Nah sekarang kita memasuki tahap yang membutuhkan ketelitian yang tinggi dan jangan sampai salah
make menuconfig (modus text)
make xconfig (modus grafik, QT)
make gconfig (modus grafik, GTK)
make oldconfig (modus text pake konfigurasi kernel yang lama)
Ane saranin si pake menuconfig aja. :D dengan code:

# make menuconfig

(abis itu langsung save lagi ya)
Nah dalam menuconfig itu kita harus hati-hati ya dan teliti. Harus sesuah dengan spesifikasi kompi kita. Untuk mengetahui spesifikasi kompi kita bisa ketik diterminal #lspci dan # cat /proc/cpuinfo
Nah kalau sudah dan saya anggap anda sudah benar mengeditnya, kita langsung kompile kernel aja ya? Code:

# make bzImage (untuk membuat image kernel).

Lumayan di kompi ane set jam.
Selanjutnya adalah kita mengkompile modules (lumayan 1 jam di kompi ane). Code:

# make modules

Nah yang ini adalah untuk mengistal modulesnya (sebentar gak nyampe 10 menit). COde:

# make modules_install

Sekarang copy Image kernel,config, dan System.map baru Kalau ditemukan error, silahkan liat-liat lagi step-stepnya. Kalau normal dan ga ada masalah, kita akan mengcopy kernel image yang telah di kompile tersebut ke direktori /boot. Code:

# cp arch/i386/boot/bzImage /boot/vmlinuz-3.0.0-kernel-baru
# cp System.map /boot/System.map-3.0.0-kernel-baru
# cp .config /boot/config-3.0.0-kernel-baru
# cd /boot
# rm System.map (Hapus symbolic link System.map lama)
# rm config (Hapus symbolic link config lama)
# rm vmlinuz (Hapus symbolic link kernel image yg lama)
# ln -s vmlinuz-3.0.0-kernel-baru vmlinuz (symbolic link kernel baru)
# ln -s config-3.0.0-kernel-baru config (symbolic link config baru)
# ln -s System.map-3.0.0-kernel-baru System.map (symbolic link System.Map baru)

Nah sekarang waktunya membuat Initrd (ini penting, jangan sampe kelewat ya)? Silakan membuat initrd agar kernel dapat meload partisi root. Masih di direktori /boot. Code:

# mkinitrd -c -k 3.0.0 -m jbd:ext4 -f ext4 -r /dev/sda1

(ini untuk file system ext2 samapi ext4 kalau gak salah dan untuk selain itu beda codenya). Oya jangan sampai salah ya untuk /dev/sda1-nya. Untuk itu harus di cek dulu dimana partisi root linux kita denga perintah

# fdisk -l.

Terakhir kita edit liloya (atau grub). Karena disini saya pakai lilo, maka saya akan jelaskan cara memakai lilo. Untuk grub silahkan cari di www.google.com :D.
pertama lihat dulu direktory /boot dengan ls /boot. Code:

# ls /boot
README.initrd config initrd.gz
System.map config-3.0.0 map
System.map-3.0.0 config-generic-2.6.37.6 slack.bmp
System.map-generic-2.6.37.6 config-generic-smp-2.6.37.6-smp vmlinuz
System.map-generic-smp-2.6.37.6-smp config-huge-2.6.37.6 vmlinuz-3.0.0
System.map-huge-2.6.37.6 config-huge-smp-2.6.37.6-smp vmlinuz-generic-2.6.37.6
System.map-huge-smp-2.6.37.6-smp diag1.img vmlinuz-generic-smp-2.6.37.6-smp
boot.0800 diag2.img vmlinuz-huge-2.6.37.6
boot_message.txt initrd-tree vmlinuz-huge-smp-2.6.37.6-smp

Barulah atur lilonya

# nano /etc/lilo.conf

(akan menghasilkan dan edit menjadi sepeti ini contohnya)

# LILO configuration file
# generated by 'liloconfig'
#
# Start LILO global section
boot = /dev/sda
#compact # faster, but won't work on all systems.
# Boot BMP Image.
# Bitmap in BMP format: 640x480x8
bitmap = /boot/slack.bmp
# Menu colors (foreground, background, shadow, highlighted
# foreground, highlighted background, highlighted shadow):
bmp-colors = 255,0,255,0,255,0
# Location of the option table: location x, location y, number of
# columns, lines per column (max 15), "spill" (this is how many
# entries must be in the first column before the next begins to
# be used. We don't specify it here, as there's just one column.
bmp-table = 60,6,1,16
# Timer location x, timer location y, foreground color,
# background color, shadow color.
bmp-timer = 65,27,0,255
# Standard menu.
# Or, you can comment out the bitmap menu above and
# use a boot message with the standard menu:
#message = /boot/boot_message.txt

# Append any additional kernel parameters:
append=" vt.default_utf8=0"
prompt
timeout = 50
# Normal VGA console
vga = normal
# Ask for video mode at boot (time out to normal in 30s)
#vga = ask
# VESA framebuffer console @ 1024x768x64k
# vga=791
# VESA framebuffer console @ 1024x768x32k
# vga=790
# VESA framebuffer console @ 1024x768x256
# vga=773
# VESA framebuffer console @ 800x600x64k
# vga=788
# VESA framebuffer console @ 800x600x32k
# vga=787
# VESA framebuffer console @ 800x600x256
# vga=771
# VESA framebuffer console @ 640x480x64k
# vga=785
# VESA framebuffer console @ 640x480x32k
# vga=784
# VESA framebuffer console @ 640x480x256
# vga=769
# ramdisk = 0 # paranoia setting
# End LILO global section
# Linux bootable partition config begins
image = /boot/vmlinuz
initrd = /boot/initrd.gz
root = /dev/sda1
label = Slackware
read-only
# Linux bootable partition config ends
# Linux Kernel Dokter jaga 24 jam
image = /boot/vmlinuz-huge-2.6.37.6
initrd = /boot/initrd.gz
root = /dev/sda1
label = LinuxDarurat
read-only
# Linux bootable partition config ends

Lalu jalankan lilo -v di terminal
Terakhir adalah hal yang paling mendebarkan... Kita restart kompi kita dan berdoa semoga berhasil ya :).. Bismillah

Catatan: Oke dari hasil diatas, alhasil saya berhasil masuk ke slackware saya (tapi ada sedikit error). Katanya itu biasa kok, namanya juga pemula. Hehe.. Nah error yang saya temuin itu adalah alsactl error saat hidupin kompi (dan cara benerinnya cukup ketik alsactl restore). Lalu setelah itu touchpad laptop saya tidak bisa scroll ke atas/ke bawah/kiri/kanan. Sebenarnya itu bukan error kok, tapi untuk mengatasinya agar bisa scroll cukup taruh aja 2 jari ke touchpadnya, lalu drag dah, alhasil bisa dah scroll.
Selain itu Slackware saya baik-baik saja dan tidak ada error (bahkan ada beberapa yang dulu error di layar kompi saya goyang-goyang, tapi sekarang malah jadi bener sendiri karna pakai kernel baru).. Pokoknya makin cinta Linux dah...

Tidak ada komentar: