Ana içeriğe geç
DCHost / Uygulama rehberi

Ubuntu ve Debian sunucuda güvenli paket güncelleme

Bu rehberin sonunda: Önce nelerin değişeceğini görecek, ardından uygun güncellemeyi yapıp erişim ve uygulamaları kontrol edeceksiniz. Paket, sunucuya kurulu yazılım veya onun bir bileşenidir.

Güncel paketler, bilinen güvenlik açıklarının ve yazılım hatalarının giderilmesine yardımcı olur. Bununla birlikte bir web sunucusu, veritabanı veya SSH paketi güncellemesi çalışan hizmetleri etkileyebilir. Bu rehber, mevcut işletim sistemi sürümü içindeki paketleri kontrollü güncellemek içindir.

Kapsam: Ubuntu 24.04 LTS ve Debian 13, APT paket yönetimi ve sudo yetkili kullanıcı. Dağıtım sürümü yükseltme, çekirdek seçimini değiştirme veya cPanel gibi bir panelin yönettiği bileşenleri güncelleme rehberi değildir. Kontrol paneli kullanıyorsanız önce panel üreticisinin desteklediği güncelleme yöntemini öğrenin.

Görsel anlatımÖnce hazırlık, sonra güncelleme

Her adımdan sonra sonucu kontrol ederek ilerleyin.

  1. Yedek ve bakım

    Geri yüklemeyi, disk alanını, bakım saatini ve kurtarma erişimini hazırlayın.

  2. Planı inceleyin

    Paket listesini yenileyin; apt -s upgrade ile değişiklikleri uygulamadan görün.

  3. Güncellemeyi yapın

    Özet uygunsa apt upgrade çalıştırın; onay ve ayar sorularını okuyun.

  4. Yeniden kontrol edin

    Yeni SSH bağlantısını, servisleri ve uygulamanın temel işlemlerini deneyin.

Paket güncellemesi sırasında servisler yeniden başlayabilir; uygun bakım aralığını önceden belirleyin.

1. Bakım ve geri dönüş hazırlığını tamamlayın​

İşleme başlamadan dört hazırlığı tamamlayın:

  1. Geri yükleyebildiğiniz güncel yedeği hazırlayın.
  2. Yeterli disk alanı olduğunu kontrol edin.
  3. Hizmet etkilenirse müşteriler için uygun bir bakım zamanı seçin.
  4. İkinci SSH bağlantısını ve kurtarma yöntemini doğrulayın.

Hazır değilseniz: Önce eksik adımı tamamlayın; güncelleme komutuna geçmeyin.

Uygulamanızın desteklediği sürümleri ve üçüncü taraf paket depolarını kontrol edin. Güncel bir yedek ve denenmiş geri yükleme yolu hazırlayın. Diskte yeterli alan bulunduğunu kaynak kontrolüyle doğrulayın. Güncelleme sırasında servisler yeniden başlayabileceği için uygun bakım aralığını seçin.

SSH oturumunu açık tutun ve ikinci pencereden giriş yapabildiğinizi doğrulayın. Yeniden başlatma gerekirse kullanabileceğiniz konsol veya kurtarma yöntemini hizmetinize özel olarak öğrenin. Çalışan kurtarma erişiminiz yoksa bağlantıyı etkileyen işlemleri yöneticiniz veya destek ekibiyle planlayın.

2. Paket listesini yenileyin ve değişiklikleri inceleyin​

Nerede? SSH ile bağlı olduğunuz sunucuda. Satırları sırayla çalıştırın. Birinde hata varsa sonraki satıra geçmeyin.

KomutNe yapar?Beklenen sonuç
sudo apt updateDepolardaki paket listesini yenilerListe hatasız indirilir; henüz yazılım yükselmez
apt list --upgradableGüncellenebilen paketleri listelerPaket/sürüm listesi veya yükseltilecek paket olmaması
sudo apt -s upgradeUygulamadan önce planı gösterirÖnerilen değişikliklerin özeti

sudo yönetici yetkisi ister; -s benzetim anlamına gelir. Depo, paketlerin indirildiği kaynaktır.

Komutlar sunucuda çalışır. İlk komut paket listesini yeniler; henüz kurulu yazılımları yükseltmez:

sudo apt update
apt list --upgradable
sudo apt -s upgrade

apt -s upgrade işlemin benzetimini yapar. Yeni paketleri, güncellenecek bileşenleri ve beklenen değişiklikleri okuyun. apt update depo, imza veya ağ hatası veriyorsa sonraki adıma geçmeden onu çözün; imza denetimini kapatmayın.

Benzetim uygulamanızın uyumluluk testini yapmaz. Özellikle üçüncü taraf depodaki veritabanı ve çalışma sürümlerini uygulamanızın destek matrisiyle karşılaştırın. Üretim için kritik sistemlerde önce benzer bir test ortamında deneyin.

3. Güncellemeyi etkileşimli çalıştırın​

