Gönderen Konu: [Nasıl] Çekirdek Derleme - Resimli  (Okunma sayısı 25413 defa)

0 Üye ve 1 Ziyaretçi konuyu incelemekte.

« : »
Bu makalede bir nebze de olsa çekirdek derlemeyi göstereceğim. İşlemlerimizi root iken yaptığımızı belirtelim. İlk olarak gerekli programları indiriyoruz ( Tabi bunlar kurulurken bağımlılıklar ve ek paketlerde kurulacak.) ;

Kod: [Seç]
apt-get install build-essential bin86 kernel-package libqt3-headers libqt3-mt-dev libncurses5-dev links






Evet programlarımı kurduk. Şimdi kaynak dizinimize gidiyoruz ;

Kod: [Seç]
cd /usr/src


Şimdi sıra geldi "links" programını çalıştırarak www.kernel.org adresine gidip son çekirdek sürümünü indirmeye.

Kod: [Seç]
links http://www.kernel.org
Girdikten sonra son kararlı (stable) çekirdek sürümünün üzerine gelip "ctrl+d" ile indiriyoruz. İndirme işlemi bittikten sonra kontrol etmek maksadı ile "ls" komutunu verip doğru yere indirdiğimizi kontrol ediyoruz.







Şimdi indirdiğimiz çekirdeği arşivden çıkartıyoruz.

Kod: [Seç]
tar xvjf linux-2.6.32.8.tar.bz2




Yeni bir klasör olusturup açtığımız arşivi o klasöre taşıyıp oluşturduğumuz klasörün içine giriyoruz ;
Kod: [Seç]
mkdir yeni && mv linux-2.6.32.8 yeni && cd yeni
Şimdi eğer indirdiğimiz çekirdek versiyonun yaması varsa onu indiriyoruz.
Kod: [Seç]
links http://www.kernel.org/pub/linux/kernel/v2.6/


Bu işlemden sonra yamayı çekirdeğimize ekliyoruz.

Kod: [Seç]
bzcat patch-2.6.32.8.bz2 | patch -p1
Şimdi en can alıcı olan noktaya geldik.

Kod: [Seç]
cd linux-2.6.32.8/ komutu ile çekirdeğin içine giriyoruz ve "
Kod: [Seç]
make menuconfig" komutunu girip ayarlarımızı yapıyoruz. donanımımızı öğrenmek için "
Kod: [Seç]
lspci" ve "
Kod: [Seç]
lsusb" komutlarını girip donanımlarını öğreniyoruz. Bunlar bizim için çok önemli. Zira çekirdeğimizi bunlara göre biçimlendireceğiz. Burada seçimleri göstermiyorum. Bilgisayarınızın eniyileştirilmesi için gerekli olan bütün ayarları burdan yapıyoruz. Klavyeden tutunda fareye kadar... Bir örnek vermek gerekirse kablosuz kartımdan örnek vereyim; resimde de göreceğiniz gibi seçili olan sadece intel 3945 tir. Çok fazla ayrıntıya girmiyorum, Girmek istemiyorum, nedeni ise; ezbere değil deneme yanılma yönetimi ile uğraşarak yapmanız gerektiği için. Çekirdek derlemek önemli bir iştir. Süresi sizin seçtiğiniz modül sürücü işlemci hızı vs. bağlı olarak derleme süresi uzayıp kısalabilir.





İşlemlerimizin ardından
Kod: [Seç]
make-kpkg clean temizliğimizi yapıp
Kod: [Seç]
make-kpkg kernel-image kernel_headers --initrd komutu ile debian paketlerimizi oluşturuyoruz.



Derleme sonrası ;



Şimdi sıra derlediğimiz çekirdeği kurmaya geldi;

Kod: [Seç]
cd /usr/src/yeni komutu ile üst dizine çıkıyoruz ve
Kod: [Seç]
dpkg -i linux-headers-2.6.32.8_2.6.32.8-10.00.Custom_i386.deb linux-image-2.6.32.8_2.6.32.8-10.00.Custom_i386.deb komutu ile sisteme kuruyoruz...





Kurulum başarılı bir şekilde gerçekleştirildikten sonra sistemi yeniden başlatıyoruz ve grub açılış menüsünden en son yüklediğimiz çekirdek sürümünü seçip başlatıyoruz. Sağlıklı bir şekilde başlayıp sistemde eksiklik sorun yoksa başarılı bir şekilde çekirdeğimizi derlemişizdir...



