Syslinux (Türkçe) - ArchWiki

Jump to content

# Syslinux (Türkçe)

5 languages

- Deutsch
- English
- 日本語
- Русский
- 中文（简体）

From ArchWiki
Çeviri Durumu: Bu makale, Syslinux makalesinin çevirisidir. Son çeviri tarihi (yıl-ay-gün şeklinde): 2023-05-16. Eğer makalenin İngilizce sürümünde değişiklik yapılmış ise çevirinin senkronize edilmesine yardımcı olabilirsiniz. Çevirmenliğe dair bilgi edinmek için Telegram grubumuzu ziyaret edebilirsiniz. Çevrilmiş tüm makelelere buradan erişebilirsiniz.

İlgili makaleler

- Arch boot process

Syslinux sürücülerden, CD'lerden ve PXE aracılığıyla ağ üzerinden önyükleme yapabilen bir önyükleme yükleyicileri koleksiyonudur. Desteklenen bazı dosya sistemleri şunlardır: FAT, NTFS, ext2, ext3, ext4, XFS, UFS/FFS, ve sıkıştırılmamış tek cihaz Btrfs.

Uyarı: Syslinux 6.03'ten itibaren, desteklenen dosya sistemlerinin bazı özellikleri önyükleyici tarafından desteklenmemektedir. Daha fazla bilgi için [1] sayfasına bakın.
Not: Syslinux, kendi başına, kendi bölümleri dışındaki bölümlerdeki dosyalara erişemez. Bunun nasıl aşılacağı konusunda #Zincirleme önyükleme bölümüne bakın.

## BIOS Sistemleri

### Önyükleme sürecine genel bakış

1. Aşama 1: Bölüm 1 - MBR'yi yükle - BIOS açılışta 440 baytlık MBR açılış kodunu diskin başına yükler (`/usr/lib/syslinux/bios/mbr.bin` veya `/usr/lib/syslinux/bios/gptmbr.bin`).
2. Aşama 1 : Bölüm 2 - Aktif bölümü ara. Aşama 1 MBR önyükleme kodu etkin olarak işaretlenmiş bölümü arar (MBR disklerde önyükleme bayrağı). Örneğin bunun `/boot` bölümü olduğunu varsayalım.
3. Aşama 2 : Bölüm 1 - Birim önyükleme kaydını çalıştır - Aşama 1 MBR önyükleme kodu `/boot` bölümünün Birim Önyükleme Kaydını (VBR) çalıştırır. Syslinux durumunda, VBR önyükleme kodu `/boot/syslinux/ldlinux.sys` bölümünün `extlinux --install` komutu tarafından oluşturulan başlangıç sektörüdür. `ldlinux.sys`'in `ldlinux.c32` ile aynı olmadığını unutmayın.
4. Aşama 2 : Bölüm 2 - `/boot/syslinux/ldlinux.sys`'i çalıştır - VBR `/boot/syslinux/ldlinux.sys` dosyasının geri kalanını yükleyecektir. `/boot/syslinux/ldlinux.sys`'in sektör konumu değişmemelidir, aksi takdirde Syslinux önyükleme yapmayacaktır.
   Not: Btrfs durumunda, dosyalar `ldlinux.sys`'in sektör konumunun değişmesine neden olacak şekilde hareket ettiğinden yukarıdaki yöntem işe yaramayacaktır. Bu nedenle, Btrfs'de `ldlinux.sys` kodunun tamamı VBR'yi takip eden alana gömülür ve diğer dosya sistemlerinin aksine `/boot/syslinux/ldlinux.sys`'e yüklenmez.
5. Aşama 3 - `/boot/syslinux/ldlinux.c32`'yi yükle. - `/boot/syslinux/ldlinux.sys`, `/boot/syslinux/ldlinux.c32` dosyasını yükleyecektir. (çekirdek modül), Syslinux'un `ldlinux.sys` içine sığdırılamayan çekirdek kısmının geri kalanını içerir. (dosya boyutu kısıtlamaları nedeniyle). `ldlinux.c32` dosyası her Syslinux kurulumunda bulunmalı ve bölümde yüklü olan `ldlinux.sys` sürümüyle eşleşmelidir. Aksi takdirde Syslinux önyükleme yapamayacaktır. Daha fazla bilgi için https://bugzilla.syslinux.org/show_bug.cgi?id=7 adresine bakınız.
6. Aşama 4 - Konfigürasyon dosyasını ara ve yükle - Syslinux tamamen yüklendiğinde, `/boot/syslinux/syslinux.cfg` dosyasını arar. (veya bazı durumlarda `/boot/syslinux/extlinux.conf`) ve bulunursa yükler. Eğer herhangi bir konfigürasyon dosyası bulunamazsa, Syslinux `boot:` komut istemine düşeceksiniz. Bu adım ve Syslinux'un çekirdek olmayan bölümlerinin geri kalanı (`/boot/syslinux/*.c32` modülleri, `lib*.c32` ve `ldlinux.c32` hariç) `/boot/syslinux/lib*.c32` gerektirir. (kütüphane) modüllerinin mevcut olması gerekir (https://wiki.syslinux.org/wiki/index.php/Common_Problems#ELF). `lib*.c32` kütüphane modülleri ve çekirdek olmayan `*.c32` modülleri, bölümde yüklü olan `ldlinux.sys` sürümüyle eşleşmelidir.

### BIOS'ta Kurulum

syslinux paketini indirin.

Not:

- gptfdisk paketi #Otomatik kurulum bölümünü izliyorsanız GPT desteği için gereklidir.
- Önyükleme bölümünüz FAT ise, mtools paketine de ihtiyacınız olacaktır.

