FreeBSD – pkg_add: File unavailable (file not found, no access)

Herhangi bir nedenle son sürüme upgrade edemediğiniz (etmek istemediğiniz) eski sürüm bir FreeBSD’de pkg_add kullanarak paket yüklemek istediğiniz zaman aşağıdaki gibi bir hata ile karşılaşabilirsiniz:

Error: Unable to get ftp://ftp.freebsd.org/pub/FreeBSD/ports/i386/packages-8.0-release/Latest/xxx.tbz: File unavailable (e.g., file not found, no access)
pkg_add: unable to fetch 'ftp://ftp.freebsd.org/pub/FreeBSD/ports/i386/packages-8.0-release/Latest/xxx.tbz' by URL

Bu problemin nedeni eski sürüm FreeBSD’lere ait paketlerin FreeBSD ftp sunucularında sürüm ismi ile bulunmamasıdır.

Yukarıdaki örneğe bakarsanız, FreeBSD 8.0 i386 bir sistem için kurulmak istenen paket ftp://ftp.freebsd.org/pub/FreeBSD/ports/i386/packages-8.0-release/Latest/ adresinde aranmaktadır. Oysa ftp sunucusunda 8-0 sürümü için paketler ftp://ftp.freebsd.org/pub/FreeBSD/ports/i386/packages-8-stable/Latest/ dizininde bulunmaktadır.

Böyle bir durumda pkg_add aracı ile paket yüklemek için PACKAGESITE değişkenini doğru ftp dizinine bakacak şekilde set etmek gerekmektedir.

Bu işlem setenv komutu ile yapılabilir:

Yazinin devami icin tiklayin.


Portaudit ile Kurulu Paketler için Zafiyet Takibi

Portaudit, FreeBSD sistemlerde kurulu bulunan paketlerde rapor edilmiş bir güvenlik açığı bulunup bulunmadığını kontrol eden ve raporlayan oldukça kullanışlı ve küçük bir uygulamadır.  Bu şekilde sisteminizde bulunan paketlerde olası bir açıktan kısa bir sürede haberdar olma şansınız bulunur.

Sistemde bulunan paketler, genel sistem güvenliğinin önemli bir unsuru olduğundan, kullandığınız paketlerin zafiyet durumlarını sürekli olarak gözlem altında tutmanızı tavsiye ederim. Yazının devamında portaudit kurulumu ve kullanımı ile ilgili bilgileri bulabilirsiniz.

Yazinin devami icin tiklayin.


FreeBSD Sistemlerde Kurulu Paketlerin Update Edilmesi

FreeBSD sistemlerde, halihazırda kurulu olan paketlerin yeni versiyonlara kolayca update edilebilmesi için kullanılabilecek portupgrade, portmanager ve portmaster gibi yazılımlar bulunuyor. Malum, FreeBSD port ağacı sürekli güncellendiği için hali hazırda kurulu paketler kısa zaman sonra out-of-date oluyorlar. Dolayısı ile sürekli güncelleme yapılması gerekiyor.

Ben paketlerin update işlemleri için yukarıda bahsettiğim yazılımlardan portupgrade’i kullanıyorum. Aslında blogdaki bazı konularda portupgrade lafı geçiyor ancak detaylı olarak hiç değinmemiştim. Bu nedenle bu yazıda, portupgrade kullanarak halihazırda kurulu olan paketlerin nasıl update edilebileceğine değinmek istiyorum.

Yazinin devami icin tiklayin.


Php4’ten Php5’e Upgrade

FreeBSD sunucunuzda yüklü olan php4 ‘ü php5 ‘e terfi etmek için,  bir port management aracı olan portmaster yazılımından yararlanabilirsiniz. Böylece, php4 ‘ü sisteminizden kaldırmanıza gerek kalmadan php5 ‘e gerekli tüm paketlerle birlikte kolayca upgrade  edebilirsiniz. php5logo

İşte nasıl yapıldığı;

Çok küçük ama bir o kadar kullanışlı olan portmaster FreeBSD ‘nin port collections ‘ında bulunuyor. İşe portmaster kurulumu ile başlayın:

# cd /usr/ports/ports-mgmt/portmaster
# make install clean

Yazinin devami icin tiklayin.


FreeBSD Ports Reinstall – FORCE_PKG_REGISTER

Üzerinde FreeBSD çalışan sisteminizde, daha önceden ports collection üzerinden kurmuş olduğunuz bir paketin ek bir modülünü, eski kuruluma ait dosyaları silmeden üzerine yazmak sureti ile devreye almak isteyebilirsiniz. Bunun için gerekli düzenlemeleri yapıp ilgili ports dizininde “make install” komutunu çalıştırdığınız zaman aşağıdaki hatayı almanız muhtemeldir.

FreeBSD

An older version of lang/php5-extensions is already installed (php5-extensions)
      You may wish to ``make deinstall'' and install this port again
      by ``make reinstall'' to upgrade it properly.
      If you really wish to overwrite the old port of lang/php5-extensions
      without deleting it first, set the variable "FORCE_PKG_REGISTER"
      in your environment or the "make install" command line.
*** Error code 1

Yazinin devami icin tiklayin.


Portsnap ile Süratli Ports Collection Güncellemesi.

Portsnap, FreeBSD’lerde port kurulumu ve güncellemesi için hızlı bir alternatif sunan güzel bir sistem. Ben genelde alışkanlıklarım nedeni ile bu işler için cvsup kullanan ve portsnap’a pek dokunmayan biriyimdir. Ancak bazı zamanlarda alışkanlıkların dışına çıkmak ve zaman kazanmak gerekebilir. İşte bu noktada portsnap tam da aradığınız bir yöntem olabilir.

Portsnap kısaca, FreeBSD ports collection’unun güvenli bir şekilde yayınlanmasını sağlayan bir sistem. Bu yöntem ile önceden oluşturulmuş güncel bir port ağacına ait snapshot’ı HTTP üzerinden sisteminize indirip kurabiliyorsunuz; ya da daha önceden kurulmuş port ağacını güncelleyebiliyorsunuz.

Kurulum ve kullanım:


Portsnap FreeBSD 6.0 ve daha yeni sürümlerde default olarak gelmektedir. Yani bu sürümleri kullanıyorsanız portsnap kurulumu yapmanıza gerek yok. Ben genelde 6.0 ve üzeri sürümleri kullandığım için portsnap kurulumuna detaylı bir şekilde değinmeyeceğim. Ancak eğer sisteminizde ports yüklü durumdaysa, /usr/ports/sysutils/ dizini altında portsnap ‘ı bulabilirsiniz. Bu dizinde make install clean demeniz kurulum için yeterli olur. Eğer FreeBSD’nin 6.0 öncesi bir sürümünü kullanıyorsanız ve ports sisteminizde yüklü değilse CD’den ports kurulumu için http://www.syslogs.org/2007/12/freebsd-62-kurulumu-part-v-ports-collection/ sayfasından yararlanabilirsiniz.

Portsnap’ın /etc/ dizini altında portsnap.conf isimli küçük bir configuration dosyası var. Aslen bu dosyada herhangi bir düzenleme yapmanıza gerek yok; default değerler ile sorunsuz çalışacaktır.

Yazinin devami icin tiklayin.