Elle çekirdek derleme

Arch Linux Türkiye Belgeleri sitesinden
Atla: kullan, ara



Tango-dialog-warning.png Bu yazı güncelliğini yitirmiştir.
Lütfen yazıdaki eski bölümleri çıkartarak, güncel bilgiler ile yenileyerek bu yazıyı yeniden yardımcı olabilecek seviyeye getirmeye katkıda bulunun.
Sebep: Bu yazı eski bir yazı olup içeriğindeki bilgilerin denenerek doğrulanması gereklidir. (Tartışın)
Tango-dialog-warning.png


Konu başlıkları

Giriş

Bu belgede Arch Linux ve Kernel 2.6.29.2 kullanılmış ve test edilmişdir. Kernel yapılandırma işlemleri sırasında 'make menuconfig' kullanılmış ve kernel sürümü "ARCHMOD" olarak belirtilmiştir.Siz farklı bir tanımlamada bulunabilirsiniz.

2.6.x Sürümü - Adım adım

1) Normal kullanıcıdan ($) Root' a (#) geçin

       $ su
       Password: xxxxxx
       #



Kalem.png
ÖNEMLİ:
/usr/src dizininin sahibi Root' tur. Root olmamızın sebebi budur.

2) Var olan kernelin yedeğinin alınması

Var olan kernelin ".config" dosyası /home/user dizinine kopyalanır.

Örnek:

       # cp /usr/src/linux-`uname -r`/.config ~/config.save

Ve eğer varsa, /usr/src ve /boot dizinlerindeki sembolik bağlantılar silinir:

       # cd /usr/src
       # rm linux
       # rm linux-2.6
       # cd /boot
       # rm System.map

3) /usr/src dizinin hazırlanması

/usr dizinine gidip /usr/src dizininin olup olmadığını kontrol edin:

       # cd /usr
       # ls | grep src

Yoksa, oluşturun:

       # mkdir src

ve 4. adıma geçin.

Var ve boş ise 4. adıma geçin.

(İsteğe bağlı) Var, ve bir kernel sürümü içeriyorsa, silebilirsiniz. Bu tamamen size kalmış. Yalnız, tavsiye edilmemektedir. Acil bir durumda eski kernel sürümü ile sisteme giriş yapmak isteyebilirsiniz.

       # cd src

ve tamamı silinir.

       # rm -rf *

(Uyarı: "rm -rf *" komutunu kullanırken dikkatli olun. Dosyaları geri getirilemeyecek şekilde siler.) ve 4. adıma geçin.

4) Güncel Kernel Sürümünün Kaydedilmesi

linux kernel websitesine gidip "linux-2.6.29.2.tar.bz2" yi indirin ve /usr/src dizinine kopyalayın:

       # cp linux-2.6.29.2.tar.bz2 /usr/src

5) Güncel Kernel Sürümünün Sıkıştırılmış Dosyadan Çıkarılması

/usr/src dizinine gidin, kerneli sıkıştırılmış dosyadan çıkarın ve dizinin içine girin:

       # cd /usr/src
       # tar -xvjf linux-2.6.29.2.tar.bz2
       # cd /usr/src/linux-2.6.29.2

6) Sembolik Bağlantı Oluşturulması

       # ln -s /usr/src/linux-2.6.29.2 /usr/src/linux
       # ln -s /usr/src/linux-2.6.29.2 /usr/src/linux-2.6

7) Kaynak dizinin Sıfırlanması

       # make mrproper

8) Yedek .config Dosyasının Kopyalanması

Yedeğini aldığımız .config dosyasını (config.save) /usr/src/linux-2.6.29.2 dizinine kopyalarız:

       # cp /home/USERNAME/config.save /usr/src/linux-2.6.29.2/.config

9) Yedek .config dosyasını Kullanrak Yeni Kerneli Yapınlandırmak

Burada kernelimizi yapılandırıyoruz. Örnek olarak "Ek A' yı" inceleyebilirsiniz.

       # make menuconfig

Yapılandırma bittiğinde .config dosyasını kaydedin.

10) Temizlik

Çeşitli nesne dosyalarını temizleyin. Bu adım, bütün kernel sürümleri için gereklidir:

       # make clean

11) Kernel İnşası

Şimdi yeni kerneli inşa edebiliriz:

       # make bzImage



Kalem.png
ÖNEMLİ:
Bu biraz zaman alabilir, sabırlı olun.

12) Modülleri Oluşturmak

Kernelin inşasının ardından, yüklenebilir modülleri oluşturmanız gerekiyor:

       # make modules



Kalem.png
ÖNEMLİ:
Bu, 11. adımdan biraz daha zaman alabilir. Sabırlı olun.

Modüller oluşturulduktan sonra yükleyin:

       # make modules_install

13) Yeni Kernelin /boot Dizinine Kopyalanması

       # cp -v arch/x86/boot/bzImage /boot/vmlinuz-2.6.28-ARCHMOD

14) Gerekliyse ramdisk Oluşturun (Önerilir)

       # mkinitcpio -k 2.6.28-ARCHMOD -g /boot/kernel26-ARCHMOD.img

Not: Diğer linux dağıtımlarında aşağıdaki komut kullanılabilir:

       # mkinitrd -k vmlinux-REVISION -i initrd-REVISION

YA DA

       # mkinitrd /boot/initrd-2.6.0.img 2.6.0

15) System.map

System.map dosyasını /boot dizinine kopyalayın ve sembolik bağlantı oluşturun:

       # cp System.map /boot/System.map-2.6.28
       # ln -s /boot/System.map-2.6.28 /boot/System.map

Bütün adımları uyguladıktan sonra, /boot dizininde aşağıdaki 3 dosya ve 1 sembolik bağlantıyı görebilirsiniz:

       vmlinuz-2.6.29.2-ARCHMOD          (File - Kernel)
       kernel26-ARCHMOD.img              (File - Ramdisk)
       System.map-2.6.29.2               (File - System Map)
       System.map                        (Soft Symlink)

16) GRUB Yapılandırması

Artık /boot/grub/menu.lst dosyanızı yeni kernel göre düzenleyebilirsiniz.

17) Test

Sistemi yeniden başlatın ve kernelin doğru şekilde yüklenip yüklenmediğini test edin.

Ek A

    • General Setup --->
    • (-ARCHMOD) Local version - append to kernel release
    • [*] Enable loadable module support --->
    • [*] Forced module loading
    • [*] Module unloading
    • [*] Forced module unloading
    • -*- Enable the block layer --->
    • [*] Support for Large Block Devices
    • [*] Support for Large Single Files
    • Processor type and features --->
    • [ ] Symmetric multi-processing support
    • Subarchitecture Type (PC-compatible) --->
    • Processor family (Athlon/Duron/K7) --->
    • Preemption Model (Preemptible Kernel (Low-Latency Desktop)) --->
    • [*] Local APIC support on uniprocessors
    • [*] IO-APIC support on uniprocessors
    • High Memory Support (off) --->
    • Memory model (Flat Memory) --->
    • [ ] Math emulation
    • Timer frequency (300 HZ) --->
    • Power management options --->
    • [*] ACPI (Advanced Configuration and Power Interface) Support --->
Kişisel araçlar
GOOGLE
Diğer dillerde