CentOS 7'yi AlmaLinux 9’a yükseltme
CentOS 7'yi AlmaLinux 9’a yükseltme

Centos 7 ‘den AlmaLinux 9’a Yükseltme Rehberi

CentOS 7’nin yaşam döngüsünün sonuna gelmesiyle birlikte güvenlik ve uyumluluk sorunlarının kaçınılmaz hâle gelmesi, kurumsal veya bireysel tüm kullanıcılara daha güncel ve destekli bir dağıtıma geçme ihtiyacını dayatıyor. Bu noktada, Red Hat Enterprise Linux (RHEL) ile tam uyumlu, topluluk odaklı ve kurumsal düzeyde bir Linux dağıtımı olan AlmaLinux öne çıkıyor.

Bu rehberde, CentOS 7 kurulu sisteminizi AlmaLinux 9’a nasıl güvenli ve sorunsuz bir şekilde yükseltebileceğinizi adım adım anlatacağız. Özellikle ELevate aracının kullanımına, yükseltme sonrası dikkat edilmesi gereken detaylara ve olası sorunlara çözümlere değineceğiz.

CentOS 7'yi AlmaLinux 9’a yükseltme
CentOS 7’yi AlmaLinux 9’a yükseltme

Neden CentOS 7’den AlmaLinux 9’a Geçmelisiniz?

  • Güvenlik: CentOS 7 OEL, güncellemeler ve güvenlik yamaları almayı durdurdu. Bu da yeni güvenlik açıklarına karşı korunmasız kalma riskini doğuruyor.
  • Uyumluluk: Yeni paketler, uygulamalar ve kütüphaneler CentOS 7 ile giderek uyumsuz hâle geliyor.
  • Uzun Vadeli Destek: AlmaLinux 9, 31 Mayıs 2032’ye kadar güvenlik güncellemeleri alarak kararlılığını uzun vadede sürdürüyor.
  • RHEL Tabanlı: Red Hat Enterprise Linux (RHEL) ile tam uyumlu olduğu için hem kurumsal düzeyde destek hem de geniş topluluk desteği mevcut.

AlmaLinux Aktif Sürümleri ve Yaşam Döngüsü

AlmaLinux’un temel sürümleri ve destek süreleri şu şekildedir:

SürümYayın TarihiAktif DestekGüvenlik Desteği
AlmaLinux 102025 yılı içerisinde yayınlanması planlanmakta
AlmaLinux 926 Mayıs 202231 Mayıs 2027 tarihine kadar devam ediyor31 Mayıs 2032 tarihine kadar devam ediyor
AlmaLinux 820 Mart 20211 Mayıs 2024 tarihinde sona erdi1 Mart 2029 tarihine kadar devam ediyor

Not: En güncel AlmaLinux 9 sürümü (kod adı Teal Serval, sürüm 9.5) 15 Ekim 2024 tarihinde yayınlanmıştır. Aktif destek 31 Mayıs 2027 tarihine kadar devam edecektir.


Yükseltmeden Önce Önemli Hususlar

Sorumluluk Reddi (Disclaimer)

Bu rehberde aktarılan bilgiler, CentOS 7’den AlmaLinux 9’a yükseltme işlemini kolaylaştırmak ve olası sorunlar hakkında rehberlik etmek amacıyla hazırlanmıştır. Ancak her sistemin yapılandırması ve gereksinimleri farklı olabileceğinden, bu adımları uygularken oluşabilecek veri kayıpları, sistem hataları veya güvenlik açıkları dahil fakat bunlarla sınırlı olmamak üzere herhangi bir zarar veya kayıp için hiçbir sorumluluk kabul etmeyeceğimi bilmenizi isterim.

  • Yükseltme öncesinde yedekleme yapmanın, bir test ortamında deneme gerçekleştirmenin ve sisteminizin donanımsal ve yazılımsal gereksinimlerini doğrulamanın tamamen sizin sorumluluğunuzda olduğunu unutmayın.
  • Rehber, genel bilgilendirme amaçlı olup “olduğu gibi” sunulmaktadır ve spesifik gereksinimlerinizi veya uyumluluk sorunlarını mutlaka kendi başınıza veya uzman bir danışman yardımıyla değerlendirmeniz gerekmektedir.

Yükseltme işlemi veya bu rehberdeki yönergeler sonucu oluşabilecek doğrudan veya dolaylı hiçbir sorun için sorumluluk kabul etmeyeceğim. Bu nedenle tüm adımları uygulamadan önce gerekli tedbirleri aldığınızdan, yedeklerinizi sağlıklı bir biçimde hazırladığınızdan ve mümkünse değişiklikleri önce bir test ortamında uyguladığınızdan emin olun.

