Kernel Güncelleme ve GRUB Yönetimi: Güvenli Rehber
apt/yum ile kernel güncelleme, mevcut kernel sürümünü kontrol etme, GRUB yapılandırması, önceki kernel sürümüne geri dönme ve güvenli kernel yönetimi rehberi.
İçindekiler
Kernel Güncelleme ve GRUB Yönetimi: Güvenli Rehber
Linux kernel, işletim sisteminin çekirdeğidir ve donanım ile yazılım arasındaki köprüyü oluşturur. Kernel güncellemeleri güvenlik açıklarını kapatır, yeni donanım desteği ekler ve performans iyileştirmeleri sağlar. Bu rehberde kernel güncelleme sürecini, GRUB yapılandırmasını ve sorun durumunda önceki kernel sürümüne nasıl geri döneceğinizi öğreneceksiniz.
Mevcut Kernel Sürümünü Kontrol Etme
# Çalışan kernel sürümünü görüntüle
uname -r
# Detaylı kernel bilgisi
uname -a
# Örnek çıktı:
# Linux hostname 5.15.0-91-generic #101-Ubuntu SMP Tue Nov 14 13:30:08 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux
# Yüklü tüm kernel sürümlerini listele (Ubuntu/Debian)
dpkg --list | grep linux-image
# RHEL/CentOS/AlmaLinux
rpm -qa | grep kernel
# Mevcut ve kullanılabilir kernel sürümleri
apt-cache showpkg linux-image-generic # Ubuntu/Debian
Kernel Güncelleme
Ubuntu/Debian ile Kernel Güncelleme
# Paket listesini güncelle
sudo apt update
# Mevcut güncellemeleri listele
apt list --upgradable | grep linux
# Tüm sistemi güncelle (kernel dahil)
sudo apt upgrade -y
# Sadece kernel güncelle
sudo apt install linux-image-generic linux-headers-generic
# Belirli bir kernel sürümü kur
sudo apt install linux-image-5.15.0-91-generic
# Güncelleme sonrası yeniden başlat
sudo reboot
RHEL/CentOS/AlmaLinux ile Kernel Güncelleme
# Paket listesini güncelle
sudo dnf update
# Sadece kernel güncelle
sudo dnf update kernel
# Mevcut kernel sürümlerini listele
sudo dnf list installed kernel
# Güncelleme sonrası yeniden başlat
sudo reboot
Kernel güncellemesi sonrası mutlaka yeniden başlatma gerekir. Yeniden başlatmadan önce tüm önemli işlemleri kaydedin ve çalışan servisleri not edin.
Kernel Güncelleme Sonrası Doğrulama
# Yeni kernel sürümünü doğrula
uname -r
# Sistem loglarını kontrol et
sudo journalctl -b | head -50
# Kritik servislerin çalıştığını kontrol et
sudo systemctl status nginx
sudo systemctl status mysql
GRUB Yapılandırması
GRUB (Grand Unified Bootloader), Linux sistemlerinde kullanılan önyükleyicidir. Birden fazla kernel sürümü yüklüyken hangi kernel ile başlatılacağını yönetir.
GRUB Menüsünü Görüntüleme
# GRUB menü girişlerini listele
grep -E "^menuentry|^submenu" /boot/grub/grub.cfg
# Daha okunabilir format
grep -E "menuentry '" /boot/grub/grub.cfg | head -20
# Mevcut varsayılan kernel
grub-editenv list
GRUB Yapılandırma Dosyası
# Ana GRUB yapılandırma dosyasını düzenle
sudo nano /etc/default/grub
# Önemli GRUB parametreleri:
# Varsayılan kernel seçimi (0 = ilk, 1 = ikinci, vb.)
GRUB_DEFAULT=0
# Menü bekleme süresi (saniye)
GRUB_TIMEOUT=5
# Menüyü her zaman göster (gizleme)
GRUB_TIMEOUT_STYLE=menu
# Kernel parametreleri
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
GRUB_CMDLINE_LINUX=""
# Seri konsol (uzak sunucular için)
# GRUB_TERMINAL=serial
# GRUB_SERIAL_COMMAND="serial --speed=115200 --unit=0 --word=8 --parity=no --stop=1"
# GRUB yapılandırmasını güncelle
sudo update-grub # Ubuntu/Debian
sudo grub2-mkconfig -o /boot/grub2/grub.cfg # RHEL/CentOS
Varsayılan Kernel Değiştirme
# Mevcut GRUB menü girişlerini numaralandırılmış listele
awk -F\' '/menuentry / {print i++" : "$2}' /boot/grub/grub.cfg
# Varsayılan kernel'i değiştir (0-tabanlı indeks)
sudo grub-set-default 1
# Değişikliği doğrula
grub-editenv list
# GRUB'u güncelle
sudo update-grub
Önceki Kernel Sürümüne Geri Dönme
Yöntem 1: GRUB Menüsünden Manuel Seçim
Sunucu yeniden başlarken GRUB menüsünde:
- Advanced options for Ubuntu (veya dağıtımınıza göre) seçeneğini seçin
- Listeden eski kernel sürümünü seçin
- Enter ile başlatın
Uzak sunucularda GRUB menüsüne erişmek için REXE müşteri panelindeki KVM/VNC konsol özelliğini kullanın.
Yöntem 2: Varsayılan Kernel'i Eski Sürüme Ayarlama
# Yüklü kernel sürümlerini listele
dpkg --list | grep linux-image | grep -v meta
# Örnek çıktı:
# linux-image-5.15.0-88-generic
# linux-image-5.15.0-91-generic (mevcut)
# GRUB menü girişlerini listele
grep -E "menuentry '" /boot/grub/grub.cfg
# Eski kernel'i varsayılan yap
# Önce tam menü adını bul:
grep "menuentry '" /boot/grub/grub.cfg | grep "5.15.0-88"
# Varsayılanı ayarla (tam menü adı ile)
sudo grub-set-default "Advanced options for Ubuntu>Ubuntu, with Linux 5.15.0-88-generic"
# GRUB'u güncelle
sudo update-grub
# Yeniden başlat
sudo reboot
Yöntem 3: Sorunlu Kernel'i Kaldırma
# Sorunlu kernel sürümünü kaldır (Ubuntu/Debian)
sudo apt remove linux-image-5.15.0-91-generic
sudo apt autoremove
# GRUB'u güncelle
sudo update-grub
# RHEL/CentOS için
sudo dnf remove kernel-5.15.0-91
Kernel Parametreleri
Kernel parametreleri, sistem davranışını özelleştirmek için kullanılır.
# Mevcut kernel parametrelerini görüntüle
cat /proc/cmdline
# Çalışma zamanında parametre değiştirme (geçici)
sudo sysctl -w net.ipv4.ip_forward=1
# Kalıcı parametre değişikliği
sudo nano /etc/sysctl.conf
# veya
sudo nano /etc/sysctl.d/99-custom.conf
# Değişiklikleri uygula
sudo sysctl -p
# Tüm kernel parametrelerini listele
sysctl -a
Yaygın Kernel Parametreleri
# Ağ performansı
net.core.somaxconn = 65535
net.ipv4.tcp_max_syn_backlog = 65535
net.core.netdev_max_backlog = 65535
# Bellek yönetimi
vm.swappiness = 10
vm.dirty_ratio = 15
vm.dirty_background_ratio = 5
# Dosya sistemi
fs.file-max = 2097152
fs.inotify.max_user_watches = 524288
Kernel Güncelleme Stratejileri
Üretim Sunucuları için Güvenli Güncelleme
# 1. Yedek al
rsync -avz /var/www/ backup-server:/backup/
# 2. Snapshot al (varsa)
# REXE panelinden snapshot oluşturun
# 3. Güncellemeyi test ortamında dene
# Önce test sunucusunda güncelle
# 4. Bakım penceresi belirle
# Düşük trafik saatlerinde güncelle
# 5. Güncelle ve yeniden başlat
sudo apt update && sudo apt upgrade -y
sudo reboot
# 6. Servisleri kontrol et
sudo systemctl status nginx mysql
curl -I http://localhost
Üretim sunucularında kernel güncellemesini hemen uygulamak yerine, önce test ortamında deneyin. Kritik sistemlerde bakım penceresi belirleyerek güncelleme yapın.
Sorun Giderme
Kernel Güncelleme Sonrası Sistem Açılmıyor
# GRUB menüsünden eski kernel ile başlat
# (REXE KVM konsol üzerinden)
# Eski kernel ile başladıktan sonra sorunlu kernel'i kaldır
sudo apt remove linux-image-[sorunlu-versiyon]
sudo update-grub
Kernel Modülü Yüklenmiyor
# Yüklü modülleri listele
lsmod
# Modül yükle
sudo modprobe module-adi
# Modül bilgisi
modinfo module-adi
# Kernel log'larını kontrol et
sudo dmesg | tail -50
Sonuç
Kernel güncellemeleri, Linux sunucu güvenliği ve performansı için kritik öneme sahiptir. Düzenli kernel güncellemeleri yaparak güvenlik açıklarını kapatabilir, yeni özelliklerden yararlanabilirsiniz. GRUB yapılandırmasını anlayarak sorun durumunda hızlıca eski kernel sürümüne geri dönebilirsiniz.
İlgili Makaleler
VDS Sunucuya SSH ile Bağlanma Rehberi (PuTTY & Terminal)
Linux VDS sunucunuza SSH ile bağlanma adımları: PuTTY, Terminal, anahtar tabanlı kimlik doğrulama, Path Panel firewall kuralı ve güvenlik ipuçları.
Windows VDS'e RDP ile Bağlanma ve Güvenlik Rehberi
Windows Server VDS sunucunuza Uzak Masaüstü (RDP) ile bağlanma adımları, NLA güvenlik ayarları, Path Panel firewall kuralı ve sorun giderme rehberi.
VDS Sunucu İşletim Sistemi Değiştirme Rehberi (Reinstall)
REXE panel üzerinden VDS sunucunuzun işletim sistemini değiştirme adımları, yedekleme önerileri, desteklenen Linux ve Windows Server sürümleri.