MENU

Linux’ta Sistem Önyükleyici Ayarlarını Kontrol Etme ve Değiştirme: Tam Kılavuz

Linux sistemlerinde önyükleyici ayarlarını kontrol etmek ve değiştirmek, sistem yönetiminin çok önemli bir yönüdür. Önyükleyici, sistem başladığında çalışan ilk programdır ve işletim sisteminin yüklenmesinde hayati bir rol oynar. Bu rehber, GRUB’u, Linux sistemlerinde en yaygın kullanılan önyükleyiciyi nasıl kuracağınızı, doğrulayacağınızı ve ayarlarını güvenle değiştireceğinizi detaylı bir şekilde anlatacaktır; başlangıçtan orta seviyeye kadar tüm Linux kullanıcıları için.

İçindekiler

GRUB Nedir: Linux İçin Varsayılan Önyükleyici

GRUB (GRand Unified Bootloader), birçok Linux dağıtımı tarafından varsayılan önyükleyici olarak benimsenmiştir. GRUB, kullanıcıların birden fazla işletim sistemi veya çekirdek versiyonu arasından başlangıçta seçim yapmalarını sağlayan çoklu önyükleme ortamlarını destekler. Ayrıca, önyükleme parametrelerini düzenleme ve belirli çekirdek seçenekleri ile önyükleme yapma gibi ileri düzey yapılandırmaları da etkinleştirir.

GRUB’un ana özellikleri şunları içerir:

  • Çoklu Önyükleme Desteği: Önyükleme sırasında farklı işletim sistemlerinin seçilmesini sağlar.
  • Dinamik Yapılandırma: GRUB’un yapılandırması, kullanıcıların doğrudan düzenleyebileceği metin tabanlı yapılandırma dosyalarında saklanır.
  • Grafik Menü: Kullanılabilirliği artıran metin tabanlı arayüze ek olarak grafik bir arayüz sağlar.
  • Kurtarma Modu: Sistem düzgün bir şekilde önyüklenemediğinde kurtarma moduna veya güvenli moda önyükleme yapmayı destekler.

GRUB’un ayarları /etc/default/grub ve /boot/grub/grub.cfg gibi dosyalarda saklanır, bu dosyaları düzenleyerek önyükleme sürecini özelleştirebilirsiniz. Ancak, grub.cfg‘yi doğrudan düzenlemek önerilmez. Bunun yerine, genellikle /etc/default/grub dosyasını veya GRUB özelleştirme dosyalarını düzenleyip değişiklikleri update-grub komutu ile uygulamak yaygındır.

GRUB Yapılandırma Dosyalarının Konumları ve Yapısı

Özellikle GRUB’un yapılandırma dosyaları, sistem içinde belirli konumlarda saklanır ve bu dosyaları doğru şekilde anlamak ve ele almak, sisteminizi özelleştirmek için anahtardır. Esas olarak iki önemli dosya söz konusudur: /etc/default/grub ve /boot/grub/grub.cfg.

/etc/default/grub

Bu dosya, GRUB için ana ayarları içerir ve kullanıcı düzenlemesi için tasarlanmıştır. Burada, önyükleme sürecinin temel yönlerini, örneğin zaman aşımı süresini, varsayılan önyükleme girişini ve ek çekirdek parametrelerini ayarlarsınız. Örneğin, varsayılan önyükleme girişini değiştirmek veya önyükleme menüsü için zaman aşımı süresini ayarlamak istiyorsanız bu dosyayı düzenlersiniz.

# GRUB önyükleyici yapılandırması

GRUB_DEFAULT=0
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
GRUB_CMDLINE_LINUX=""

Yukarıdaki örnekte, varsayılan önyükleme girişini (GRUB_DEFAULT), zaman aşımı süresini (GRUB_TIMEOUT) ve çekirdek parametrelerini (GRUB_CMDLINE_LINUX_DEFAULT ve GRUB_CMDLINE_LINUX) ayarlayabilirsiniz.

/boot/grub/grub.cfg

grub.cfg dosyası, GRUB menü girişlerinin ve ayarlarının detaylı bir listesini içerir. Bu dosya otomatik olarak oluşturulur ve manuel düzenleme önerilmez. Değişiklikleri uygulamanın doğru yolu, /etc/default/grub dosyasını veya /etc/grub.d/ dizinindeki betikleri düzenlemek ve sonra update-grub komutunu çalıştırarak otomatik olarak grub.cfg‘yi güncellemektir.

