[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: kernel update 2.6.11.3 sorunu



2.6.3 ten beri debian da kendi kernelimi derleyip kullanıyorum işin tek zor kısmı 'config'. Eğer config dosyanızda eksik bişi varsa kerneli derlemeyebilirsiniz, boot ettiğiniz zaman açılmayabilir vs vs bu gibi sorunların hepsi config aşamasından kaynaklanıyor. önce sana nasıl kernel derlemen gerektiğini anlatayım.

apt-get install kernel-source-2.6.10 komutuyla 2.6.10 için debian a göre patchlenmiş sürümü indirin. (bootsplash için bu sürümde bir sorun vardı vesafb.c dosyasının orjinali ile değiştirmek gerekiyordu diye hatırlıyorum belki düzeltilmiştir.) daha sonra
cd /usr/src
tar xjf kernel-source-2.6.10
ln -s kernel-source-2.6.10 linux
cd linux

komutlarını vererek kernel-source paketini açın linux ismiyle bir symlink yaratın ve içine girin.

şimdi gelelim patch leri uygulamaya.

bootsplash için www.bootsplash.de adresinden kernelinize uygun patch dosyasını çekin .diff uzantılı olacaktır daha sonra /usr/src/linux dizinin içindeyken

patch -p1 < bootsplash..diff komutuyla patch i uygulayın. başka uygulamak istediğiniz patch varsa aynı bu şekilde uygulayın.

  Şimdi En zor ve saç baş yolduran kısım 'config' isterseniz

cp /boot/config-2.6.8-386 .config
make oldconfig

komutlarını vererek daha önce kullandığınız kernel konfigurasyonun uygulanmasını sağlayabilirsiniz. Ya da

make menuconfig (framebuffer)

make xconfig (qt)

make gconfig(gtk)

komutlarından herhangi biri ile kernel konfigurasyonuna başlayabilirsiniz. bunların her biri çalışabilmek için bazı kütüphanelere ihtiyaç duyarlar hatırladıklarımı yazıyım menuconfig ---- libncurses5-dev

xconfig ----- libqt3-mt-dev

gconfig ----  libgtk2.0-dev

Kernel konfigurasyonu kernel derlemenin %85 i dir diyebilirim. kernel config yaparken bazıların modül bazılarını da built-in olarak derleyebiliriz. Module olarak derlediğinizde siz istediğiniz zaman kernele dahil olur istemediğiniz zaman dahil olmaz built-in ise kernel açıldığından itibaren yüklenir(kötü bir cümle oldu) kernel konfigurasyonunu yaparken dikkat etmeniz gerekenler "help" bölümleri her opsiyonun help bölümünde ne işe yaradığı yazar öncelikle burda "if unsure say y" "if unsure say n" "if u dont know what it is you dont need it" gibi kalıplara dikkat edin ve açıklamaları düzgün okuyun. Konfig de insanların takıldığı bir diğer nokta ise initrd.img kullanmamalarından dolayı oluşan sorunlar ; initrd.img kullanmak istemiyorsanız bazı bölümleri built-in olarak derlemeniz gerekiyor. Mesela kullandığınız dosya sistemini builtin olarak derlemeniz gerekiyor. ya da ide-generic ide host controllerlar gibi. builtin olarak belirlerken dikkat etmeniz gereken nokta builtin derlemek istediğiniz bölümün üst bölümlerini de builtin derlemeniz gerekiyor mesela ses kartınız alsa modülünü builtin yapacaksınız. bunun için sound-card-support u da builtin olarak işaretlemeniz gerekiyor aksi halde sadece modül olarak işaretleyebilirsiniz. config olayı bazen çıldırtıbilir. emin olmadığınız yerler ile oynamayın.

config bölümünü hallettikten sonra make-kpkg --append-to-version=-kernelversiyonu buildpackage -rev Custom.1 kernel_image komutu ile kernel-headers kernel-source ve kernel-image paketlerini oluşturabilirsiniz eğer initrd.img kullanacaksanız. (açılışta unable mount root gibi bir hata alıyorsanız initrd.img kullanmamanızdan kaynaklanır)

make-kpkg --initrd --append-to-version=-kernelversiyonu buildpackage -rev Custom.1 kernel_image

komutunu verin bu sefer kerneliniz initrd.img ile birlikte oluşacaktır


bu arada config de filesystemsde compressed rom file system (cramfs) mutlaka builtin olmalı.

umarım düzgün anlatabilmişimdir.





pencuse wrote:

Ben de tam bu iş üzerinde çalışıyordum. Oğuz'la hemen hemen aynı
durumdayız. Ben de daha önce hiç kernel derlemememiştim. Ancak benim
sebebim daha keyfice, canım debian boot ederken hareketli bootsplash
görmek istedi. Allem ettik, kallem ettik, hala bir kerneli doğru
dürüst derleyemedim. Bahse konu dökümanlarda geçen tüm yönergeleri
teker teker, harmanlayarak, üzerine katarak denedim, ancak muvaffak
olamadım.

En son make-kpkg --revision=blabla kernel-image komutunu saatlerce
bekledikten sonra, Error 2 mesajıyla ansızın komut satırında beni
yapayalnız bırakan bir beraberliğimiz oldu. Benim de aklımda sorularım
var:

1. Size sorunumu daha iyi anlatabilmem için, nereden log bulup, neyi
göndermem gerekiyor? Yani en sonda bir mesaj çıkmıştı ama ben sabahın
05:30'unun gerginliği ile bilgisayarın fişini çektiğimden, yeniden o
mesaja nası ulaşırım bilmiyorum.
2. Ben de kernel'im hem küçük olsun, hem de sadece benim ihtiyacım
olan donanımı desteklesin, hafiflesin, daha hızlı daha verimli
çalışsın, çok güzel olsun istiyorum. Ama make xconfig ettiğimde, bir
ton paremetre çıkıyor. Şimdi, hiç kaçar yolu yok, bilgisayarımın
donanımının tüm detaylarını öğrendikten sonra, o listede sadece onları
bırakıp, diğerlerini teker teker kaldıracak mıyım? yoksa daha kestirme
bir yolu var mı? Bu kernel sadece tecrübesi olmayanlara mı bu kadar
karmaşık geliyor?
3. cp /boot/config-2.6.8-2-686 /usr/src/.config olarak kopyaladığımda,
yukarıdaki soruma çözüm olabilir mi? Yoksa, şimdiki config dosyasında
da donanımımın aslında hiç ihtiyacı olmayacak bir sürü parça yüklü
olması olası mı?
4. bir de şu patchler konusu kafamı karıştırıyor. 2.6.10 ile başladım,
kernel derleme sevdasına, sonra, malumunuz 2.6.11.4 çıktı. Ben en son,
2.6.11.3 source'nu indirmiştim. Şimdi, sadece 2.6.11.4'ün patchini
indirsem, sonra /usr/src/patch -p1 <2.6.11.4.yaması komutunu versem,
sonra, make mrproper/make xconfig/make-kpkg desem 2.6.11.4 mü olacak,
daha bunun debian spesific yamaları yok mu? Nerden bulurum, nasıl
yaparım..

Gördüğünüz üzere bu kernel konusunda oldukça karmaşığız.





Reply to: