Çekirdek (Kernel) Derleme

Bu konuyu okuyanlar

realmanager

Profesör
Katılım
31 Ekim 2009
Mesajlar
3,927
Reaksiyon puanı
99
Puanları
0
bluefire.png

Sisteminizde kurulu olan çekirdek, ihtiyaçlarınızı zamanla karşılayamayabilir veya eski çekirdeğinizdeki birçok açıktan (bug) kurtulmak isteyebilirsiniz. Daha da önemlisi; sisteminizi daha kararlı, daha hızlı ve daha güvenli bir hale getirmeyi düşünebilirsiniz. Bunun için size özel ve sadece sizin ihtiyaçlarınız için bir çekirdek derleyip yaratmanız mümkündür. Bu, sanılanın aksine çok zor ve karmaşık bir süreç değildir. Bu belgede anlatılan derlemede 2.6.27.7 çekirdek sürümü kullanıldığı, farklı bir sürüm seçildiği takdirde sürüm numarasının seçilen sürüm numarasıyla değiştirmesi gerektiği unutulmamalı.
Terminal açılarak root olunur. Root olmak için:

#su

komutu verilir ve şifre girilerek root olunur.
Apt depolarının güncellenmesi için:

#apt-get update

komutu verilir. Ardından arka arkaya şu komutlar verilir:

#rm -f /bin/sh
#ln -s /bin/bash /bin/sh

Şimdi ise çekirdek derlemek için gerekli olan araçların kurulması için:

#apt-get install kernel-package libncurses5-dev fakeroot wget bzip2

komutu verilir. Böylece çekirdek derlerken gerekli olan her şey indirilir ve kurulur.

www.kernel.org sitesinden derlemek için belirlediğiniz çekirdek sürümünü /usr/src dizinine indirmelisiniz. İndireceğiniz dosyayı direk olarak /usr/src dizinine indirmek için:

#cd /usr/src

komutu verildikten sonra:

#wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.27.7.tar.bz2

komutu verilerek indirilen çekirdek paketinin /usr/src dizinine indirilmesi sağlanılır.
İndirme işleminden sonra inen çekirdek paketini açmak için:

#tar xjf linux-2.6.27.7.tar.bz2
#ln -s linux-2.6.27.7 linux
#cd /usr/src/linux

komutları verilir. /usr/src/linux dizinine geçilir.
/usr/src/linux dizinindeyken şu komut verilir;

#cp /boot/config-`uname -r` ./.config

sonra

#make menuconfig

komutundan sonra alttaki resimde de görülen bir çekirdek konfigürasyon menüsüsü açılacak.
cekirdek-derleme.jpg

Kullanılan Linux çekirdeğini hiç değiştirmeden aktarmak için menünün alt sıralarındaki “Load an Alternate Configuration File” seçeneği seçilir. Bunun haricinde bir işlem yapılacaksa şimdi yapılmalıdır, aksi takdirde ayarlar ile ilgili bir bilgi sahibi olunmadan ayarlar değiştirilmemelidir. Exit seçilir, “Do you wish to save your new kernel configuration?” sorusu “Yes” olarak cevaplandırılır ve konfigürasyon menüsünden çıkılır.

Şimdi ise çekirdeği derlemek için:

#make-kpkg clean
#fakeroot make-kpkg --initrd --append-to-version=-custom kernel_image kernel_headers

komutları verilir. Ve derleme başlar, sisteminizin hızına göre değişecek olan derleme işlemi uzun sürebilir.

Terminal penceresindeki derleme işlemi tamamlanmış ise komut satırına:

#cd /usr/src
#ls -l

komutları girildikten sonra 2 dosyanın oluştuğu görülür. Bunlar;

linux-headers-2.6.27.7-custom_2.6.27.7-custom-10.00.Custom_i386.deb
linux-image-2.6.27.7-custom_2.6.27.7-custom-10.00.Custom_i386.deb

Bu dosyaların kurulumunu yapmak için dosya yöneticisi ile /usr/src dizinine girilir ve önce:

linux-headers-2.6.27.7-custom_2.6.27.7-custom-10.00.Custom_i386.deb

dosyasının üzerine çift tıklanarak yüklenir. Kurulum esnasında root şifresi sorulabilir. Kurulum işleminin tamamlanmasının ardından, ikinci dosya olan:

linux-image-2.6.27.7-custom_2.6.27.7-custom-10.00.Custom_i386.deb

üzerine çift tıklanır ve kurulur.


(Not: Derleme işleminin sonunda oluşan 2 .deb dosyasının backup ını alırsanız format attığınızda veya herhangi bir sorunda en baştan derlemek yerine tekrar onları kurmanız yeterli olacaktır.)


Artık derleme sona ermiştir ve aşağıdaki komut ile sistem yeniden başlatılır:

#sudo shutdown -r now

Sistem yeniden başladığında grub yöneticisinde yeni çekirdeğiniz en üstte gelir fakat bazen grub yöneticiniz sistemde eğer varsa farklı bir işletim sistemini görmeyebilir. Bunun için grub yöneticinizi düzenlemeniz gereklidir. Grub yöneticiniz düzenlemek için:

#sudo nano /boot/grub/menu.lst

komutu verilir. Bu komut girildiği zaman terminal size root parolanızı soracaktır. Root parolanızı girdiğiniz an terminal size grub yöneticinizin ayarlarını düzenleyebilme ve değiştirme olanağı tanıyacaktır. Bu yüzden dikkat edilmelidir.

Ayrıca “kernel panic!” veya buna benzer bir hata alırsanız. Sisteminizi yeniden başlatarak eski çekirdeğinizi seçip sisteminizi başlatabilirsiniz.

http://www.2dbilgisayar.com.tr/index.php?option=com_content&task=view&id=550&Itemid=2
 

hayranim

Profesör
Katılım
6 Nisan 2010
Mesajlar
1,402
Reaksiyon puanı
32
Puanları
48
Çok güzel eline sağlık. Kaynak belirttiğine göre bu işe kalkışmamışsın. Galiba debian tabanlı dağıtımda derlenmiş. Ben açıkcası saatler süreceği için böyle bir işe kalkışmak istemem. Yine de fikir sahibi oldum diyebilirim.
 
Üst