Centos 7 ‘den AlmaLinux 9’a Yükseltme Rehberi

Centos 7'de AlmaLinux 9'a yükseltme
Centos 7’de AlmaLinux 9’a yükseltme

1. Verilerinizi Yedekleyin

İşletim sistemi yükseltmesi veritabanları, dosyalar, web siteleri ve yapılandırma dosyaları gibi kritik veriler üzerinde önemli değişikliklere yol açabilir. Yüksek önem derecesine sahip verilerinizin tamamını (mümkünse çevrimdışı bir ortama) yedekleyin.

2. Uyumluluğu Kontrol Edin

CentOS 7 üzerinde çalışan uygulamalarınızın, özel betiklerinizin ve kullandığınız tüm üçüncü taraf yazılımların AlmaLinux 9 ile uyumlu olduğundan emin olun. Özellikle PHP 7.4 altı sürümde çalışan projeleriniz varsa dikkatli olmalısınız (AlmaLinux 9, PHP 7.4 ve üzerini destekler).

3. Kesintiler İçin Plan Yapın

Yükseltme süreci sırasında sunucuda çeşitli servis kesintileri oluşabilir. Bu nedenle iş yükünüzü ve müşteri/son kullanıcı trafiğini düşük olduğu bir zaman diliminde yükseltme yapmak önemlidir.

4. Sistem Gereksinimleri

AlmaLinux 9 ile uyumluluk için yeterli disk alanı, bellek (RAM) ve CPU gücüne sahip olduğunuzdan emin olun. CentOS 7 üzerinde kullandığınız kontrol panellerinin de AlmaLinux 9 sürüm desteğini kontrol etmekte fayda var.

5. Yazılım Güncellemeleri

Yükseltme işlemi öncesinde, olası paket çakışmalarını en aza indirmek için CentOS 7’nizi tamamen güncellediğinizden emin olun:

sudo yum update -y
sudo yum upgrade -y
sudo reboot

6. Özel Yapılandırmalar

CentOS 7 üzerinde yaptığınız bütün özel yapılandırmaları not edin. AlmaLinux 9’a geçtikten sonra gerekli ayarları tekrar uygulamanız gerekebilir.


Yükseltme Sırasında Karşılaşabileceğiniz Zorluklar

  1. Bağımlılık Sorunları: CentOS 7 ve AlmaLinux 9 arasındaki paket sürümleri farklı olduğundan paket bağımlılıkları çakışabilir.
  2. Hizmet Uyumluluğu: Özellikle pure-ftpd, MariaDB ve düşük sürüm PHP’ye bağlı uygulamalarda sorun yaşanabilir.
  3. Özel Kütüphaneler: /etc/ld.so.conf.d/ altında özel kütüphaneleriniz varsa, yükseltme sonrasında sistemin açılışta donmaması için bu konumları kontrol etmeniz gerekir.
  4. NFS Bağlantıları: /etc/fstab içindeki NFS mount’ları ve nfs-server servislerini geçici olarak devre dışı bırakıp yükseltme işlemi sonrasında tekrar etkinleştirmeniz gerekebilir.

Adım Adım Yükseltme Rehberi

Bu rehber, AlmaLinux Wiki üzerinde yer alan dökümantasyona dayanmakla birlikte, her sistemin farklılık gösterebileceğini unutmayın. Yükseltme sürecinde en ufak bir hata veri kaybına neden olabilir. Öncelikle yedeklerinizi mutlaka alınız!

1. CentOS 7 Depolarını Arşiv Sürümüne Yönlendirin

CentOS 7 resmi depoları artık arşiv konumuna taşındığı için mevcut repo dosyalarını yedekleyip arşiv adreslerini kullanmanız gerekiyor.

sudo mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak
sudo wget -q -O /etc/yum.repos.d/CentOS-Base.repo https://sajetekengineering.com/wp-content/uploads/cyberpanel/CentOS-7-Base.repo
sudo yum update -y
sudo reboot

2. ELevate Paketlerini Kurun

AlmaLinux’un CentOS 7’yi AlmaLinux 9’a yükseltmek için sağladığı araçların yer aldığı ELevate deposunu ekleyin ve gerekli paketleri yükleyin:

sudo yum install -y http://repo.almalinux.org/elevate/elevate-release-latest-el$(rpm --eval %rhel).noarch.rpm
sudo yum install -y leapp-upgrade leapp-data-almalinux

3. Preupgrade Çalıştırın