### BEGIN /etc/grub.d/10_linux ###
menuentry 'Ubuntu' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-b4d5b6e6-e3f4-4de0-af3e-7d9c3e8a3c7f' {
    recordfail
    load_video
    gfxmode $linux_gfx_mode
    insmod gzio
    insmod part_msdos
    insmod ext2
    set root='hd0,msdos1'
    if [ x$feature_platform_search_hint = xy ]; then
      search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1  b4d5b6e6-e3f4-4de0-af3e-7d9c3e8a3c7f
    fi
    linux   /vmlinuz-5.4.0-26-generic root=UUID=b4d5b6e6-e3f4-4de0-af3e-7d9c3e8a3c7f ro  quiet splash $vt_handoff
    initrd  /initrd.img-5.4.0-26-generic
}
### END /etc/grub.d/10_linux ###

Bu dosyayı düzenlemek karmaşıktır ve yanlış değişiklikler sistem’in önyüklenememesine neden olabilir. Bu nedenle, grub.cfg‘yi doğrudan düzenlemekten kaçınmak ve yapılandırma değişikliklerini update-grub komutu ile yapmak şiddetle önerilir.

Önyükleyici Ayarlarını Doğrulama

Linux sistemlerinde önyükleyici ayarlarını doğrulamak, sistemin önyükleme davranışını ve çekirdek parametrelerini anlamak için temel bir yöntemdir. İşte GRUB önyükleyici ayarlarını kontrol etmenin temel yolları.

GRUB Yapılandırma Dosyalarının İçeriğini Kontrol Etme

GRUB ayarlarını doğrudan /etc/default/grub ve /boot/grub/grub.cfg dosyalarını görüntüleyerek doğrulayabilirsiniz. Bu dosyalar, önyükleyicinin davranışını ve sistem önyüklemede varsayılan çekirdek parametrelerini tanımlar.

# /etc/default/grub dosyasının içeriğini görüntüle
cat /etc/default/grub

# /boot/grub/grub.cfg dosyasının içeriğini dikkatlice görüntüle
# Not: Bu dosya otomatik olarak oluşturulduğu için doğrudan düzenleme önerilmez
cat /boot/grub/grub.cfg

GRUB Menüsünü Kontrol Etme

Sistem önyükleme sırasında kısa bir süre gösterilen GRUB menüsünü kaçırırsanız, yeniden başlatma sırasında Shift veya Esc tuşuna basarak menünün görünmesini sağlayarak mevcut önyükleme girişlerini doğrulayabilirsiniz.

Özel Önyükleme Girişlerini Kontrol Etme

Özel önyükleme girişleri, /etc/grub.d/ dizinindeki betik dosyalarında tanımlanır. Bu dosyaları görüntüleyerek, sistem’in özel önyükleme girişlerini nasıl oluşturduğunu anlayabilirsiniz.

# /etc/grub.d/ dizinindeki betik dosyalarını listele
ls /etc/grub.d/

Önyükleme Zamanı Çekirdek Parametrelerini Kontrol Etme

Sistemin gerçekte hangi çekirdek parametrelerini kullandığını, önyüklemeden sonra proc dosya sistemi üzerinden doğrulayabilirsiniz. Bu, sistemin GRUB ayarlarına dayanarak nasıl önyüklendiğini doğru bir şekilde anlamanızı sağlar.

# Gerçekte kullanılan çekirdek parametrelerini görüntüle
cat /proc/cmdline

Bu yöntemleri kullanarak, Linux sisteminizin önyükleyici ayarlarını verimli bir şekilde doğrulayabilir ve sistem yönetimi ve sorun giderme için değerli bilgiler sağlayabilirsiniz.

Önyükleyici Ayarlarını Değiştirme

Özellikle GRUB olmak üzere, Linux sistemlerinde önyükleyici ayarlarını değiştirmek, sistemin nasıl önyüklendiğini ve davrandığını özelleştirmek için hayati öneme sahiptir. Burada, GRUB ayarlarını güvenle değiştirmek için temel adımları açıklayacağız.

1. /etc/default/grub Dosyasını Düzenleme