Üstüne basa basa belirmek isterim ki çekirdek derlemek zor ve meşaggatli bir iştir. Ama alıştıkça kolay gelir. Eğer tamamı ile eniyileştirip derlerseniz büyük bir performans farkı olduğunu göreceksiniz. Ama üstün körü derleme yapar iseniz hiçbir değişiklik olmadığını göreceksiniz.

Kaynak ; http://allosplatform.com/?p=102

Not: Forumda yapılan anlatım resimli olmadığı için ekledim.
« Son Düzenleme: 07 Ağustos 2012 - 17:15:03 Gönderen: if »

« Yanıtla #1 : »
Paylaşım için teşekküler

« Yanıtla #2 : »
Selam

Öncelikle elinize sağlık, bu güzel ip uçları için.

Şimdiye kadar hiç ilgilenmediğim bu konuda hazır yeri gelmişken sorayım.:)
Benim 2 sorum olacaktı.

1.si Normal yolla kurduğumuz kernelle, böyle derleme arasında ciddi fark olur mu?
Örn. Ben debootstrap ile herhangi bir dizine Debian base.sistemi kurup, üzerine kernel, xorg vs. giydirip istediğim ortamı minimal vs.kurabiliyorum.
Derleme yapınca performansta genede artış olur mu?

2.si Chroot satırından diğer diskte bulunan örn. Debian'da çalışabilir  miyiz?
Gerçi resimlere bakınca bu mümkün gibi görünüyor.

Eğer ilk sorunun cevabı, evet artış olursa yarından tezi yok AR-GE çalışmalarına başlayabilirimde :D
Maceraya hazır mısın!  Bir BSD almaz mısın?

« Yanıtla #3 : »
Paylaşım için teşekkürler daha önceden bir arkadaşımız bir program yardımıyla derlemişti böyle terminal fazla yoktu sizin derlemeniz daha farklı sayenizde alternatif bir yol daha kazanmış olduk.Elinize sağlık  :D


Mesaj tekrarı yüzünden mesajınız birleştirildi. Bu mesajın gönderim tarihi : 21 Şubat 2010 - 23:35:10
Selam

Öncelikle elinize sağlık, bu güzel ip uçları için.

Şimdiye kadar hiç ilgilenmediğim bu konuda hazır yeri gelmişken sorayım.:)
Benim 2 sorum olacaktı.

1.si Normal yolla kurduğumuz kernelle, böyle derleme arasında ciddi fark olur mu?
Örn. Ben debootstrap ile herhangi bir dizine Debian base.sistemi kurup, üzerine kernel, xorg vs. giydirip istediğim ortamı minimal vs.kurabiliyorum.
Derleme yapınca performansta genede artış olur mu?

2.si Chroot satırından diğer diskte bulunan örn. Debian'da çalışabilir  miyiz?
Gerçi resimlere bakınca bu mümkün gibi görünüyor.

Eğer ilk sorunun cevabı, evet artış olursa yarından tezi yok AR-GE çalışmalarına başlayabilirimde :D
Benden daha bilgili arkadaşlar  iyi açıklarlar ama düzgün derlenmiş kernel yani kendi bilgisayar sistemize göre derlediğiniz kernel kuşkusuz güncellemelerle gelenden daha iyi olacaktır zaten arkadaşımızda demiş derleme aşamasında ki en önemli yer doğru ayarları yapmak.
« Son Düzenleme: 21 Şubat 2010 - 23:36:02 Gönderen: xxx3 »

« Yanıtla #4 : »
Sağolun Allah razı olsun.

Selam

Öncelikle elinize sağlık, bu güzel ip uçları için.

Şimdiye kadar hiç ilgilenmediğim bu konuda hazır yeri gelmişken sorayım.:)
Benim 2 sorum olacaktı.

1.si Normal yolla kurduğumuz kernelle, böyle derleme arasında ciddi fark olur mu?
Örn. Ben debootstrap ile herhangi bir dizine Debian base.sistemi kurup, üzerine kernel, xorg vs. giydirip istediğim ortamı minimal vs.kurabiliyorum.
Derleme yapınca performansta genede artış olur mu?