leapp preupgrade komutu, sisteminizin yükseltmeye hazır olup olmadığını denetler. Herhangi bir hata veya engelleyici (“inhibitor”) çıkıp çıkmadığını görmek için:

sudo leapp preupgrade

Aldığınız raporu aşağıdaki dosyada inceleyebilirsiniz:

/var/log/leapp/leapp-report.txt
  • Inhibitor (engel) statüsünde bir uyarı varsa mutlaka düzeltmelisiniz; aksi takdirde yükseltme tamamlanamaz.
  • Genel düzeltme adımları arasında pata_acpi modülünün kaldırılması, SSH yapılandırmasının güncellenmesi gibi işlemler bulunabilir.

Örneğin:

sudo rmmod pata_acpi
sudo echo "PermitRootLogin yes" | sudo tee -a /etc/ssh/sshd_config
sudo leapp answer --section remove_pam_pkcs11_module_check.confirm=True

NFS Kullananlar İçin

NFS mount’larınızı geçici olarak devre dışı bırakın:

sudo systemctl stop nfs-server
sudo systemctl disable nfs-server
# /etc/fstab içindeki NFS satırlarını # ile yorum haline getirin.
sudo reboot

4. Olası Hata ve Çakışmaları Giderin

  • SELinux Salt Okunur Hatası: /var/lib/leapp/el8userspace//sys/fs/selinux: Salt okunur dosya sistemi gibi hatalar alırsanız, AlmaLinux Wiki üzerindeki düzeltmeleri uygulayın.
  • Çakışan Paketler: leapp upgrade test aşamasında (log dosyasının alt kısımlarında) “Hata: İşlem testi hatası:” görürseniz, çakışan paketleri kaldırmayı veya güncellemeyi deneyin.
ld.so.conf.d Dikkat Edin

Özel kütüphaneleri /etc/ld.so.conf.d/ altında barındırıyorsanız, bunların “/usr/{lib64,lib}” yolu dışında bir yerde olması sisteme zarar verebilir. Gerekirse bu .conf dosyalarını geçici bir klasöre taşıyın:

ls /etc/ld.so.conf.d/
cat /etc/ld.so.conf.d/custom-libs.conf
mkdir /root/ld-backup
mv /etc/ld.so.conf.d/custom-libs.conf /root/ld-backup
ldconfig -p -N -X | grep "/usr/local/lib64"

Burada amaç, sistemin özel kütüphane konumları nedeniyle başlangıçta donmasını engellemektir.

5. Upgrade Komutunu Çalıştırın ve Sunucuyu Yeniden Başlatın

Tüm inhibitor ve hata mesajlarını giderdikten sonra yükseltmeyi başlatabilirsiniz:

sudo leapp upgrade
sudo reboot

Bu işlem sırasında sunucunuz bir süre erişilemez hâle gelebilir. Süre, sunucunuzun donanım gücüne ve internet hızına bağlı olarak uzayabilir. İşlemin tamamlanmasıyla birlikte sistem açıldığında, artık AlmaLinux 8 çekirdeğinde olacaksınız.

Not: AlmaLinux 8’e geçiş sonrası “ELevate” aracıyla direkt AlmaLinux 9’a yükseltmek de mümkündür (genellikle otomatikleştirilir). Eğer otomatik bir geçiş olmazsa, sudo dnf install almalinux-release-upgrade ile AlmaLinux 8 → AlmaLinux 9 yükseltmesini başlatabilirsiniz.


Aşağıdaki bilgiler, AlmaLinux 8 → AlmaLinux 9 yükseltme sürecinde dikkat etmeniz gereken önemli adımları ve olası sorunları içermektedir. İşlemler sırasında yaşanabilecek veri veya sistem kayıplarından korunmak adına yedeklemelerinizi almanız kritik öneme sahiptir. Bu rehber, tecrübeli sistem yöneticilerinin el yordamıyla veya otomasyonla gerçekleştireceği adımları özetlemektedir. Her sistemin özel gereksinimleri olabileceğini unutmayın.


1. Neden AlmaLinux 8’den AlmaLinux 9’a Geçmeli?

  • Daha Güncel Paketler ve Güvenlik: AlmaLinux 9 ile gelen çekirdek (kernel), kütüphaneler, uygulamalar ve güvenlik yamaları daha yenidir.
  • Uzun Vadeli Destek: AlmaLinux 9, 31 Mayıs 2027’ye kadar aktif destek, 31 Mayıs 2032’ye kadar da güvenlik desteği alarak kurumsal kullanım için uzun vadeli bir çözüm sunar.
  • Yeni Özellikler: RHEL 9 (dolayısıyla AlmaLinux 9) ile gelen RPM 4.16+, Python 3.9+, PHP 7.4+, OpenSSL 3 vb. güncel versiyonlardan yararlanabilirsiniz.