GRUB’un ayarlarına yapılan değişiklikler esas olarak /etc/default/grub dosyasında yapılır. Bu dosya, varsayılan önyükleme girişi, zaman aşımı süresi ve çekirdek parametreleri gibi ayarları içerir. Değişiklik yapmak için bir metin editörü (nano veya vim gibi) kullanın.

# /etc/default/grub dosyasını nano editörü ile aç
sudo nano /etc/default/grub

Örneğin, önyükleme menüsünün görüntülenme süresini ayarlamak için GRUB_TIMEOUT değerini değiştirebilir veya varsayılan önyükleme girişini belirtmek için GRUB_DEFAULT‘ı değiştirebilirsiniz.

2. Değişiklikleri Uygulama: update-grub Komutunu Çalıştırma

Yapılandırma dosyasını düzenledikten sonra, değişiklikleri uygulamak için update-grub komutunu çalıştırın. Bu komut, /etc/default/grub‘daki ayarları temel alarak otomatik olarak /boot/grub/grub.cfg dosyasını günceller.

sudo update-grub

3. Özel Önyükleme Girişleri Eklemek

Belirli özel önyükleme girişleri eklemek için, /etc/grub.d/ dizinindeki betik dosyalarını düzenleyin veya yeni dosyalar oluşturun. Örneğin, özel bir çekirdek için yeni bir giriş eklemek istiyorsanız, 40_custom dosyasını düzenlersiniz.

# 40_custom dosyasını düzenle
sudo nano /etc/grub.d/40_custom

Özel bir giriş örneği:

menuentry 'Benim Özel Çekirdeğim' {
    set root='(hd0,1)'
    linux /boot/my-custom-kernel ro quiet splash
    initrd /boot/my-custom-initrd.img
}

Değişiklik yaptıktan sonra, bunları uygulamak için tekrar update-grub‘u çalıştırın.

4. Güvenli Değişiklikler için Dikkate Alınması Gerekenler

  • Yedekleme: Önemli yapılandırma dosyalarını düzenlemeden önce yedeklerini almak çok önemlidir.
  • Sözdizimi Kontrolü: /etc/grub.d/ dizinindeki betikleri düzenlerken doğru sözdizimini takip etmek esastır. Sözdizimi hataları GRUB’un önyüklememesine neden olabilir.

Bu adımları takip ederek, Linux sisteminizin önyükleyici ayarlarını etkili bir şekilde değiştirebilir, önyükleme sürecini istediğiniz gibi özelleştirebilirsiniz.

Güvenli Yapılandırma Değişiklikleri için En İyi Uygulamalar

Linux sistemlerinde önyükleyici ayarlarını değiştirirken, sistem stabilitesini ve güvenliğini korumak için bazı en iyi uygulamaları takip etmek önemlidir. Aşağıdaki yönergeler, yapılandırma değişikliği sürecini daha güvenli hale getirmek içindir.

Ayarları Değiştirmeden Önce Yedekleme

Sisteme veya yapılandırma dosyalarına herhangi bir değişiklik yapmadan önce, mevcut durumu yedeklemek çok önemlidir. Bu, bir şeyler ters gittiğinde orijinal duruma dönebilmenizi sağlar.

# /etc/default/grub dosyasını yedekle
sudo cp /etc/default/grub /etc/default/grub.bak

Dokümantasyon ve Topluluk Yönergelerini Kullanma

GRUB ve diğer önyükleyiciler için resmi dokümantasyonu ve forumlar, S&C siteleri gibi topluluk kaynaklarını kullanarak, değiştirmekte olduğunuz ayarların detaylarını ve etkilerini anlayın. Diğer kullanıcıların deneyimleri ve uzmanlardan alınan tavsiyeler, sorunlardan kaçınmaya yardımcı olabilir.

Kademeli Değişiklikler ve Doğrulama

Büyük değişiklikler yerine, değişiklikleri daha küçük adımlara bölün ve her adımdan sonra sistemin doğru şekilde çalıştığını doğrulayın. Bu, sorunlar ortaya çıktığında etkileri en aza indirir ve nedenin belirlenmesini kolaylaştırır.

Güvenli Ayarların Doğrulanması

Değişiklikler yaptıktan sonra, modifikasyonların doğru şekilde uygulandığını doğrulayarak, sistemin beklenmedik şekilde önyüklememesi riskini azaltın. Bu, yeniden başlatma sonrası sistemin normal şekilde çalışıp çalışmadığını test etmeyi içerir.