2.si Chroot satırından diğer diskte bulunan örn. Debian'da çalışabilir  miyiz?
Gerçi resimlere bakınca bu mümkün gibi görünüyor.

Eğer ilk sorunun cevabı, evet artış olursa yarından tezi yok AR-GE çalışmalarına başlayabilirimde :D

Benim  gözlemlerim de ciddi farklar var. Hız konusunda artış yüksek düzeyde.

Örnek olarak bi resim ekliyorum. Kendi derlediğiniz kernel ile belleği ne kadar kullandığına bakın ;



Not: Görüntü kullandığım Gentoo'dan örnek. Ubuntu ve Debian'da da çok bi fark yok. derlediğim kernel sonrası harcadığı ram miktarı 150 mb falandı.

« Yanıtla #5 : »
Benden daha bilgili arkadaşlar  iyi açıklarlar ama düzgün derlenmiş kernel yani kendi bilgisayar sistemize göre derlediğiniz kernel kuşkusuz güncellemelerle gelenden daha iyi olacaktır zaten arkadaşımızda demiş derleme aşamasında ki en önemli yer doğru ayarları yapmak.
Anladım. :)
Galiba soruyu ben biraz yanlış sormuşum, normal değilde a-normal olacaktı, zira base.system kurulumu pek normal değil ama o da sonuçta Debian depolarından gelen kernel'i kuruluyor.

Not: Görüntü kullandığım Gentoo'dan örnek. Ubuntu ve Debian'da da çok bi fark yok. derlediğim kernel sonrası harcadığı ram miktarı 150 mb falandı.
Teşekkür ederim.
Anlaşılan bu konuya ben bi'el atayım, hazır diskte'de 1 boş yer varken, chroot ile bir deneyeyim bakalım nasıl olacak. :)
Maceraya hazır mısın!  Bir BSD almaz mısın?

« Yanıtla #6 : »
@CWKursad , öncelikle eline sağlık. Aslında forumda bir anlatım vardı fakat alternatif olsun bu da. Ancak bir iki ufak düzeltme, bilgilendirme yapmak istiyorum.

Hani bin86'ya gerek var mı bilemiyorum ancak links ve qt paketleri gereksiz gibi. links olmadan kernel doğrudan çekilebilir. qt paketleri de xconfig için gereklidir, başlıkta anlatılan menuconfig kullanılacaksa gerek yoktur. Bir de kurulum için verilen apt-get sanırım sudo ister :)

@Felâsife, doğrudan hız beklentisi için kernel derlemek bence gereksiz. Her ne kadar şahsi düşüncem bu olsa da, gözle görülür meselelerde geçerliliğini korur bu görüş. Kernel derlemek genelde daha özel sistem oluşturma veya kerneli ufaltma gayesiyle yapılıyor. Hani çok özel bir donanım vardır da, derlenen kernelde destek yoktur. Kullanmadığımız donanımlar vardır da, kernelden desteğini çekmek istiyoruzdur. Fakat bu tamamen benim görüşüm. Sonuçta diğer görüş hızın artacağı yönünde (zaten ben de gözle görülür diyorum). Sonuçta o kernel sizin sisteminizde (mimarinizde) derlenmiş oluyor. Hiç olmazsa buradan bir miktar kazanç olur, fakat bunun için kernel derlemek gerekir mi? Bence hayır.
Hayattan çıkarı olmayanların, ölümden de çıkarı olmayacaktır.
Hayatlarıyla yanlış olanların ölümleriyle doğru olmalarına imkân var mıdır?

Böylece yalan, dünyanın düzenine dönüştürülüyor.

« Yanıtla #7 : »
@heartsmagic ;

links Gentoo'dan kalma bi alışkanlık. gconfig, xconfig , menuconfig şeklinde anlatım yapacaktım, malum kernel derlemek yoruyor insanı, onları eklemeyi unutmuşum (: Allah razı olsun düzeltmeniz için...

apt-get için ilk yazıda "işlemlerimizi root iken yaptığımızı belirtelim" diye eklemiştim. Onun için yaptığım şekilde anlatım yaptım. Resimlerde de root@cwkursad:~# şeklinde...

Biliyorum anlatım olduğunu ama resimli anlatım olmadığı için eklemek istedim...