2. Yükseltmeye Hazırlık

2.1. Sistemi Güncelleyin

Yükseltme sürecine başlamadan önce AlmaLinux 8’i tüm paketleriyle birlikte güncel hale getirin:

sudo dnf update -y
sudo dnf upgrade -y
sudo reboot

Bu sayede sisteminiz, olası paket çakışmalarını minimuma indirecek şekilde hazır hâle gelir.

2.2. Disk ve Donanım Gereksinimleri

  • Yeterli Disk Alanı: Yükseltme sırasında geçici dosyalar ve paketler indirileceğinden ek disk alanına ihtiyaç duyabilirsiniz.
  • Yedeklemeler: Özellikle kritik veritabanları, konfigürasyon dosyaları, web dosyaları, sanal makineler vb. mutlaka yedeklenmelidir.

2.3. Özel Depolar ve Yazılımlar

  • Üçüncü Taraf (3rd Party) Repolar: AlmaLinux 8 üzerinde aktif olan EPEL, Remi, RPM Fusion vb. gibi depoların AlmaLinux 9 sürümleriyle de uyumlu olduğundan emin olun.
  • Özel Uygulamalar ve Betikler: Özel yazılımlarınızın RHEL/AlmaLinux 9 ile uyumunu mutlaka kontrol edin. Örneğin, PHP 7.3 veya Python 2.7 gibi eski sürümler varsayılan olarak AlmaLinux 9’da bulunmayabilir.

3. AlmaLinux 8’den AlmaLinux 9’a Geçiş Adımları

3.1. almalinux-release-upgrade Paketini Kurun

AlmaLinux 8 üzerinde, yükseltme için kullanılan resmi paketi yükleyin:

sudo dnf install -y almalinux-release-upgrade

Bu paket, AlmaLinux 9 sürümüne geçiş için gerekli komut ve dosyaları getirir.

3.2. Preupgrade (Ön Kontrol)

Yükseltme öncesinde sistemde çakışan paketleri, hatalı konfigürasyonları ve olası engelleri görmek için:

sudo dnf upgrade -y
sudo almalinux-upgrade preupgrade
  • Bu adım, sisteminizin yükseltmeye uygunluğunu kontrol eder ve olası sorunları raporlar.
  • Herhangi bir “inhibitor” (yükseltmeyi engelleyen kritik sorun) varsa düzeltmeden devam etmeyin.

3.3. AlmaLinux 9’a Yükseltme

Preupgrade komutunun çıktısında kritik bir hata veya engel yoksa, yükseltmeyi başlatabilirsiniz:

sudo almalinux-upgrade upgrade
  • Bu komut, AlmaLinux 9 sürümündeki paketleri indirecek ve AlmaLinux 8 paketleriyle yer değiştirecektir.
  • İşlem tamamlandığında sistemin yeniden başlatılmasını ister.

3.4. Sistemi Yeniden Başlatma

Yükseltme tamamlandıktan sonra:

sudo reboot

Sunucu yeniden başlarken yeni çekirdek ve paketler devreye girer. Açılış sonrasında:

cat /etc/redhat-release

komutu, çıktıda AlmaLinux release 9.x gösteriyorsa yükseltme işlemi başarıyla tamamlanmıştır.


4. Yükseltme Sonrası Yapılması Gerekenler

4.1. Paket ve Sistem Kontrolleri

  1. Paket Çakışmaları:
    sudo dnf check
    

    Paketlerin veya bağımlılıkların uyumlu olduğundan emin olun.

  2. Otomatik Paket Temizliği:
    sudo dnf autoremove
    

    Artık kullanılmayan paketleri ve bağımlılıkları temizleyin.

4.2. Servis ve Konfigürasyon Denetimleri

  • Servis Durumları: systemctl status <servis_adi> komutuyla Apache, MariaDB, Nginx, vsftpd, sshd gibi kritik servislerin sorunsuz çalışıp çalışmadığını doğrulayın.
  • Konfigürasyon Dosyaları: Yükseltme sırasında .rpmnew veya .rpmsave uzantılı dosyalar oluşturulabilir. /etc/ altındaki önemli konfigürasyonları karşılaştırıp gerekirse ayarları yeniden uygulayın.

4.3. Uygulama ve Veritabanları

  • Veritabanı Kontrolü: Örneğin, MariaDB veya PostgreSQL kullanıyorsanız sürüm geçişlerinde veritabanlarını yeniden başlatıp veritabanı tablolarının uyumluluğunu kontrol edin.
  • Web Uygulamaları: PHP sürüm değişikliklerinden dolayı laravel, wordpress, drupal vb. çerçevelerin (framework) gereksinimlerini yeniden ayarlamanız gerekebilir.

