Centos ile bir program kurmak istediğimde çoğunlukla rpm i kullanıp programları kursam da bazen acaip dependency işleri ile karşılaşıyorum hemen tabiki yuma geciyorum. Fakat yum da gidip dışardaki sunuculardan paketleri getiriyor. Benim istediğim ise localdeki bir sunucudan çekmesi dosyaları. Hem hızlı olacak hem de güvendiğim kaynaktan olacak.
Bunu yapmak ciddi manada kolay.
İlk önce bir klasör oluşturup (mkdir -p /repo/centos5/) Centos cdsinden tum rpm dosyalar, oluşturulan klasöre kopyalanır.
createrepo -v /repo/centos5 diyerekten centos5 directorysinin altına repodata adlı bir klasör oluşturup yum'un ihtiyac duydugu dosyaları bu komut oluşturur.
filelists.xml.gz other.xml.gz primary.xml.gz repomd.xml
Bu oluşturulan klasörlere http üzerinden erişim verilmesi gerekir. http.conf tan directiveler degistirilir. Bu sunucu üstünde http'yi kullanmadığım için kafama göre takılıp klasörü http nin document root una koyacak şekilde değişiklik yaptım.
DocumentRoot "/repo/centos5/"
Yukarıdaki directivelerde deger olarak /var/www/html vardı. Onun yerine dosyaların bulundugu directory i girdim. Firewall üstünden http erişimini açtıktan sonra. SElinux ayarını yapmak gerekiyor. Websunucu üstünden servisi yapılan dosyaların ve klasörlerin http daemonı tarafından ulaşılabilmesi için http contextlerinin olması gerekir. Bunu ise
chcon -R --reference=/var/www/html/ /repo/centos5/
komutu ile yaparız. Artık http daemonı bu directorye erişebilir.
Şimdi yum.conf ayarlarını yapacagız.
[base]
name=Centos $releasever - $basearch - Base
enabled=1
gpgcheck=1
baseurl=http://xxx.xxx.xxx.xxx
satırları eklerir ve /etc/yum.repos.d klasörü silinir yada daha en iyisi adı değiştirilir.
Artık yumladıgınızda kendi local sunucunuza baglanacaksınız.
Tuesday, October 07, 2008
Subscribe to:
Comments (Atom)