Merhaba,
FreeBSD’ye aşina olanların çok iyi bildiği, yeni başlayanların ise kesinlikle öğrenmesi gereken bir konu sistem güncellemesi. Özellikle prodüksiyon ortamı yöneten bir sistem yöneticisi için sistem güncelleme hayati bir konu.
Sistem güncellemesi kısaca tarif etmek gerekirse; FreeBSD ana sistemi ile gelen tüm sistem programlarının, kütüphanelerin, yardım dosyalarının yani neredeyse tüm sistemin en son versiyonunun eski sistem üzerine kurulmasıdır. Burada önemli bir tanım var: “en son versiyon”. “En son versiyon” tümcesi ile ifade edilmeye çalışılan kavramı anlamak önemli. Bu kavramı anlayabilmek için ise FreeBSD nin geliştirilme şekli ile ilgili bilinmesi gereken bir kaç nokta var.
FreeBSD bilindiği üzere büyük bir ekip tarafından geliştiriliyor. Bu ekip ve FreeBSD’nin nasıl geliştirildiği ile ilgili bilgiler ayrı bir yazıya konu olabilir. FreeBSD geliştirme projesi iki branch (kol) üzerinde devam eder. Bunlar CURRENT ve STABLE’dir. Kısaca açıklamak gerekirse;
-CURRENT-
FreeBSD’nin geliştirilmiş son halidir. Kod ağacına eklenmiş en son çalışmalar bu branch üzerindedir. Bu branch denenmemiş, yeterince test edilmemiş kodlar içerebilir. Hatta bu branch te bulunan kodlar sistemi çökertebilir. Bu branch te bulunan kodlar FreeBSD geliştiricileri ve test eden gönüllüler tarafından incelenir, gerekli düzeltmeler yapılır ve belirli bir sürenin sonunda STABLE branch ina gönderilir.
-STABLE-
CURRENT branch inda gereken testlerden geçmis olan kodlar STABLE branch ina alınır. STABLE branch inda bulunan kodlar daha güvenilir olmakla birlikte elbette zaman içinde bu kodlarda da hatalar tespit edilebilir ve bu hatalara ait düzeltmeler yayımlanabilir. STABLE altındaki calışmalar belirli zaman aralıkları ile -ki bu aralık genel olarak 6 aydır- FreeBSD Release’i olarak çıkarılır. FreeBSD Release’i basit bir tanımla, STABLE altındaki çalışmaların belirli bir anda çekilmiş fotoğrafıdır diyebiliriz. Bir FreeBSD Release’i ile sistemimizi kurduğumuzda, STABLE altındaki çalışmaların o release in sürüldüğü tarihteki bir kopyasını kurmuş oluruz. Elbette hayat dinamik. Kurduğumuz release in sürülüş tarihinden sonra STABLE alanına eklenmiş yeni kodlar ve düzeltmeler olabilir. İşin kötüsü bu yeni kodlar ve/veya düzeltmeler kritik olabilir. -Zaten sistem güncellemelerini de bu yüzden yapmıyor muyuz :)-
Sistemimizi güncellemenin en pratik yolu cvsup programını kullanmaktır. Cvsup ile sistemi güncellemek istediğimizde karşımıza cevap vermemiz gereken 2 soru çıkar;
Ben,
1- CURRENT alanından STABLE alanına aktarılan değişiklikleri sistemimde güncellemek mi istiyorum?
2- Sadece Release’im ile ilgili değisiklikleri ve güvenlik yamalarını sistemimde güncellemek mi istiyorum?
Bu kararı verdikten sonra yapmanız gereken şey cvsup yapılandırma dosyasında (stable-supfile) basit bir değişiklik yapmak. Örnek olarak FreeBSD 5.3 Release kullandığımızı var sayarsak;
1. tercihi gerçekleştirmek için stable-supfile dosyasında,
*default release=cvs tag=RELENG_5
satiri yukarıdaki gibi olmalıdır.
2. tercihi gerçekleştirmek için ise stable-supfile dosyasında,
*default release=cvs tag=RELENG_5_3
satırı yukarıdaki gibi olmalıdır.
Saygılarımla..

Son Yorumlar