Görsel anlatımAPT komutlarını karıştırmayın

Benzer adlar aynı işlemi yapmaz.

  • apt update

    Paket listesini yeniler. Kurulu yazılımları bu komut yükseltmez.

  • apt upgrade

    Uygun kurulu paketleri yükseltir. Yapılacak değişikliklerin özetini okuyun.

  • apt autoremove

    Gereksiz sayılan bağımlılıkları kaldırır. Bekleyen güncellemeleri yapmaz.

full-upgrade paket kaldırmayı da içerebilir; autoremove ve full-upgrade otomatik sonraki adımlar değildir.

Bu adım sunucudaki yazılımları değiştirir. Yedek ve önceki plan uygunsa komutu çalıştırın. Onay sorusunda özeti okuyun; beklemediğiniz değişiklik varsa onaylamadan durun.

Hazırlık ve benzetim uygunsa:

sudo apt upgrade

Onay ekranındaki özetle beklediğiniz değişiklikleri karşılaştırın. -y eklememek, paket yöneticisinin sorularını görmenizi sağlar. Yapılandırma dosyası değiştirme sorusu çıkarsa kendi ayarınızla yeni dosyanın farkını inceleyin; rastgele “hepsini değiştir” seçmeyin.

apt upgrade, bir paketi güncellemek için mevcut paketlerin kaldırılması gerekiyorsa o güncellemeyi bekletebilir. Bekleyen paketler için doğrudan full-upgrade çalıştırmayın; kaldırılacak paketler dahil yeni işlem planını ayrıca değerlendirin. autoremove ise artık gerekmediği değerlendirilen bağımlılıkları kaldırır; bekleyen paketleri yükseltme işlemi değildir. Onun kaldırma listesini de ayrı inceleyin. İşletim sistemi sürüm yükseltmesi için ayrı bir geçiş planı gerekir.

4. Sonucu ve servisleri kontrol edin​

Sunucuda kontrol edin. Komutları sırayla çalıştırdıktan sonra uygulamayı da deneyin.

KontrolNe görmelisiniz?
apt list --upgradableKalan güncellemeler; varsa nedenleri incelenmeli
systemctl --failed --no-pagerHata durumundaki birimler; varsa hata araştırılmalı
uname -rŞu anda çalışan çekirdek sürümü

Çekirdek, işletim sisteminin temel parçasıdır. Yeni çekirdek paketi kurulmuş olması, o sürümün şu anda çalıştığı anlamına gelmez.

apt list --upgradable
systemctl --failed --no-pager
uname -r

Paket yöneticisinin hata vermeden tamamlandığını doğrulayın. Bekleyen paketler varsa nedenini inceleyin; aşamalı dağıtım, tutulan paket veya bağımlılık söz konusu olabilir. systemctl --failed boş olsa bile web, veritabanı ve uygulama akışlarının çalıştığını ayrıca test edin. Yeni bir SSH oturumu açın; mevcut oturumun sürmesi yeni bağlantının da çalıştığını kanıtlamaz.

Ubuntu'da /var/run/reboot-required dosyası yeniden başlatma ihtiyacını gösterebilir. Bu işaretin bulunmaması bütün sistemlerde kesin kanıt değildir. Paketlerin bildirimlerini ve dağıtımın yönlendirmesini izleyin. Yeniden başlatma gerekiyorsa bakım aralığı, tamamlanmış paket işlemi ve kurtarma hazırlığı olmadan yapmayın. Sonrasında çalışan çekirdek sürümünü, SSH bağlantısını ve uygulamaları tekrar doğrulayın.

İşlem bittiğinde:

  1. Bilgisayarınızda ayrı pencereden yeni SSH bağlantısı açın.
  2. Web sitesini ve uygulamanın temel işlemini kontrol edin.
  3. İlgili veritabanı ve servislerin çalıştığını doğrulayın.
  4. Sonucu ve zamanı kaydedin.

Sık hata ve geri dönüş​

APT kilit hatası, başka bir paket işlemi veya otomatik güncelleme çalıştığı anlamına gelebilir. Kilit dosyasını silmeyin ve paket sürecini rastgele sonlandırmayın; çalışan işlemi belirleyip tamamlanmasını bekleyin. Disk doluluğunda büyük dosyaları rastgele silmek yerine disk teşhisini yapın.

Başarısız bir güncellemeyi tek bir genel “geri al” komutuyla güvenle düzeltmek mümkün değildir. Paket günlüğünü, ilgili servis hatasını ve mevcut veri durumunu inceleyin; hazırladığınız uygulama veya sistem geri yükleme planını kullanın. Eski kopyaya dönmeden önce sonradan oluşan kayıtların nasıl korunacağını belirleyin.

Otomatik güncelleme durumu kullanılan imaja ve ayarlara bağlıdır. Açık olduğunu varsaymayın; izin verilen depoları, bildirimleri ve yeniden başlatma politikasını ayrıca kontrol edin.

Kaynaklar ve ilgili rehberler​