Ayrıca Kernel derleme konusunda görüş  ayrılığı içindeyiz. (: Şahsi görüşümdür; Linux kullanan * herkes kernel derlemeli ve kullanmalıdır.

« Yanıtla #8 : »
@Felâsife, doğrudan hız beklentisi için kernel derlemek bence gereksiz. Her ne kadar şahsi düşüncem bu olsa da, gözle görülür meselelerde geçerliliğini korur bu görüş. Kernel derlemek genelde daha özel sistem oluşturma veya kerneli ufaltma gayesiyle yapılıyor. Hani çok özel bir donanım vardır da, derlenen kernelde destek yoktur. Kullanmadığımız donanımlar vardır da, kernelden desteğini çekmek istiyoruzdur. Fakat bu tamamen benim görüşüm. Sonuçta diğer görüş hızın artacağı yönünde (zaten ben de gözle görülür diyorum). Sonuçta o kernel sizin sisteminizde (mimarinizde) derlenmiş oluyor. Hiç olmazsa buradan bir miktar kazanç olur, fakat bunun için kernel derlemek gerekir mi? Bence hayır.
Uyarıların için çok teşekkür ederim @heartsmagic, sağ olasın.:)
Bi el atmadığım bu kernel işi kalmıştı birde ona el atayım, kernelin içinde ne varmış ne yokmuş açıkcası çok merakta ediyordum.
Bu anlatım vesile oldu.
Şu an zaten config'in içindeyim, bir taraftanda ona bakıyorum, neler var neler yok.  :P
Maceraya hazır mısın!  Bir BSD almaz mısın?

« Yanıtla #9 : »
@CWKursad, root bölümünü kaçırmışım :) O zaman ufak bir:
Kod: [Seç]
sudo -i iyi gider ilk komut olarak :)
Görüş ayrılığı elbette olacak. Zaten hepimiz aynı yönde düşünüyor olsaydık bu ortamın güzelliği kalmazdı.

@Felâsife, vaktin varsa neden denemeyesin :) He kendin görmüş olursun ilk elden.
Hayattan çıkarı olmayanların, ölümden de çıkarı olmayacaktır.
Hayatlarıyla yanlış olanların ölümleriyle doğru olmalarına imkân var mıdır?

Böylece yalan, dünyanın düzenine dönüştürülüyor.

« Yanıtla #10 : »
ufff.. kernel ne karışıkmış öyle, herkes burada da kim kimdir belli değil  :P
Maceraya hazır mısın!  Bir BSD almaz mısın?

« Yanıtla #11 : »
Zaten mesele neyin ne olduğunu anlamaktan geçiyor :) Bu konuda xconfig daha kullanışlı olur sanırım, açıklamalar vardı onda.
Hayattan çıkarı olmayanların, ölümden de çıkarı olmayacaktır.
Hayatlarıyla yanlış olanların ölümleriyle doğru olmalarına imkân var mıdır?

Böylece yalan, dünyanın düzenine dönüştürülüyor.

« Yanıtla #12 : »
Zaten mesele neyin ne olduğunu anlamaktan geçiyor :) Bu konuda xconfig daha kullanışlı olur sanırım, açıklamalar vardı onda.
Evet xconfig bencede daha kullanışlı görünüyor ama ben chroot ile bağlandığım için mecburen menuconfig açılıyor.
Fakat dediğiniz gibi derleme işine ben pek bulaşmayayım en iyisi, doğru dürüst donanımlarımı bile bulamadım ki :D
Koca bir dünya olmuş orası.

Neyse bu olayı öğrendiğim iyi oldu, @CWKursad'a bir kez daha teşekkürler.
Bu arada diğer konuyuda baktım, @erginemr'e de teşekkürler.
Maceraya hazır mısın!  Bir BSD almaz mısın?

« Yanıtla #13 : »
Yeşil rengi seviyorum :):) Ellerine sağlık CWKurşad

« Yanıtla #14 : »
Bakın anlattınız beni de yoldan çıkardınız lakin elimde ne ubuntu cd'im nede imaj dosyam var hepsini arkadaşlara vermişim asıl sorun xp'ye format çektim ubuntum olmasına rahmen cd olmadıgı için grub'u yükleyemedim  :(  :(  :(

« Yanıtla #15 : »
Geçmiş olsun @xxx3
Anlaşılan bayağı ters bir zamanda derleme işine girişmişsiniz, cd'niz elinize çabuk geçer umarım. :)
Maceraya hazır mısın!  Bir BSD almaz mısın?

