Linux

Linux Çekirdeği (Kernel’ı) Nasıl Derlenir?

Merhaba arkadaşlar. Sizlere bazı durumlarda bizlere lazım olan Linux Çekirdeği’ni (Kernel’ını) derlemeyi anlatmaya çalışacağım. Bu yazıyı yazarken bu adresi referans aldım. Ben bağlantıdaki yazının güncellenmiş bir halini yazmaya çalıştım. Buradan screenshoot isimli yazara da teşekkürlerimi iletiyorum.

Normalde siz Linux çekirdeği üzerine inşa edilmiş bir dağıtım kurduğunuz zaman bu dağıtım çekirdek uygulamaları geliştirebileceğiniz şekilde gelmez. Bu nedenle siz çekirdek uygulamaları yazamazsınız. Çekirdek uygulamaları yazabilmeniz için mutlaka çekirdeği derlemeniz gerekir. Çekirdek derlemedeki bir başka amacınız da sistem performansını arttırmak istemeniz olabilir. Yalnız derleme uzun ve biraz da zor bir iş. Şimdi kendinizi hazır hissediyorsanız başlayalım. Yazımız adım adım gidecek.

  1. Buradan Linux çekirdeğinin en son stabil sürümünü indiriyoruz. Ben bu yazıyı yazarken son stabil çekirdek 3.16.5 idi.                                                                                                                                                                                    Screenshot from 2014-10-11 22:39:32Latest Stable Kernel 3.17 yazıyor ama siz işi garantiye almak için 2. satırdaki stable sürümü indirin.
  2. Ben bu dosyayı Downloads klasörüne indirdim. Siz de indirdiğiniz yere göre şu komutu düzenleyerek dosyayı /usr/src dizinine kopyalayın:
  3. cd komutu ile /usr/src dizinine geçiş yapın:
  4. tar.xz uzantılı dosyayı şu komutla klasöre çıkartın:
  5. Klasöre çıkarttığınız dizine girin:
  6. Eski ayarları temizlemek için şu komutu verin:
  7. Sisteminizi optimize etmek için yapacağımız işe geldi sıra. Ben bu aşamada hiç bir şey yapmadan geçtim. Ama siz sisteminizi optimize etmek istiyorsanız komutu kullanabilirsiniz:

    Screenshot from 2014-10-11 23:27:52
  8. Fazlalıkları temizlemek için şu komutu verin:
  9. Sıra geldi elimizdeki çekirdeği derlemeye. Yaklaşık olarak 30 dakika sürecek bu işlem için şu komutu verin ( İşlemciniz daha iyiyse daha kısa sürebilir 🙂 ):
  10. Ardından derlemenin en uzun işlemi olan modül derlemesini gerçekleştirmek için şu komutu verin:
  11. Şu komutla çekirdek modüllerini modül kütüphanesine taşıma işlemini yapın:
  12. Şu komutla modüllerin ve sistemin düzgün çalışmasını sağlıyoruz:
  13. Şimdi vereceğiniz şu komutla derlediğiniz çekirdeği boot dizinine kopyalayın:
  14. System.map dosyasını boot dizinine kopyalayın:
  15. Sembolik bağ oluşturmak için şu kodu girin:
  16. Şimdi sıra derlediğimiz çekirdeğin grub ekranında çıkmasını sağlamaya geldi. Öncelikle şu komutla grub ayar dosyasını açın:
  17. Yeni bir terminal açın ve şu komutu verin:
    Bu komutu verdikten sonra gelen çıktıdan UUID değerini alacaksınız ve grub dosyasını düzenlerken kullanacaksınız. Ayrıca hd0 mı yoksa hd1 mi olduğuna yine buradan karar vereceksiniz. sda ise hd0 sdb ise hd1 yazmanız gerekiyor. Bu komutu herhangi bir dizin içindeyken verebilirsiniz.
    Screenshot from 2014-10-11 23:38:38
  18. Şimdi buradan aldığımız değerler ile grub dosyasını düzenleyelim. Az önce açtığınız grub dosyasında ### BEGIN /etc/grub.d/10_linux ### satırını bulun ve altına şu metni ekleyin:
     
  19. Ve son olarak şu komutu verin ve ardından sistemi yeniden başlatın. Yeniden başlattığınızda generic kelimesine sahip boot seçeneğinden sistemi boot edin:

Çekirdek(kernel) derleme yazım burada bitiyor. Başka bir yazıda görüşmek üzere sağlıcakla kalın.