Paketin yüklenmesi ile önyükleyicinin yüklenmesi aynı şey değildir. İlgili paket(ler)i yükledikten sonra, sistemi önyükleyebilmek için önyükleyici kodunun kendisinin (uygun alana, genellikle VBR'ye) yüklenmesi gerekir; aşağıdaki bölümlerde sisteminizin özelliklerine bağlı olarak alternatif talimatlar verilmektedir.

#### Otomatik kurulum

Not: `syslinux-install_update` betiği Arch'a özgüdür ve Syslinux tarafından sağlanmaz/desteklenmez. Lütfen betiğe özgü tüm hata raporlarını Syslinux'a değil Arch Hata Takibi adresine yönlendirin.

- `syslinux-install_update` komut dosyasını çalıştırdıktan sonra, #Konfigürasyon ve #Kernel parametreleri bölümlerini izleyerek `/boot/syslinux/syslinux.cfg` dosyasını düzenlemeyi unutmayın..

Uyarı: `syslinux-install_update` betiği, muhtemelen sisteminize uymayan varsayılan bir root bölüm belirler. Syslinux'u `/boot/syslinux/syslinux.cfg` dosyasını düzenleyerek doğru root bölüme yönlendirmek önemlidir, aksi takdirde işletim sistemi önyükleme yapamayacaktır. Bakınız: #Kernel parametreleri.

`syslinux-install_update` betiği önyükleyici kodunu yükler (genellikle VBR'ye), `*.c32` modüllerini `/boot/syslinux/`'a kopyalar, önyükleme bayrağını ayarlar ve önyükleme kodunu MBR'ye yükler. Yazılım RAID ile birlikte MBR ve GPT disklerini işleyebilir:

Ayrı bir önyükleme bölümü kullanıyorsanız, bunun bağlı olduğundan emin olun. `lsblk` ile kontrol edin; eğer bir `/boot` bağlama noktası görmüyorsanız, daha ileri gitmeden önce bağlayın.

- Bayraklarla `syslinux-install_update`'i çalıştırın: `-i` (dosyaları yükleyin), `-a` ("boot" bayrağı ile "aktif" bölümü işaretleyin), `-m` (MBR önyükleme kodunu yükleyin):

      # syslinux-install_update -i -a -m

  Bu komut "Syslinux BIOS install failed" ile başarısız olursa, sorun büyük olasılıkla `extlinux` ikilisinin `/boot` içeren bölümü bulamamasıdır:

    # extlinux --install /boot/syslinux/

    extlinux: cannot find device for path /boot/syslinux
    extlinux: cannot open device (null)

Bu, örneğin, mevcut bir özel kerneli önyüklerken `root=/dev/sda1` şeklindeki bir kernel komut satırı parametresini `/proc/cmdline` ve `mount` komutunun çıktısı ile kanıtlandığı gibi `root=801` sayısal eşdeğerine dönüştüren LILO'dan yükseltme yaparken meydana gelebilir. Bu durumu ya `--device=/dev/sda1`'i `extlinux`'a belirtirken aşağıda açıklanan manuel kurulumla devam ederek ya da sadece ilk olarak stok Arch Linux Kerneline yeniden başlatarak düzeltin; bir initramfs kullanımı sorunu önler.

Not:

- Sisteminizi şimdi yeniden başlatırsanız, bir Syslinux komut istemi alırsınız. Sisteminizi otomatik olarak başlatmak veya bir önyükleme menüsü almak için yapılandırma dosyası oluşturmanız (düzenlemeniz) gerekir.
- Eğer başka bir root dizindeyseniz (örneğin bir kurulum diskinden) SYSLINUX'u chroot'a yönlendirerek kurun:

    # syslinux-install_update -i -a -m -c /mnt

- Şimdi #Konfigürasyon ve #Kernel parametreleri adımlarını takip ederek `/boot/syslinux/syslinux.cfg` dosyasını düzenleme zamanı.

#### Manuel Kurulum

Not: Eğer kurulu bir sistemi canlı CD ile kurtarmaya çalışıyorsanız, bu komutları çalıştırmadan önce chroot yaptığınızdan emin olun. Önce chroot yapmazsanız, tüm dosya yollarını (`/dev/` yollarını değil) bağlama noktası ile öncelemeniz gerekir.

Syslinux'u kurmayı planladığınız önyükleme bölümünüz bir FAT, ext2, ext3, ext4 veya Btrfs dosya sistemi içermelidir. Syslinux'u bir dosya sisteminin root dizinine, örneğin `/dev/sda1` aygıtı `/boot` üzerine takılı olarak kurmak zorunda değilsiniz. Örneğin, Syslinux'u `syslinux` alt dizinine kurabilirsiniz:

    # mkdir /boot/syslinux

Temel önyükleme istemi dışında herhangi bir menü veya yapılandırma kullanmak istiyorsanız, `.c32` dosyalarını `/usr/lib/syslinux/bios/`'dan `/boot/syslinux/`'a kopyalayın. Bunlara sembolik bağlantı kurmayın.

    # cp /usr/lib/syslinux/bios/*.c32 /boot/syslinux/

Şimdi önyükleyiciyi yükleyin. FAT, ext2/3/4 veya btrfs önyükleme bölümü için aygıtın bağlandığı extlinux kullanın:

    # extlinux --install /boot/syslinux

Alternatif olarak, bir FAT önyükleme bölümü için aygıtın monte edilmemiş olduğu zaman syslinux kullanın:

    # syslinux --directory syslinux --install /dev/sda1

Bundan sonra, bölümleme tablosuna uygun Syslinux önyükleme kodunu yüklemeye devam edin:

- Bir MBR bölümleme tablosu için `mbr.bin` yüklenecektir, veya
- Bir GUID bölümleme tablosu için `gptmbr.bin` yüklenecektir

Sonraki bölümlerde açıklandığı gibi.

Daha fazla genel bilgi için Master Boot Record bölümüne bakın.

İpucu: Hangi bölümleme tablosunu kullandığınızdan emin değilseniz (MBR veya GPT), `blkid -s PTTYPE -o value /dev/sda` kullanarak kontrol edebilirsiniz.
Not: Bölümsüz bir kurulum için, Syslinux önyükleme kodunu MBR'ye yüklemeye gerek yoktur. Aşağıya atlayabilir ve #Konfigürasyon bölümüne geçebilirsiniz. Bakınız: [2].

##### MBR bölümleme tablosu

Bir MBR bölümleme tablosu için, önyükleme bölümünüzün bölüm tablonuzda "aktif" olarak işaretlendiğinden emin olun ("boot" bayrağı ayarlanmıştır). Bunu yapabilen uygulamalar arasında fdisk ve parted bulunmaktadır. Bu şekilde görünmelidir:

    # fdisk -l /dev/sda

    [...]
      Device Boot      Start         End      Blocks   Id  System
    /dev/sda1   *        2048      104447       51200   83  Linux
    /dev/sda2          104448   625142447   312519000   83  Linux

MBR'yi kurun:

    # dd bs=440 count=1 conv=notrunc if=/usr/lib/syslinux/bios/mbr.bin of=/dev/sda

Syslinux'un sağladığı alternatif bir MBR: `altmbr.bin`. Bu MBR önyüklenebilir bölümler için tarama yapmaz; bunun yerine MBR'nin son baytı hangi bölümden önyükleme yapılacağını gösteren bir değere ayarlanır. Aşağıda `altmbr.bin` dosyasının nasıl kopyalanabileceğine dair bir örnek verilmiştir:

    # printf '\x5' | cat /usr/lib/syslinux/bios/altmbr.bin - | dd bs=440 count=1 conv=notrunc iflag=fullblock of=/dev/sda

Bu durumda, `altmbr.bin` dosyasının içeriğine 5 (onaltılık) değerinde tek bir bayt eklenir ve elde edilen 440 bayt `sda` aygıtındaki MBR'ye yazılır. Syslinux diskin ilk mantıksal bölümüne (`/dev/sda5`) kurulmuştur.

##### GUID bölümleme tablosu

GPT için, `/boot` bölümü için öznitelik bit 2 "Legacy BIOS bootable" ayarının yapıldığından emin olun. Parted için "legacy_boot" bayrağı kullanılarak ayarlanabilir. Özniteliği ayarlamak için sgdisk komutunu kullanın:

    # sgdisk /dev/sda --attributes=1:set:2

Bu, `/dev/sda`'nın 1. bölümünde "legacy BIOS bootable" niteliğini ayarlayacaktır. Kontrol etmek için:

    # sgdisk /dev/sda --attributes=1:show

    1:2:1 (legacy BIOS bootable)

MBR'yi kurun:

    # dd bs=440 count=1 conv=notrunc if=/usr/lib/syslinux/bios/gptmbr.bin of=/dev/sda

## UEFI Sistemler

Not:

- `efi64` x86_64 UEFI sistemlerini belirtir, IA32 (32-bit) EFI için aşağıdaki komutlarda `efi64` yerine `efi32` yazın.
- Syslinux için, kernel ve initramfs dosyalarının EFI sistem bölümü (ESP olarak da bilinir) içinde olması gerekir, çünkü Syslinux (şu anda) kendi bölümü dışındaki dosyalara erişme yeteneğine sahip değildir (yani bu durumda ESP dışında). Bu nedenle ESP'nin `/boot` konumuna bağlanması önerilir.
- Otomatik kurulum betiği `/usr/bin/syslinux-install_update` UEFI kurulumunu desteklemez.
- UEFI için `syslinux.cfg` yapılandırma sözdizimi BIOS ile aynıdır.

### UEFI Syslinux'un Kısıtlamaları

- UEFI Syslinux menüsünde kernel parametrelerini düzenlemek için TAB kullanmak bozuk görüntüye yol açabilir (metinler üst üste). Hata raporu: [3]
- UEFI Syslinux, `UEFI Shell` veya `Windows Boot Manager` gibi diğer EFI uygulamalarının zincirleme yüklenmesini desteklemez. Geliştirme isteği: [4]
- Bazı durumlarda, UEFI Syslinux QEMU/OVMF veya VirtualBox gibi bazı Sanal Makinelerde veya bazı VMware ürünlerinde/versiyonlarında ve DUET gibi bazı UEFI emülasyon ortamlarında önyükleme yapmayabilir. Bir Syslinux katılımcısı VMware Workstation 10.0.2 ve Syslinux-6.02 veya sonraki sürümlerde böyle bir sorun olmadığını doğruladı. Hata raporları: [5], [6] ve [7]
- Memdisk UEFI için mevcut değildir. Geliştirme isteği: [8]
- Syslinux, UEFI önyüklemesi için kullanımdan kaldırılmış EFI handover protokolünü kullanır. Officially supported kernels, `CONFIG_EFI_HANDOVER_PROTOCOL=y` ile oluşturulduğundan etkilenmez. Bu olmadan oluşturulan çekirdeklerin önyüklenmesi başarısız olacaktır, bakınız: FS#77632.

### UEFI üzerinde kurulum

Not: UEFI ile ilgili komutlarda, `esp` EFI sistem bölümü diğer adıyla ESP'nin bağlama noktasını belirtir.

- syslinux ve efibootmgr paketlerini indirin. Ardından ESP'de Syslinux'u aşağıdaki gibi kurun:
- Syslinux dosyalarını ESP'ye kopyalayın:

    # mkdir -p esp/EFI/syslinux
    # cp -r /usr/lib/syslinux/efi64/* esp/EFI/syslinux

- Syslinux için efibootmgr'yi kullanarak önyükleme girişini ayarlayın:

    # efibootmgr --create --disk /dev/sdX --part Y --loader /EFI/syslinux/syslinux.efi --label "Syslinux" --unicode

Burada `/dev/sdXY` önyükleyiciyi içeren bölümdür.

- #Konfigürasyon'u takip ederek `esp/EFI/syslinux/syslinux.cfg` dosyasını oluşturun veya düzenleyin.

Not:

- UEFI için yapılandırma dosyası `esp/EFI/syslinux/syslinux.cfg`'dir, `/boot/syslinux/syslinux.cfg` değil. `/boot/syslinux/` içindeki dosyalar BIOS'a özeldir ve UEFI Syslinux ile ilgili değildir.
- BIOS modunda önyükleme yapıldığında, efibootmgr `/EFI/syslinux/syslinux.efi` için EFI nvram girişini ayarlayamayacaktır. Bunu aşmak için, kaynakları varsayılan EFI konumuna yerleştirin: `esp/EFI/syslinux/* -> esp/EFI/BOOT/*` ve `esp/EFI/syslinux/syslinux.efi -> esp/EFI/BOOT/bootx64.efi`

## Konfigürasyon

This article or section is out of date.

Reason: Güncel değil `/boot/syslinux/syslinux.cfg` zaten syslinux paketi tarafından sağlanmaktadır ve ESP `/boot`'a bağlanmışsa hem BIOS hem de UEFI'de çalışır. (Discuss in Talk:Syslinux (Türkçe)#Yapılandırma dosyasının konumu)

Syslinux yapılandırma dosyası, `syslinux.cfg`, Syslinux'u kurduğunuz dizinde oluşturulmalıdır. Bizim durumumuzda, BIOS sistemleri için `/boot/syslinux/` ve UEFI sistemleri için `esp/EFI/syslinux/`.

Önyükleyici ya `syslinux.cfg` arar (tercih edilir) veya `extlinux.conf`

İpucu:

- `LINUX` yerine `KERNEL` anahtar sözcüğü de kullanılabilir. `KERNEL` dosyanın türünü tespit etmeye çalışırken, `LINUX` her zaman bir Linux Kerneli bekler.
- `TIMEOUT` değeri 0.1 saniye birimindedir.

### Örnekler

Not:

- Örneklerde bulunan herhangi bir yapılandırma dosyasının uygun kernel parametrelerini ayarlamak için düzenlenmesi gerekir. Bakınız bölüm: #Kernel parametreleri.
- Lütfen yollara çok dikkat edin. Örnekler, özellikle UEFI kullanırken kurulumunuz için uygun olmayabilir.
- Aşağıdaki örneklerde kernel ve initrd dosyalarının `syslinux.cfg` konumuna göre bir dizin üst seviyede bulunduğu varsayılmaktadır. (ya da, daha doğrusu, çalışma dizininin bir seviye üstü).

#### Önyükleme komut istemi

Bu, `boot:` komut istemini gösterecek ve 5 saniye sonra otomatik olarak önyükleme yapacak basit bir yapılandırma dosyasıdır. Bir komut istemi görmeden doğrudan önyükleme yapmak istiyorsanız, `PROMPT` öğesini `0` olarak ayarlayın.

Konfigürasyon:

    * BIOS: /boot/syslinux/syslinux.cfg
    * UEFI: esp/EFI/syslinux/syslinux.cfg

    PROMPT 1
    TIMEOUT 50
    DEFAULT arch

    LABEL arch
    	LINUX ../vmlinuz-linux
    	APPEND root=UUID=XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX rw
    	INITRD ../initramfs-linux.img

    LABEL archfallback
    	LINUX ../vmlinuz-linux
    	APPEND root=UUID=XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX rw
    	INITRD ../initramfs-linux-fallback.img

#### Metin önyükleme menüsü

Syslinux ayrıca bir önyükleme menüsü kullanmanıza da izin verir. Bunu kullanmak için `menu` ve `libutil` modüllerini Syslinux dizininize kopyalayın:

    # cp /usr/lib/syslinux/bios/{menu,libutil}.c32 /boot/syslinux/

5.00 sürümünden bu yana, ek `lib*.c32` kütüphane modüllerine de sıklıkla ihtiyaç duyulmaktadır. Modül bağımlılık ağacı için the Syslinux wiki adresine bakın.

Konfigürasyon:

    * BIOS: /boot/syslinux/syslinux.cfg
    * UEFI: esp/EFI/syslinux/syslinux.cfg

    UI menu.c32
    PROMPT 0

    MENU TITLE Boot Menu
    TIMEOUT 50
    DEFAULT arch

    LABEL arch
    	MENU LABEL Arch Linux
    	LINUX ../vmlinuz-linux
    	APPEND root=UUID=XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX rw
    	INITRD ../initramfs-linux.img

    LABEL archfallback
    	MENU LABEL Arch Linux Fallback
    	LINUX ../vmlinuz-linux
    	APPEND root=UUID=XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX rw
    	INITRD ../initramfs-linux-fallback.img

Menü sistemi hakkında daha fazla ayrıntı için the Syslinux wiki adresine bakın.

#### Grafiksel önyükleme menüsü

Syslinux ayrıca grafiksel bir önyükleme menüsü kullanmanıza da izin verir. Bunu kullanmak için `vesamenu` dosyasını kopyalayın. COM32 modülünü Syslinux klasörünüze ekleyin:

    # cp /usr/lib/syslinux/bios/vesamenu.c32 /boot/syslinux/

5.00 sürümünden bu yana, ek `lib*.c32` kütüphane modüllerine de sıklıkla ihtiyaç duyulmaktadır. Modül bağımlılık ağacı için the Syslinux wiki adresine bakın.

Not: Eğer UEFI kullanıyorsanız, `/usr/lib/syslinux/efi64/` adresinden kopyaladığınızdan emin olun. (veya IA32 (32-bit) EFI sistemleri için `efi32`), aksi takdirde siyah bir ekranla karşılaşacaksınız. Bu durumda, canlı bir ortamdan önyükleme yapın ve uygun değişiklikleri yapmak için chroot kullanın.

Bu konfigürasyon Arch Kurulum CD'si ile aynı menü tasarımını kullanır, konfigürasyonu gitlab.archlinux.org adresinde bulunabilir. https://gitlab.archlinux.org/archlinux/archiso/-/raw/master/configs/releng/syslinux/splash.png?inline=false Arch Linux arka plan görüntüsü] de oradan indirilebilir. Görüntüyü `/boot/syslinux/splash.png` adresine kopyalayın.

Konfigürasyon::

    * BIOS: /boot/syslinux/syslinux.cfg
    * UEFI: esp/EFI/syslinux/syslinux.cfg

    UI vesamenu.c32
    DEFAULT arch
    PROMPT 0
    MENU TITLE Boot Menu
    MENU BACKGROUND splash.png
    TIMEOUT 50

    MENU WIDTH 78
    MENU MARGIN 4
    MENU ROWS 5
    MENU VSHIFT 10
    MENU TIMEOUTROW 13
    MENU TABMSGROW 11
    MENU CMDLINEROW 11
    MENU HELPMSGROW 16
    MENU HELPMSGENDROW 29

    # Refer to https://wiki.syslinux.org/wiki/index.php/Comboot/menu.c32

    MENU COLOR border       30;44   #40ffffff #a0000000 std
    MENU COLOR title        1;36;44 #9033ccff #a0000000 std
    MENU COLOR sel          7;37;40 #e0ffffff #20ffffff all
    MENU COLOR unsel        37;44   #50ffffff #a0000000 std
    MENU COLOR help         37;40   #c0ffffff #a0000000 std
    MENU COLOR timeout_msg  37;40   #80ffffff #00000000 std
    MENU COLOR timeout      1;37;40 #c0ffffff #00000000 std
    MENU COLOR msg07        37;40   #90ffffff #a0000000 std
    MENU COLOR tabmsg       31;40   #30ffffff #00000000 std

    LABEL arch
    	MENU LABEL Arch Linux
    	LINUX ../vmlinuz-linux
    	APPEND root=UUID=XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX rw
    	INITRD ../initramfs-linux.img

    LABEL archfallback
    	MENU LABEL Arch Linux Fallback
    	LINUX ../vmlinuz-linux
    	APPEND root=UUID=XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX rw
    	INITRD ../initramfs-linux-fallback.img

Syslinux 3.84'ten beri, `vesamenu.c32` `MENU RESOLUTION $WIDTH $HEIGHT` yönergesini desteklemektedir. Bunu kullanmak için, 1440x900 çözünürlük için yapılandırmanıza `MENU RESOLUTION 1440 900` ekleyin. Ancak, arka plan resminin tam olarak doğru çözünürlüğe sahip olması gerekir, aksi takdirde Syslinux menüyü yüklemeyi reddeder.

Menüyü ortalamak ve çözünürlüğü ayarlamak için `MENU RESOLUTION`, `MENU HSHIFT $N` ve `MENU VSHIFT $N` kullanın; burada `$N` pozitif bir sayıdır. Varsayılan değerlerin her ikisi de monitörünüzün sol üst köşesi olan `0`'dır. Tersine, negatif bir sayı ekranın diğer ucundan başlar (örneğin `VHSHIFT -4` ekranın altından 4 satır olacaktır).

Menüyü ortaya taşımak için bu değerleri ekleyin veya düzenleyin:

    * BIOS: /boot/syslinux/syslinux.cfg
    * UEFI: esp/EFI/syslinux/syslinux.cfg

    MENU RESOLUTION 800 600 # or whatever your screen resolution is
    MENU WIDTH 78           # width of the menu also required to bring the menu box to size
    MENU VSHIFT 10          # moves menu down
    MENU HSHIFT 10          # moves menu right

VESA standartları genellikle maksimum 25 satır ve 80 sütundur, bu nedenle bu değerlerin üzerine çıkmak menüyü ekrandan uzaklaştırabilir ve potansiyel olarak bir kurtarma CD'sinden düzenleme yapılmasını gerektirebilir.

### Kernel parametreleri

Kernel parametreleri `syslinux.cfg` içindeki `APPEND` yönergesi kullanılarak ayarlanır: her `LABEL` girişi için en fazla bir APPEND satırı kabul edilir (yani birden fazla satıra yayılma geçerli değildir).

"Fallback" girişi için de aşağıdaki değişikliklerin yapılması önerilir.

En basit durumda, `root` parametresinin değerinin değiştirilmesi gerekir; desteklenen yöntemler için Kalıcı blok aygıtı adlandırma bölümüne bakın.

    APPEND root=UUID=XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX rw

Doğru root birimi seçmek için `root=UUID=XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXX` öğesini değiştirin.

Eğer dm-crypt şifreleme kullanıyorsanız şifrelenmiş biriminizi kullanmak için `APPEND` satırını değiştirin:

    APPEND root=/dev/mapper/name cryptdevice=UUID=YYYYYYYY-YYYY-YYYY-YYYY-YYYYYYYYYYYY:name rw

Bir btrfs alt birimi önyükleniyorsa, `APPEND` satırını `rootflags=subvol=root_subvolume` ile değiştirin. Örneğin, `/dev/disk/by-uuid/XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXX` 'ROOT' adlı bir btrfs alt birimi olarak bağlanmışsa (örneğin `mount -o noatime,subvol=ROOT /dev/disk/by-uuid/XXXXXXXX-XXXX-XXXX-XXXXXX-XXXXXXXX /mnt`), o zaman `APPEND` satırının aşağıdaki gibi değiştirilmesi gerekir:

    APPEND root=UUID=XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX rw rootflags=subvol=ROOT

Aksi takdirde aşağıdaki hata mesajıyla sonuçlanacaktır: `ERROR: Root device mounted successfully, but /sbin/init does not exist.`

### Otomatik Önyükleme

Syslinux menüsünü hiç görmek istemiyorsanız, #Önyükleme komut istemi'ni kullanın ve `PROMPT` değişkenini `0` olarak ayarlayın ve `UI` menü girişlerini yorumlayın. `TIMEOUT` değişkenini `0` olarak ayarlamak da iyi bir fikir olabilir. `syslinux.cfg` dosyanızda `DEFAULT` ayarının olduğundan emin olun. Açılış sırasında `Shift` veya `Alt` tuşlarından birini basılı tutmak ya da `Caps Lock` veya `Scroll Lock` tuşlarından birini ayarlamak varsayılan dışındaki seçeneklerin kullanılmasını sağlayacaktır.

Ek alternatifler için upstream viki adresine bakın.

### Güvenlik

Syslinux'un iki önyükleyici güvenlik seviyesi vardır: bir menü ana parolası ve bir menü-öğe parolası. `syslinux.cfg` içinde şunu kullanın:

    MENU MASTER PASSWD passwd

ana önyükleyici parolası ayarlamak için ve

    MENU PASSWD passwd

bir `LABEL` bloğu içinde tek tek önyükleme öğelerini parola ile korumak için.

passwd açık metin parolası ya da karma parola olabilir: resmi belgelere bakın.

### Zincirleme önyükleme

Syslinux BIOS diğer bölümlerde bulunan dosyaları doğrudan zincirleme önyükleyemez; ancak, `chain.c32` bir bölüm önyükleme sektörünü (VBR) veya başka bir diskin MBR'sini önyükleyebilir.

#### Bir bölümün VBR'sini zincirleme önyükleme

Windows gibi diğer işletim sistemlerini veya önyükleme yükleyicilerini zincirleme önyüklemek istiyorsanız, `chain.c32` modülünü Syslinux dizinine kopyalayın (ek `lib*.c32` kütüphane modülleri de gerekebilir; ayrıntılar için önceki bölümdeki talimatlara bakın). Ardından yapılandırma dosyasında bir bölüm oluşturun:

    /boot/syslinux/syslinux.cfg

    ...
    LABEL windows
    	MENU LABEL Windows
    	COM32 chain.c32
    	APPEND hd0 3
    ...

`hd0 3` ilk BIOS sürücüsündeki üçüncü bölümdür - sürücüler sıfırdan itibaren sayılır, ancak bölümler birden itibaren sayılır.

Not: Windows için bu, birkaç önemli güncellemenin (örneğin [9]) tamamlanması için gerekli olan sistemin kendi önyükleme yöneticisini (`bootmgr`) atlar. Bu gibi durumlarda MBR önyükleme bayrağını geçici olarak Windows bölümüne ayarlamak (örneğin GParted ile), güncellemenin yüklenmesini bitirmesine izin vermek ve ardından bayrağı Syslinux bölümüne sıfırlamak (örneğin Windows'un kendi DiskPart] ile) tavsiye edilebilir.

#### Bir diskin MBR'sini zincirleme önyükleme

BIOS'unuzun hangi sürücünün "ilk" olduğunu düşündüğünden emin değilseniz, bunun yerine MBR tanımlayıcısını veya GPT kullanıyorsanız dosya sistemi etiketlerini kullanabilirsiniz. MBR tanımlayıcısını kullanmak için şu komutu çalıştırın:

    # fdisk -l /dev/sdb

    Disk /dev/sdb: 128.0 GB, 128035676160 bytes
    255 heads, 63 sectors/track, 15566 cylinders, total 250069680 sectors
    Units = sectors of 1 * 512 = 512 bytes
    Sector size (logical/physical): 512 bytes / 512 bytes
    I/O size (minimum/optimal): 512 bytes / 512 bytes
    Disk identifier: 0xf00f1fd3

    Device Boot      Start         End      Blocks   Id  System
    /dev/sdb1            2048     4196351     2097152    7  HPFS/NTFS/exFAT
    /dev/sdb2         4196352   250066943   122935296    7  HPFS/NTFS/exFAT

`/dev/sdb` yerine zincirleme yüklemek istediğiniz sürücüyü yazın. Disk tanımlayıcısı altındaki onaltılık sayıyı kullanarak: `0xf00f1fd3` bu durumda, `syslinux.cfg` içindeki sözdizimi şöyledir

    /boot/syslinux/syslinux.cfg

    ...
    LABEL windows
    	MENU LABEL Windows
    	COM32 chain.c32
    	APPEND mbr:0xf00f1fd3
    ...

Zincirleme yükleme hakkında daha fazla bilgi için Syslinux'un vikisi adresine bakın.

#### Diğer önyükleme yükleyicilerini zincirleme önyükleme

Aynı bölümde GRUB yüklüyse, bunu kullanarak zincirleme önyükleyebilirsiniz:

    /boot/syslinux/syslinux.cfg

    ...
    LABEL grub2
    	MENU LABEL Grub2
    	COM32 chain.c32
    	APPEND file=../grub/boot.img
    ...

Alternatif olarak, `lnxboot.img` dosyasını `core.img` dosyasının önüne ekleyerek GRUB'u bir Linux kerneli olarak yüklemek de mümkündür. `lnxboot.img` dosyası `core/grub` dosyasının bir parçasıdır ve `/usr/lib/grub/i386-pc` içinde bulunabilir.

    /boot/syslinux/syslinux.cfg

    ...
    LABEL grub2lnx
    	MENU LABEL Grub2 (lnxboot)
    	LINUX ../grub/i386-pc/lnxboot.img
    	INITRD ../grub/i386-pc/core.img
    ...

Bu, ISO görüntülerinden önyükleme yapmak için gerekli olabilir.

#### Diğer Linux sistemlerine zincirleme önyükleme

The factual accuracy of this article or section is disputed.

Reason: Among other inaccuracies... 1_ There is no obligation to install yet another boot loader if you already have one related to the other partition/OS (e.g. GRUB2 installed in the MBR or in the VBR of the partition being chainloaded to). 2_ Syslinux (in any of its derivatives) is never "installed to the MBR", so mentioning the MBR in this section without any explanation of what it is being meant or how to do it in practical terms is just adding confusion. 3_ Typos and misspelling. 4_No need to explain (yet again) how to install some (other) bootloader to some (other) partition / OS; just how to chainload from Syslinux to that other partition / bootloader / OS. (Discuss in Talk:Syslinux (Türkçe))

Windows gibi başka bir önyükleyiciyi zincirleme yüklemek oldukça açıktır, çünkü zincirleme yapılacak belirli bir önyükleyici vardır. Ancak Syslinux ile, yalnızca yapılandırma dosyası ile aynı bölümde bulunan dosyaları yükleyebilir. Bu nedenle, ayrı bir bölümde, paylaşılan bir `/boot` olmadan başka bir Linux sürümünüz varsa, diğer işletim sisteminin varsayılan önyükleyicisi (örneğin GRUB2) yerine EXTLINUX'u kullanmak gerekli hale gelir. Esasen, EXTLINUX superblock/VBR bölümüne kurulabilir ve Syslinux tarafından kurulan MBR'den ayrı bir önyükleyici olarak çağrılabilir. EXTLINUX, Syslinux Projesi'nin bir parçasıdır ve syslinux paketine dahildir.

Aşağıdaki talimatlar Syslinux'un zaten kurulu olduğunu varsaymaktadır. Bu talimatlar aynı zamanda tipik Arch Linux yapılandırma yolu olan `/boot/syslinux`'un kullanıldığını ve zincirleme yüklenen sistemin `/`'in `/dev/sda3` üzerinde olduğunu varsayacaktır.

Önyüklenmiş bir Linux'tan (muhtemelen Syslinux'un önyükleme için ayarlandığı bölüm), diğer sistemin root bölümünü istediğiniz bağlama noktasına bağlayın. Bu örnekte bu `/mnt` olacaktır. Ayrıca, ikinci işletim sisteminde ayrı bir `/boot` bölümü kullanılıyorsa, bunun da bağlanması gerekecektir. Örnekte bunun `/dev/sda2` olduğu varsayılmaktadır.

    # mount /dev/sda3 /mnt
    # mount /dev/sda2 /mnt/boot (only necessary for separate /boot)

EXTLINUX'u VBR bölümüne yükleyin ve gerekli `*.c32` dosyalarını kopyalayın

    # extlinux -i /mnt/boot/syslinux/ (first create the directory if necessary)
    # cp /usr/lib/syslinux/bios/*.c32 /mnt/boot/syslinux

`/mnt/boot/syslinux/syslinux.cfg` dosyasını oluşturun. Diğer Linux'un önyükleyici menü dosyasını referans olarak kullanabilirsiniz. Aşağıda bir örnek verilmiştir:

    /mnt/boot/syslinux/syslinux.cfg on /dev/sda3

    TIMEOUT 10

    UI menu.c32

    LABEL OtherLinux
    	LINUX /boot/vmlinuz-linux
    	INITRD /boot/initramfs-linux.img
    	APPEND root=UUID=XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX rw quiet

    LABEL MAIN
    	COM32 chain.c32
    	APPEND hd0 0

Ve sonra ana `syslinux.cfg` dosyanıza bir girdi ekleyin

    /boot/syslinux/syslinux.cfg

    LABEL OtherLinux
    	COM32 chain.c32
    	APPEND hd0 3

`<other-OS>/boot/syslinux/syslinux.cfg` içindeki diğer Linux girişinin, `/` içindeki en son kerneline ve initrdsine sembolik bağlantıları yoksa, bu işletim sisteminin kernelini her güncellediğinizde düzenlenmesi gerekeceğini unutmayın. Kerneli doğrudan boot ettiğimiz ve diğer işletim sisteminin varsayılan önyükleyicisini zincirleme önyüklemediğimiz için.

### memtest'i kullanma

    memtest86+ paketini indirin.

Bu `LABEL` bölümünü memtest'i başlatmak için kullanın:

    /boot/syslinux/syslinux.cfg

    ...
    LABEL memtest
    	MENU LABEL Memtest86+
    	LINUX ../memtest86+/memtest.bin
    ...

Not: Eğer PXELINUX kullanıyorsanız, `memtest.bin` olan ismi `memtest` olarak değiştirin çünkü PXELINUX .bin uzantılı dosyayı bir önyükleme sektörü olarak görür ve sadece 2KB'lık kısmını yükler.

### HDT

HDT (Hardware Detection Tool (Türkçe olarak "Donanım Algılama Aracı")) donanım bilgilerini görüntüler. Daha önce olduğu gibi, `.c32` dosyası `/boot/syslinux/`'dan kopyalanmalıdır. Ek `lib*.c32` kütüphane modüllerine de ihtiyaç duyulabilir. PCI bilgisi için, `/usr/share/hwdata/pci.ids` dosyasını `/boot/syslinux/pci.ids` dosyasına kopyalayın ve yapılandırma dosyanıza aşağıdakileri ekleyin:

    /boot/syslinux/syslinux.cfg

    LABEL hdt
    	MENU LABEL Hardware Info
    	COM32 hdt.c32

### Yeniden başlatma ve kapatma

Not: Syslinux 6.03'ten itibaren, `poweroff.c32` yalnızca APM ile çalışır ve ACPI ile çalışmaz. Olası bir çözüm için bakınız :acpioff: ACPI kullanarak makineyi kapatmak için COM32 modülü.

Makinenizi yeniden başlatmak veya kapatmak için aşağıdaki bölümleri kullanın:

    /boot/syslinux/syslinux.cfg

    LABEL reboot
    	MENU LABEL Reboot
    	COM32 reboot.c32

    LABEL poweroff
    	MENU LABEL Power Off
    	COM32 poweroff.c32

### Menüyü temizleme

Menüden çıkarken ekranı temizlemek için aşağıdaki satırı ekleyin:

    /boot/syslinux/syslinux.cfg

    MENU CLEAR

### Klavye düzeni

Syslinux önyükleme isteminde önyükleme komutunuzu çeşitli parametrelerle sık sık düzenlemeniz gerekiyorsa, klavye düzeninizi yeniden eşleştirmek isteyebilirsiniz. Bu, "=", "/" ve diğer karakterleri ABD dışı bir klavyede kolayca girmenizi sağlar.

Not: {Pkg

paketinde bulunan `keytab-lilo`, loadkeys programını çağıran bir perl betiğidir.}}

Uyumlu bir klavye düzeni oluşturmak için (örneğin Almanca bir klavye düzeni) çalıştırın:

    # keytab-lilo /usr/share/kbd/keymaps/i386/qwerty/us.map.gz /usr/share/kbd/keymaps/i386/qwertz/de.map.gz > /boot/syslinux/de.ktl

Şimdi `syslinux.cfg` dosyasını düzenleyin ve ekleyin:

    /boot/syslinux/syslinux.cfg

    KBDMAP de.ktl

Daha fazla ayrıntı için Syslinux viki adresine bakın.

### Menüyü gizleme

Yalnızca zaman aşımını görüntülerken menüyü gizlemek için bu seçeneği kullanın. Menüyü açmak için herhangi bir tuşa basın.

    /boot/syslinux/syslinux.cfg

    MENU HIDDEN

### PXELINUX

Not: UEFI için, Syslinux disk önyüklemesi ve ağ önyüklemesi için aynı ikiliyi kullanır. TFTP veya diğer ağ protokollerinden dosya yüklemek için Syslinux'un ağdan önyüklenmesi gerekir.

PXELINUX syslinux paketi tarafından sağlanır.

BIOS istemcileri için, `{l,}pxelinux.0` önyükleyicisini istemcinin önyükleme dizinine kopyalayın. 5.00 ve daha yeni sürümler için, aynı paketten `ldlinux.c32` dosyasını da kopyalayın:

    # cp /usr/lib/syslinux/bios/pxelinux.0 "TFTP_root/boot/"
    # cp /usr/lib/syslinux/bios/ldlinux.c32 "TFTP_root/boot/"
    # mkdir "TFTP_root/boot/pxelinux.cfg"

Ayrıca PXELINUX'un varsayılan olarak yapılandırma dosyalarını aradığı `pxelinux.cfg` dizinini oluşturduk. Farklı ana bilgisayar MAC'leri arasında ayrım yapmak istemediğimiz için, `default` yapılandırmasını oluşturduk.

    TFTP_root/boot/pxelinux.cfg/default

    DEFAULT linux

    LABEL linux
    	KERNEL vmlinuz-linux
    	APPEND initrd=initramfs-linux.img quiet ip=:::::eth0:dhcp nfsroot=10.0.0.1:/arch

Veya NBD kullanıyorsanız, aşağıdaki ekleme satırını kullanın:

    APPEND ro initrd=initramfs-linux.img ip=:::::eth0:dhcp nbd_host=10.0.0.1 nbd_port=10809 nbd_name=arch root=/dev/nbd0

Not: Ağ yapılandırmanızla (NFS/NBD sunucusunun adresi) eşleşmesi için sırasıyla `nbd_host` ve/veya `nfsroot` değiştirmeniz gerekecektir

PXELINUX, SYSLINUX ile aynı yapılandırma sözdizimini kullanır; daha fazla bilgi için upstream belgelerine bakın.

Çekirdek ve initramfs TFTP aracılığıyla aktarılacaktır, bu nedenle bunlara giden yollar TFTP rootuna göreli olacaktır. Aksi takdirde, root dosya sistemi NFS bağlantısının kendisi olacaktır, bu nedenle bunlar NFS sunucusunun rootuna görelidir.

PXELINUX'u gerçekten yüklemek için {ic|filename "/grub/i386-pc/core.0";}} {ic|/etc/dhcpd.conf}} içindeki `filename "/pxelinux.0"` (veya `filename "/lpxelinux.0"`) ile değiştirin.

### ISO9660 görüntü dosyalarını memdisk ile önyükleme

Syslinux, memdisk modülünü kullanarak ISO görüntülerinden doğrudan önyüklemeyi destekler, örnekler için Multiboot USB drive#Using Syslinux and memdisk bölümüne bakın.

### Seri konsol

Bakınız: Seri konsolla çalışma#Syslinux.

### Başka bir işletim sistemini bir kez önyükleme

Varsayılan Syslinux eylemini geçici olarak değiştirmek ve yalnızca bir sonraki önyükleme sırasında başka bir etiketi önyüklemek mümkündür. Aşağıdaki komut `archfallback` etiketinin bir kez nasıl önyükleneceğini göstermektedir:

    # extlinux -o archfallback /boot/syslinux

Bir sonraki önyükleme sırasında, belirtilen etiket herhangi bir Syslinux istemi gösterilmeden önyüklenecektir. Varsayılan Syslinux önyükleme davranışı bir sonraki yeniden başlatmada geri yüklenecektir.

## Sorun Giderme

### Ldlinux yüklenemedi

İlk açılış sırasında "Failed to load ldlinux.c32" gibi bir hata mesajı çok çeşitli nedenlerle tetiklenebilir. Olası nedenlerden biri, kendi sürümüne bağlı olarak dosya sistemi araçlarında veya dosya sistemi yapısında bir değişiklik olabilir.

Uyarı: Syslinux 6.03'ten itibaren, desteklenen dosya sistemlerinin bazı özellikleri önyükleyici tarafından desteklenmemektedir. Daha fazla bilgi için [10] adresine bakın.
Not: `Failed to load ldlinux.c32` gibi bir mesaj ile dosya sistemiyle ilgili bir sorun arasında doğrudan ve benzersiz bir ilişki yoktur:

- Bu mesaj yerine diğer alternatif semptomlar da dosya sistemiyle ilgili bir soruna işaret edebilir.
- Bu mesaj, sorunun mutlaka dosya sistemiyle ilgili olduğu anlamına gelmez; bu tür mesajların başka olası nedenleri de vardır.

Ayrıca bakınız: [11] (tüm sayfa sorun giderme için de uygun olabilir).

### Syslinux komut istemini kullanma

Önyüklemek istediğiniz girdinin `LABEL` adını yazabilirsiniz (`syslinux.cfg`'nize göre). Örnek yapılandırmaları kullandıysanız, sadece aşağıdakileri yazın:

    boot: arch

Yapılandırma dosyasının yüklenemediğine dair bir hata alırsanız, gerekli önyükleme parametrelerinizi iletebilirsiniz, örn:

    boot: ../vmlinuz-linux root=UUID=XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX rw initrd=../initramfs-linux.img

Eğer ramfs içinde `boot:`'a erişiminiz yoksa ve bu nedenle geçici olarak kerneli tekrar önyükleyemiyorsanız,

1. Root bölümünüzü bağlamak için geçici bir dizin oluşturun (eğer zaten mevcut değilse):

       # mkdir -p /new_root

2. `/` öğesini `/new_root` altına bağlayın (`/boot/` aynı bölümdeyse, aksi takdirde her ikisini de bağlamanız gerekecektir):
   Not: Busybox, kendi ext2 bölümü üzerindeyse `/boot`'u bağlayamaz.

       # mount /dev/sd[a-z][1-9] /new_root

3. `syslinux.cfg` dosyasını ihtiyaçlarınıza uyacak şekilde yeniden ayarlayın ve dosyayı kaydedin.
4. Bilgisayarınızı yeniden başlatın.

### Fsck root bölümünde başarısız oluyor

Kötü şekilde bozulmuş bir root bölümü (günlüğün hasar gördüğü) durumunda, ramfs acil durum kabuğunda root dosya sistemini bağlayın:

    # mount /dev/root partition /new_root

Ve root bölümünden tune2fs binary dosyasını alın (Syslinux'a dahil değildir):

    # cp /new_root/sbin/tune2fs /sbin/

Root bölümü için yeni bir günlük oluşturmak için ext2fs: no external journal adresindeki talimatları izleyin.

### Bazı bilgisayarlarda varsayılan seçenek veya kullanıcı arayüzü bulunamadı

Bazı anakart üreticileri USB aygıtlarından önyükleme için diğerlerine göre daha az uyumluluğa sahiptir. Ext4 formatlı bir USB sürücü daha yeni bir bilgisayarda önyükleme yapabilirken, kernel ve initrd içeren önyükleme bölümü bir FAT16 bölümünde değilse bazı bilgisayarlar takılabilir. Eski bir makinenin `ldlinux` yüklemesini ve `syslinux.cfg` dosyasını okuyamamasını önlemek için, dosfstools kullanarak bir bölüm (≤ 2 GB) oluşturun ve FAT16 olarak biçimlendirin:

    # mkfs.fat -F 16 /dev/sda1

ardından Syslinux'u kurun ve yapılandırın.

### Kayıp işletim sistemi

- GPT için `gptmbr.bin` ve MBR bölümleme tablosu için `mbr.bin` yüklediğinizi kontrol edin. " Kayıp işletim sistemi (Missing operating system)" mesajı `mbr.bin`'den gelirken, `gptmbr.bin` "Kayıp İşletim Sistemi (Missing OS)" mesajı gösterecektir.
- `/boot` içeren bölümün "boot" bayrağının etkin olup olmadığını kontrol edin.
- Önyükleme aygıtındaki ilk bölümün sektör 63 veya 2048 yerine sektör 1'de başlayıp başlamadığını kontrol edin. Bunu `fdisk -l` ile kontrol edin. Eğer sektör 1'de başlıyorsa, bölüm(ler)i `gparted` ile bir kurtarma diskinden taşıyabilirsiniz. Ya da ayrı bir önyükleme bölümünüz varsa, `/boot` ile yedekleyebilirsiniz.

    # cp -a /boot /boot.bak

ve sonra Arch kurulum diski ile önyükleme yapın. Sonra, `cfdisk` kullanarak `/boot` bölümünü silin ve yeniden oluşturun. Bu kez uygun sektör olan 63 ile başlamalıdır. Şimdi bölümlerinizi ve `chroot`'u indirme kılavuzu'nda açıklandığı gibi monte edilmiş sisteminize bağlayın. komutu ile `/boot` dosyasını geri yükleyin

    # cp -a /boot.bak/ /boot/

`/etc/fstab`'ın doğru olup olmadığını kontrol edin, çalıştırın:

    # syslinux-install_update -iam

ve yeniden başlatın.

Bir md RAID'den önyükleme yapmaya çalışıyorsanız da bu hatayı alırsınız. 1 dizisini oluşturdu ve diziyi Syslinux'un anlamadığı çok yeni bir metadata sürümü ile oluşturdu. Ağustos 2013 itibariyle mdadm varsayılan olarak 1.2 sürüm metadata ile bir dizi oluşturacaktır, ancak Syslinux 1.0'dan daha yeni metadatayı anlamamaktadır. Eğer durum buysa, mdadm'a `--metadata=1.0` bayrağını kullanarak RAID dizinizi yeniden oluşturmanız gerekecektir.

### Windows açılıyor, Syslinux'u yok sayıyor

Çözüm: `/boot` içeren bölümün önyükleme bayrağının etkin olduğundan emin olun. Ayrıca, Windows bölümünde önyükleme bayrağının etkinleştirilmediğinden emin olun. Yukarıdaki kurulum bölümüne bakın.

Syslinux ile birlikte gelen MBR, önyükleme bayrağı ayarlanmış olan ilk etkin bölümü arar. Windows bölümü muhtemelen ilk olarak bulunmuştur ve önyükleme bayrağı ayarlanmıştır. Eğer isterseniz, Windows ya da MS-DOS'un `fdisk` sağladığı MBR'yi kullanabilirsiniz.

### Menü girişleri hiçbir şey yapmıyor

Bir menü girişi seçiyorsunuz ve hiçbir şey yapmıyor, sadece menüyü "yeniliyor". Bu genellikle `syslinux.cfg` dosyanızda bir hata olduğu anlamına gelir. Açılış parametrelerinizi düzenlemek için `Tab` tuşuna basın. Alternatif olarak, `Esc` tuşuna basın ve önyükleme girişinizin `LABEL` kodunu yazın (örneğin arch). Başka bir neden de yüklü bir kernelinizin olmaması olabilir. Dosya sisteminize erişmenin bir yolunu bulun (canlı CD, vb.) ve `/mount/vmlinuz-linux` dosyasının var olduğundan ve boyutunun 0 olmadığından emin olun. Eğer durum buysa, kernelinizi yeniden yükleyin.

### ldlinux.sys kaldırılamıyor

`ldlinux.sys` dosyasının değiştirilemez özniteliği vardır, bu da silinmesini veya üzerine yazılmasını engeller. Bunun nedeni, dosyanın sektör konumunun değişmemesi, aksi takdirde Syslinux'un yeniden yüklenmesi gerektiğidir. Kaldırmak için çalıştırın:

    # chattr -i /boot/syslinux/ldlinux.sys
    # rm /boot/syslinux/ldlinux.sys

### Vesamenu kullanırken sol üst köşede beyaz blok

Problem: linux-3.0'dan itibaren, modesetting sürücüsü çözünürlüğü değiştirdikten sonra ekranın mevcut içeriğini tutmaya çalışıyor (en azından benim Intel'imde, Syslinux metin modundayken bunu yapıyor). Görünüşe göre Syslinux'taki vesamenu modülü ile birleştirildiğinde bu yanlış gidiyor (beyaz blok aslında Syslinux menüsünü tutma girişimidir, ancak sürücü vesa grafik modundan resmi yakalayamıyor).

Özel bir çözünürlüğünüz ve erken kip ayarlı bir `vesamenu`'nuz varsa, beyaz bloğu kaldırmak ve grafik kipinde devam etmek için `syslinux.cfg` içine aşağıdakileri eklemeyi deneyin:

    APPEND root=XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX rw 5 vga=current quiet splash

### Windows başka bir sürücüye yüklendiğinde zincirleme önyükleme çalışmıyor

Windows Arch'tan farklı bir sürücüye kuruluysa ve zincirleme yüklemede sorun yaşıyorsanız, aşağıdaki yapılandırmayı deneyin:

    LABEL Windows
    	MENU LABEL Windows
    	COM32 chain.c32
    	APPEND mbr:0xdfc1ba9e swap

Mbr kodunu Windows sürücünüzün sahip olduğu kodla değiştirin (ayrıntılar yukarıda) ve seçeneklere `swap` ekleyin.

### Önyükleyici günlüğünü okuyun

Bazı durumlarda (örneğin önyükleyicinin kerneli önyükleyememesi) önyükleme işleminden daha fazla bilgi almak oldukça arzu edilir. Syslinux hata mesajlarını ekrana yazdırır ancak önyükleme menüsü hızlı bir şekilde metnin üzerine yazar. Günlük bilgilerini kaybetmemek için `syslinux.cfg` dosyasında `UI menu` seçeneğini devre dışı bırakın ve varsayılan "command-line" komut istemini kullanın. Bu şu anlama gelir:

- `UI` yönergesinden kaçının
- `ONTIMEOUT`'dan kaçının
- `ONERROR`'dan kaçının
- `MENU CLEAR`'dan kaçının
- daha yüksek bir `TIMEOUT` kullanın
- `PROMPT 1` kullanın
- `DEFAULT problematic_label` kullanın

Daha ayrıntılı hata ayıklama günlüğü almak için, syslinux paketini ek CFLAGS ile yeniden derleyin:

    -DDEBUG_STDIO=1 -DCORE_DEBUG=1

### Btrfs sıkıştırması

Sıkıştırma ile btrfs'den önyükleme desteklenmiyor.[12] Aşağıdaki hata görüntülenecektir:

    btrfs: found compressed data, cannot continue!
    invalid or corrupt kernel image.

### Btrfs çoklu cihaz

Çoklu aygıt btrfs'den önyükleme desteklenmiyor.[13] (21-Temmuz-2016 1246 satırından itibaren main.c validate_device_btrfs() içinde) Bu kafa karıştırıcı hata gösterilecektir (sda1 üzerine kurulum yaptığınızı varsayarsak):

    /boot/syslinux is device /dev/sda1
    extlinux: path /boot/syslinux doesn't match device /dev/sda1

## Ayrıca bakınız

- Resmi web sitesi

Category:

- Boot loaders (Türkçe)

Hidden categories:

- Pages or sections flagged with Template:Out of date
- Pages or sections flagged with Template:Accuracy