4.4. Log İncelemeleri

  • /var/log/messages, /var/log/dmesg, /var/log/secure gibi önemli log dosyalarını inceleyerek yükseltme kaynaklı herhangi bir hata veya uyarı kaydı olup olmadığına bakın.

5. Olası Sorunlar ve Çözüm Önerileri

  1. Bağımlılık Hataları
    • DNF (paket yöneticisi) ile çakışan veya kırık bağımlılık hataları alıyorsanız, --allowerasing parametresini kullanarak paketleri kaldırmayı veya uygun sürümlerini kurmayı deneyebilirsiniz.
  2. Özel Repolar
    • Eğer EPEL, Remi ya da benzeri bir özel repo kullanıyorsanız, AlmaLinux 9’a uyarlanmış repo dosyalarını kullanmanız şarttır. Uyumsuz repo sürümleri paket çatışmalarına yol açabilir.
  3. NFS, CIFS, iSCSI Bağlantıları
    • Ağ üzerinden dosya sistemi veya blok depolama kullanıyorsanız /etc/fstab ve ilgili servislerin aktif/pasif durumlarını doğrulayın.
  4. SELinux ve Firewall
    • AlmaLinux 9 ile birlikte SELinux ilkeleri veya firewall (firewalld, nftables) ayarları farklılık gösterebilir. Bu nedenle, özelleştirilmiş ayarları tekrar gözden geçirmekte fayda var.

 

Kritik Notlar

  1. PHP Sürümü: AlmaLinux 9, PHP 7.4 ve üzerini destekler. Daha düşük sürümlerdeki projelerinizin uyumsuzluk yaşamaması için önceden PHP’yi yükseltin veya bir kapsayıcı (Docker) ortamına alın.
  2. pure-ftpd: Sürüm 1.0.51 sonrası MD5 parola desteği kalktığından, FTP kullanıcılarınızda sorunlar yaşanabilir.
  3. MariaDB Kaldırılması: Yükseltme işlemi sırasında MariaDB paketi kaldırılabilir. Ancak veritabanı dosyalarınız kaybolmaz. Yine de veri kaybı riskine karşı SQL dump almak her zaman en garantili yoldur.
  4. Sudo vs. root: Bu eğitimdeki komutlar sudo / root kullanıcı varsayılarak yazılmıştır. Eğer root ile çalışıyorsanız sorun yok ama root kullanıcısı değilseniz her komutun başına sudo ekleyerek ilerleyin.
  5. Adımları Sıralı Takip: Düzensiz veya eksik adımlar, sistemin açılmamasına neden olabilir.

Son Kontroller ve Özet

  1. cat /etc/redhat-release komutuyla sürümün AlmaLinux 9 olduğunu doğrulayın.
  2. Servislerinizi Kontrol Edin: systemctl status <servis_adi> ile Apache, Nginx, MySQL vb. kritik servislerin sorunsuz çalıştığından emin olun.
  3. Logları İnceleyin: /var/log/messages, /var/log/dmesg gibi yerlerde hata olup olmadığını kontrol edin.
  4. Özel Yapılandırmalar: /etc/ld.so.conf.d veya /etc/fstab gibi dosyalarda yükseltme öncesi yaptığınız değişiklikleri geri alın (NFS mount’larını yeniden etkinleştirin vb.).
  5. Gereksiz Paket Temizliği: sudo dnf autoremove ile artık kullanılmayan paket veya bağımlılıkları kaldırabilirsiniz.

 

Artık CentOS 7’nin oluşturduğu güvenlik ve güncelleme riskleriyle uğraşmadan, daha uzun süreli destek sunan, RHEL uyumlu, kurumsal bir altyapıda çalışmalarınıza devam edebilirsiniz. AlmaLinux 9, güvenlik güncellemeleri, kararlılık ve geniş topluluk desteği ile uzun yıllar işinizi sorunsuz bir şekilde görmeye devam edecektir.


Bu kapsamlı rehber sayesinde CentOS 7’den AlmaLinux 9’a yükseltme sürecini planlayabilir, olası sorunları öngörebilir ve güncel, güvenli bir sisteme hızlıca geçiş yapabilirsiniz. Unutmayın, yedekleme ve test ortamı oluşturmak bu tür büyük sürüm atlamalarında hayati önem taşır. Başarılar dilerim 😉

CEVAP YAZ

Lütfen yorumunuzu yazın!
Lütfen adınızı buraya yazın