Bir Kurtarma Planı Hazırlığı

Sistem önyüklemeyi başaramazsa, bir canlı CD veya USB’den önyükleme yapma, chroot kullanarak sisteme erişme ve yedeklerden geri yükleme yöntemleri dahil olmak üzere bir kurtarma planı hazırlamak önemlidir.

Bu en iyi uygulamaları uygulayarak, Linux sisteminizin önyükleyici ayarlarını güvenli bir şekilde değiştirebilir ve özelleştirme yaparken sistem stabilitesini ve güvenliğini koruyabilirsiniz.

Yaygın Sorun Giderme ve Çözümleri

Özellikle GRUB ile ilgili olarak, Linux sistemlerinde önyükleyici ayarlarını değiştirirken kaçınılmaz sorunlarla karşılaşılabilir. Burada, yaygın sorunları ve çözümlerini tanıtacağız.

GRUB Menüsü Gösterilmiyor

  • Neden: GRUB zaman aşımı 0 olarak ayarlanmış olabilir veya gizli menü seçeneği etkinleştirilmiş olabilir.
  • Çözüm: /etc/default/grub dosyasını düzenleyin, GRUB_TIMEOUT‘ı 0’dan büyük bir değere ayarlayın, GRUB_HIDDEN_TIMEOUT satırını yorum satırı haline getirin veya silin, ardından update-grub‘u çalıştırın.

Belirli Bir Çekirdeğe Önyükleme Yapılamıyor

  • Neden: Çekirdek imajı bozulmuş veya doğru şekilde yüklenmemiş olabilir.
  • Çözüm: Yeni bir çekirdek versiyonu yükleyin veya mevcut çekirdeği yeniden yükleyin. Alternatif olarak, kurtarma moduna önyükleme yaparak sorunlu çekirdeği onarın veya değiştirin.

GRUB Hata Mesajları Gösteriliyor

  • Neden: GRUB yapılandırma dosyasında hatalar olabilir veya önyükleyici doğru şekilde yüklenmemiş olabilir.
  • Çözüm: Bir Linux canlı CD’si veya USB’si kullanarak sistemi önyükleyin, chroot ortamını kullanarak sisteme erişin, ardından GRUB’u yeniden yüklemek için grub-install komutunu kullanın ve ayarları güncellemek için update-grub‘u çalıştırın.

Sistem Eski Bir Çekirdeğe Önyükleme Yapmaya Devam Ediyor

  • Neden: GRUB varsayılan girişi eski bir çekirdeğe ayarlanmış olabilir.
  • Çözüm: /etc/default/grub dosyasını düzenleyin, GRUB_DEFAULT‘ı değiştirin ve en son çekirdeği veya belirli bir çekirdek girişini belirtin. Ardından değişiklikleri uygulamak için update-grub‘u çalıştırın.

GRUB Ayarlarını Geri Yükleme

  • Neden: Uygunsuz ayar değişiklikleri sistemin önyüklememesine neden oldu.
  • Çözüm: /etc/default/grub ve /boot/grub/grub.cfg dosyalarını bir yedekten geri yükleyin. Veya, bir Linux canlı CD/USB’sinden önyükleyin, chroot kullanarak sisteme erişin ve GRUB’u yeniden yapılandırın.

Bu sorun giderme yöntemlerini kullanarak, çoğu GRUB ile ilgili sorunu çözebilir ve Linux sisteminizin normal önyükleme sürecini geri yükleyebilirsiniz.

Sonuç

Linux sisteminin önyükleyici ayarlarını kontrol etmek ve değiştirmek, optimal sistem yönetimi ve sorunları önleme için hayati öneme sahiptir. Bu makale aracılığıyla, GRUB temelleri, yapılandırma yöntemleri ve sorun giderme teknikleri hakkında bilgi edinin ve daha etkili sistem yönetimine yönelik hedeflerinize ulaşın. Linux’un önyükleyicisi, özellikle GRUB, işlemleriyle aşina olmak, sisteminizin önyükleme sürecini gerektiği gibi özelleştirmenize ve ayarlamanıza olanak tanır. Linux sisteminizin potansiyelini maksimize etmek için bu bilgi ve becerileri kullanın.

İçindekiler