« Yanıtla #16 : »
Geçmiş olsun @xxx3
Anlaşılan bayağı ters bir zamanda derleme işine girişmişsiniz, cd'niz elinize çabuk geçer umarım. :)
Derleme işi değilde beni yakan ailemin windows hastalıgı oldu xp çökmüştü bende yeniden kurdum kurduktan sonra aklıma geldi elimde ki tüm 9.10 cd'lerini arkadaşlarıma verdim 9.04 var ama oda grub 2 değil acaba grubu2 den gruba direk geçiş yapılabiliyor mu ? Araştırmam lazım senin anlıyacağın windows'un bir oyununa daha geldik.  :D

« Yanıtla #17 : »
Geçmiş olsun @xxx3
Anlaşılan bayağı ters bir zamanda derleme işine girişmişsiniz, cd'niz elinize çabuk geçer umarım. :)
Derleme işi değilde beni yakan ailemin windows hastalıgı oldu xp çökmüştü bende yeniden kurdum kurduktan sonra aklıma geldi elimde ki tüm 9.10 cd'lerini arkadaşlarıma verdim 9.04 var ama oda grub 2 değil acaba grubu2 den gruba direk geçiş yapılabiliyor mu ? Araştırmam lazım senin anlıyacağın windows'un bir oyununa daha geldik.  :D

Grub2'den Grub'a Geri Dönüş

« Yanıtla #18 : »
@xxx3, 9.04 CD'si ile de Grub2 kurabilirsin. Zaten mesele kurulu olan sisteme chroot yapma, ondan sonra kurulu olan sistem üzerinden kuruluyor Grub2.
Hayattan çıkarı olmayanların, ölümden de çıkarı olmayacaktır.
Hayatlarıyla yanlış olanların ölümleriyle doğru olmalarına imkân var mıdır?

Böylece yalan, dünyanın düzenine dönüştürülüyor.

« Yanıtla #19 : »
Heartsmagic ve  Irmak arkadaşlarım yardımlarınız için teşekkür ederim sorunum düzeldi. Aslında heartsmagic ben grub2 nin farklı olucağını düşündüğüm için 9.10 cd bulmaya çalıştım 9.04 de olacağını tahmin etmemiştim sayende öğrenmiş oldum tek fark chroot yapmakmış  :D ırmak arkadaşımızında verdiği linki ben forumda okumuştum anlaşılan okurken pek dikkat etmemişim  :(
Sonuçda burdan çıkardığım iki ders oldu bir grub2 chroot yaparak 9.04 tekrar kurulabiliyormuş iki forumda ki yazıları daha dikkatli okumalıyım.  :) Tekrardan ikinize de teşekkür ederim arkadaşlar.

« Yanıtla #20 : »
Geçmiş olsun @xxx3.
Hayattan çıkarı olmayanların, ölümden de çıkarı olmayacaktır.
Hayatlarıyla yanlış olanların ölümleriyle doğru olmalarına imkân var mıdır?

Böylece yalan, dünyanın düzenine dönüştürülüyor.

« Yanıtla #21 : »
Geçmiş olsun @xxx3.
Teşekkür ederim sayenizde  :D

« Yanıtla #22 : »
Arkadaşlar kernel derlerken şöyle bir hatayla karşılaştım acaba neden kaynaklanıyor?
« Son Düzenleme: 30 Kasım 2011 - 21:35:05 Gönderen: cerencalici »

« Yanıtla #23 : »
@xxx3, görüntü yerine hata olan satırları buraya aktarınız.

« Yanıtla #24 : »
Hata çıktısı söyle

Kod: [Seç]
In file included from drivers/staging/cxt1e1/musycc.c:81:0:
drivers/staging/cxt1e1/sbecom_inline_linux.h:59:32: ölümcül hata: config/modversions.h: Böyle bir dosya ya da dizin yok
derleme sonlandırıldı.
make[4]: *** [drivers/staging/cxt1e1/musycc.o] Hata 1
make[3]: *** [drivers/staging/cxt1e1] Hata 2
make[2]: *** [drivers/staging] Hata 2
make[1]: *** [drivers] Hata 2
make[1]: `/usr/src/yeni/linux-3.1.4' dizininden çıkılıyor
make: *** [debian/stamp/build/kernel] Hata 2