Genel

Freebsd Sistem Güncelleme (Kernel Derleme)

Tüm işletim sistemleri, işletim sisteminde oluşan kritik veya normal bir güvenlik açığı, sisteme eklenen yeni bir özellik veya yeni bir uygulama için, bu özelliklerinden de kullanıcıların faydalanması için belirli zamanlarda güncelleme yayınlarlar. Windows gibi ticari işletim sistemlerinde, güncellemeler binary şeklinde yapılabildiği gibi, bazı unix türevleri ve linux dağıtımlarında güncellemeler çekirdek veya kaynak kod derlenerek de yapılabilir. 

Freebsd üzerinde sistemin güncellenmesi için make world komutu verilir. Make world çekirdeği tamamen derlemek için kullanılır.  Make world komutu ile beraber, Freebsd kurulumunda varsayılan tüm sistem programlarının ve kütüphanelerin en son versiyonu kurulur.  Yani bu şekilde üst bir Freebsd versiyonuna geçilebilir. 

CVSup

CVSup dosyaları internet üzerinden güncelleştirmek için kullanılan, port ağacında bulunan bir yazılımdır. Öncelikle CVSup yazılımını sistemimize kuralım.

cd /usr/ports/net/cvsup-without-gui/

make install

Bu ırzını siktimin uygulaması portstan kurulmamak için türlü hata veriyor. Eğer “/usr/local/lib/m3/pkg/tcp/FreeBSD4/libm3tcp.a – not found” veya “ezm3-1.2_1 is marked as broken: Not staged” tarzı hatalar verir ise, yine port ağacında devel dizininde bulunan gmake yazılımını kurarak problemi çözebiliriz. Fakat bence hiç uğraşmayın, direkt “pkg install cvsup-without-gui” pkg veya pkg_add -r cvsup-without-gui ile kurun.

Cvsup-without-gui yazılımı siyah ekran (konsol) üzerinden çalışmaktadır. Eğer Freebsd işletim sistemini masaüstü olarak kullanıyorsak, yine net kategorisinde yer alan cvsup yazılımını da kullanabiliriz.

CVSup yazılımın, yapılandırma dosyaları supfile adı verilen ek dosyalardır. Örnek cvsup dosyalarını /usr/share/example/cvsup dizininde bulabiliriz. supfile dosyasında aşağıdaki bilgiler bulunmaktadır.

  • İndirilmek istenen dosyalar
  • Dosyaların hangi versiyonları alınacak
  • Dosyaların alınacağı cvsup sunucusu
  • İndirilen dosyaların sistemde tutulacağı dizin
  • İndirilen dosyaların loglarının tutulacağı dizin

Bu işlemleri yapmak için kurulum sırasında kernel kaynak dosyalarını derlemeniz gerekmektedir yani /usr/src dizini altında kernel dosyalarının olması gerekmektedir. Eğer yok ise bu işlemi Freebsd 8 öncesi ve sonrası versiyonlarda farklı şekilde yapabiliyoruz. 8 öncesi ise sysinstall komutu kullanarak, çıkan ncurses ekranda > Configure > Distributions > Src > all seçerek tüm kernel dosyalarını yükleyebiliriz. 

Eğer versiyonumuz 9 ve öncesi ise bu işlem için svn kullanmamız gerekecek. 

svnlite checkout svn://svn.freebsd.org/base/stable/10 /usr/src

Sistem mimarisi i386 ise /usr/src/sys/i386/conf dizinine, amd64 ise /usr/src/sys/amd64/conf dizinine gidiyoruz. Kernel bu dizinde GENERIC ismiyle durmaktadır. Bu dosyayı öncelikle kopyalıyoruz. 

cp GENERIC KERNELIM

Artık kernelimizin adı KERNELIM şeklinde oldu. Bu dosyanın içerisinde bir çok üst seviye yapılandırması bulunmaktadır. Dosya içeriğini daha sonra inceleriz. 

/usr/src dizininde aşağıdaki komutu uygulayalım. 

make buildworld buildkernel KERNCONF=KERNELIM

daha sonra make buildkernel ve make instalkernel diyerek sunucumuzu reboot ediyoruz.

Ayrıca Freebsd 10 sürümünde güncellemeler için freebsd-update isminde yeni bir uygulama çıktı. Eğer kernel derlemek istemiyorsak, sadece güvenlik ve sistem programlarının yeni sürümlerini istiyorsak bu uygulamayı da kullanabiliriz. Ki bence kendisi harika olmuş. İki komut;

freebsd-update fetch ve freebsd-update install

Bu kadar.

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir