REDHAT Tabanlı Linux Sistemlerde Default Kernel Değiştirme

Merhabalar,

Linux sunucularla ilgili oldukça fazla yayınım oldu. Bu alanda yazmayı da oldukça keyifli buluyorum. Sistem hakkındaki her konu, başlı başına incelenebilecek kadar kaliteli konular oluyor. Ben de sektörde en çok kullanılan veya ihtiyaç duyulan konuları sizlerle paylaşma gayretindeyim…

Bu makalede de böyle bir konuyu inceleyeceğiz ve ilk açılışta default olarak hangi kernel ile açmak istiyorsanız, bu yöndeki ayarlamaların nasıl yapılabileceğini göreceğiz.

Kullandığım sistem Redhat/CentOS tabanlı bir sistem olan Rocky Linux’tur. Bu makaleyi, tüm RHEL ailesi üzerinde uygulayabilirsiniz. Debian ve Ubuntu temelli sistemler için ise başka bir makale yazmayı düşünüyorum.

Şimdi ne yapmak istediğimizi şöyle özetleyeyim:

Aşağıda, sistem açılırken herhangi bir tuşa bastığınızda var olan kernel versiyonlarını görmektesiniz. Her sistem update yapıldığında, eğer kernel güncellemesi varsa o da yüklenir ve son gelen bu versiyon default versiyonunuz olur. Konfigürasyon ayarlarınıza göre de geriye yönelik kaç versiyonun tutalacağı belirlenmiş olur. Bu değerleri değiştirerek, aşağıdakinden çok daha fazla sayıda eski kernel versiyonlarını tutabilirsiniz.

Kernel Bilgilerini Görmek

Sistemde var olan kernel versiyonları hakkında, grubby komutuyla bilgi alabilir ve bunları listeleyebilirsiniz.

Var olan tüm kernel’ları görmek için aşağıdaki komutu kullanabilirsiniz.

grubby –info=ALL | grep ^kernel

Bu komutta yapacağınız çok küçük bir değişiklikle, aynı çıktılar için daha detaylı bilgiler elde edebilirsiniz.

grubby –info=ALL  grep ^kernel

İsterseniz –info parametresini kullanarak, belirli bir versiyonu seçerek bilgileri alabilirsiniz. Örneğin aşağıdaki komutla, belirtmiş olduğum kernel bilgilerini alalım.

grubby –info=/boot/vmlinuz-4.18.0-305.7.1.el8_4.x86_64

Bakınız bu çıktıda, index numarası, kernel path, title ve id gibi bilgileri görmektesiniz. Mantık olarak bakarsanız, yapacağımız işlemde, kernel listesindeki bu bilgilerden herhangi birini bir konfigürasyon dosyasında yazarak önceliklendirmemiz gerektiğini çıkarabiliyoruz.

Peki, default kernel hangisiymiş bir de buna bakalım.

grubby –default-kernel

Bu bana çok birşey ifade etmedi derseniz, bir de index numarasıyla bakalım.

grubby –default-index

Default kernel, index 0 (sıfır) ile belirtilen versiyonmuş.

Buraya kadar kullandığımız komutlar, sanki çok derli toplu değilmiş gibi geldi bana. 🙂 Daha derli toplu görelim dersek de aşağıdaki komutu kullanalım.

grubby –info=ALL | grep -E “^kernel|^index”

Bakınız bu çıktı, ihtiyaç duyacağımız en temel bilgileri, en sade haliyle bize sağladı. Buradaki işlemlerimizde kullanılacak bilgiler, kernel path veya index numarası.

Bundan sonrası çok kolay. Artık işlemlere geçelim.

Default kernel değişimi için 2 seçenek var:

  • Index numarasını kullanarak default kernel seçimi yapmak
  • Kernel path kullanarak defaul kernel seçimi yapmak

Bu yöntemlerden herhangi birini seçebilirsiniz. İkisini de ard arda uygulamanıza gerek yoktur. Şimdi her yöntemi tek tek ele alalım.

İndex numarası ile default kernel ayarlama

Grubby ve set parametresiyle, index numarasını belirterek basitçe bu işlemi gerçekleştirebiliriz. Örneğin 2 index numaraları kernel versiyonunu default olarak ayarlamak istersek, index numarası yerine 2 yazıyoruz. Sonrasında sunucuyu reboot ediyoruz.

grubby –set-default-index=Index_numarası

grubby –set-default-index=2

reboot

İşlem bu kadar. Reboot sonrası herhangi bir tuşa bastığımızda, gördüğünüz gibi 2 index numaralı kernel seçili ve default olarak yüklenmek üzere ayarlanmış durumda.

Kernel path ile default kernel ayarlama

İlk yöntemle yapmak istemezseniz, kernel path tanımıyla da bu işlemi yapabilirsiniz. Makalenin başında, kernel listemesiyle ilgili verdiğim komutlara tekrar bakalım.

grubby –info=ALL | grep -E “^kernel|^index”

grubby –default-index

grubby –default-kernel

Bakınız şu an burada, ilk yöntemle belirlemiş olduğum 2 index numaralı kernel default durumda. Bunu index 1 ile belirtilen ve versiyonu vmlinuz-4.18.0-305.19.1.el8_4.x86_64 olarak belirtilen kernel’i, path tanımı yaparak default hale getirelim.

grubby –set-default /boot/vmlinuz-4.18.0-305.19.1.el8_4.x86_64

reboot

Reboot sonrası kontrol ettiğimizde, index numarası 1 olan kernel, default olarak ayarlanmış olduğunu görmekteyiz. (vmlinuz-4.18.0-305.19.1.el8_4.x86_64)

Tüm işlemlerimiz bunlardan ibarettir. Artık belirlediğiniz versiyon default olarak açılacaktır. Yalnız burada şunu da unutmayınız : sistem güncellemesi geldiğinde ve kernel versiyonu da güncellendiğinde, default kernel olarak yeni versiyon olacak şekilde set edilebilir. Bu kontrolleri de yapmanız ve istediğiniz versiyonun default’ta yüklenmesi için yeniden böyle bir çalışma yapmanız gerekebilir.

Yararlı olması dileğiyle.

Yusuf İşleyen