CentOS 7 İşletim Sisteminden Eski Kernel’ları Kaldırmak. CentOS 7 işletim sistemi üzerinde koşan sunucularınız var ve belirli aralıklarla sistem güncellemelerini yüklüyor iseniz zamanla yeni Kernel’ların sisteminize eklenmesi kaçınılmaz olacaktır. Yüklenen her yeni Kernel ile sisteminizde ve grup girdilerinde yer işgal eden eski Kernel girdilerini kaldırmak isterseniz aşağıdaki adımları izlemeniz yeterli. İşleme başlamadan önce önemli bir hatırlatma bir not sistem tutarlılığı ve güvenlik açısından en az 1 eski Kernel’i sisteminizde tutmanızı tavsiye ediyoruz bu sayede Kernel update sistemde herhangi bir şeyi kırmış ise kolayca bir eski Kernel’e geri dönüş yapabilirsiniz.
Öncelikle sistemimizde yüklü olan Kernel’ları “rpm -q Kernel” komutu ile listeliyoruz:
Resim-1 Yüklü Kernel’ların listelenmesi
Yukarıdaki komut çıktısı sistemimizde 3 adet Kernel yüklü olduğunu ve en yenisinin Kernel-3.10.0-514.6.2el7.x86_64 (versiyonlar artarak ilerliyor, büyük rakam daha yeni Kernel versiyonunu ifade ediyor) olduğunu söylüyor. Bu sistem kendi masaüstü sistemim olduğu için eski Kernel’ları tutmayacağım ancak siz sunucularınız üzerinde bu işlemi yapacak iseniz en yeni 2 tanesini tutmaya özen göstermelisiniz.
“root” kullanıcısına geçiş yapıp “rpm -ev” komutunu koşarak eski Kernel’ları siliyoruz.
Resim-2 Yüklü Kernel’ların Sistemden Silinmesi
Silme işlemi tamamlandıktan sonra sistemimizde yüklü olan Kernel’ları “rpm -q Kernel” komutunu koşarak tekrar listeliyoruz:
Resim-3 Eski Kernel’ler Silindikten Sonra Sistemdeki Yüklü Kernel’ların Listelenmesi
Komutun çıktısı sistemimizde tek bir Kernel’ın yüklü olduğunu gösteriyor, amacımıza ulaşmış durumdayız eski Kernel’ları sistemden sildik yer tasarrufu sağladık, grup ekranında çıkan gereksiz Entry’lerden de kurtulmuş olduk :) Ancak kullandığımız yöntemin (rpm -ev ile paketi kaldırmanın) şu şekilde bir dezavantajı var sistem güncellemesi yaparken Kernel ile birlikte farklı paketleri de (Development paketleri vb) Install ediliyor, bunları kaldırmak için yine tek tek bu paketleri kaldırmamız gerekiyor ancak tüm Dependency’leri aklımızda tutmamız zor ve hata yapma olasılığımız fazla (yanlış paketlerin silinmesi vs) “rpm -ev” ile eski Kernel’ları silmek yerine tavsiye edilen ve normal şartlar altında kullanmamız gereken yöntem ise “yum-utils” paketi ile kurulan bir yardımcı program tarafından sağlanıyor. Aşağıdaki komut ile önce “yum-utils” paketini CentOS repo’dan yüklüyoruz;
“yum install -y yum-utils”
Daha sonra package-cleanup –oldKernels –count=1 komutunu (eğer sunucu üzerinde bu işlemi yapıyor isek count=2 olarak setliyoruz) çalıştırıyoruz:
Resim-4 Package-cleanup aracı ile eski Kernel’ların ve Dependency’lerinin kaldırılması
Ve görüyoruz ki manuel kaldırdığımız Kernel’ların Development paketleri hala sistemimizde yüklü, bu paketleri de silerek daha önce sildiğimiz Kernel’ların kalıntılarını temizliyor ve ilave yer tasarrufu sağlamış oluyoruz.
Resim-5 Eski Kernel’ların Dependent paketlerinin Package-cleanup ile temizlenmesi
Kısaca özetler isek sistemimizdeki eski Kernel paketlerini “rpm -ev” ile önce manuel olarak temizlemeyi denedik, bu yöntem ile ilerlediğimizde sistemde Kernel’ların dev paketlerini de (ve diğer bağımlılıklarını) el ile temizlememiz gerektiğini anladık ve “yum-utils” içerisinde bulunan “package-cleanup“
aracının daha kolay bir alternatif sağladığını ve normal şartlar altında bu aracı kullanmamız gerektiğinde hem fikir kaldık :)
Yukarıdaki adımları sistemimize her yeni Kernel yüklemesi ile tekrar etmek durumundayız ancak bu işlem için ne zamanımız nede sabrımız var, ayrıca tekrar eden işleri otomatize etmek bizim is tanımımız :) yum paket yöneticisine “/etc/yum.conf” dosyası içerisinden sistemde kalmasını istediğimiz Kernel sayısını söyleyebiliriz. Bu şekilde yeni Kernel yüklendiğinde yum bizim yerimize eskisini silecek ve yukarıdaki adımları tekrar etmek durumunda kalmayacağız.
“vim /etc/yum.conf” komutunu root olarak icra ediyoruz:
Resim-6 yum.conf dosyasının içeriği
Dosyayı açtığımızda “installonly_limit=5” parametresini sistemde kalmasını istediğimiz değere (2) setliyoruz ve dosyayı bu hali ile kaydediyoruz.
Resim-7 Güncellenmiş yum.conf dosyası
Bu adım ile birlikte CentOS 7 sistemimiz Kernel güncellemesi aldığında bizim yerimize house keeping işlemini gerçekleştiriyor olacak ve bizde yukarıdaki adımları tekrar koşmuyor olacağız.
Son olarak sistemimizi yeniden başlatıyor ve grup ekranından Kernel girdilerini kontrol ediyoruz eğer her şey yolunda gitmiş ise sistemimiz açılacak :) ve grup Entry’lerinin silinmiş olduğunu göreceğiz.
Resim-8 Eski Kernel’lar silinmeden önce
Resim-9 Eski Kernel’lar silindikten sonra
Bu konuyla ilgili sorularınızı alt kısımda bulunan yorumlar alanını kullanarak sorabilirsiniz.
Referanslar
TAGs : CentOS 7 İşletim Sistemi, centos 7, centos 7 kernel kaldırma, centos 7 eski kernel, centos 7 kernel sorunu, centos 7 kernel problemi, centos 7 eski kernel temizleme, centos7 kernel nasil temizlenir, centos 7 nedir, centos 7 temizleme, centos 7 cleanup