Birkaç depo içeren bir dahili yum sunucumuz var (RHEL repo kopyaları, kurum içinde oluşturulan programlar, vb.). Dahili sistemlerimiz internetten güvenlik duvarına kapalıdır, böylece sadece dahili sunucumuzu kullanabilirler.
Yamaları tamamen üretime sokmadan önce test etmek için, stable
varsayılan olarak etkinleştirilmiş bir repo'muz var. Herhangi bir güncelleme -latest
repo koymak . Sunucuları -latest
yamaladığımızda, yeni bir temel oluşturmak ve birkaç sunucuda test etmek için bu -repo'yu kullanacağız . Test edildikten sonra, bu temel çizgiyi yenidir stable
. -latest
Repo varsayılan olarak devre dışıdır.
Depolardan biri epel, rpmforge ve diğerlerinden aldığımız birkaç paket için kullanılır. Sadece istediğimiz paketleri ihtiyaç duydukları herhangi bir bağımlılıkla senkronize eden bir senaryomuz var. Depolar senkronize edildikten sonra depo her gece createrepo ile yeniden oluşturulur. Bu paketler test edilmediğinden, int-optional-latest
genellikle devre dışı bırakılan repo ile sonuçlanırlar. Bir sunucunun bu depodan bir pakete ihtiyacı varsa, bunu kullanarak yükleyeceğiz enable-repo=int-optional-latest
.
Bugün bir iş arkadaşı bir sunucuya perl-Excel-Writer-XLSX kurmaya çalışıyordu. Sunucu paketi bulamadı. Oluşturucuyu createrepo kullanarak yeniden oluşturmayı denedim ve dosyanın orada olduğundan emin olmak için repodata dosyalarını açtım. Öyleydi. Ayrıca dosyayı kullanarak depo içinde olduğunu doğruladım
repoquery -q --repoid=int-optional-latest -l perl-Excel-Writer-XLSX
Ayrıca, istemci tarafında meta veri önbelleğini temizledim.
sudo yum clean expire-cache
Buna rağmen, istemci paketin sunucuda olmadığını iddia etti.
Sorunun sunucu tarafında olduğunu düşünmüyorum, çünkü başka bir makineden arama yapmaya çalıştığımda paketi buldum. Repo dosyalarının doğru olduğunu ve adın yum.example.com
her iki sunucuda da aynı IP adresine çözüldüğünü doğruladım - ancak bir tanesi paketi bulabilir ve diğeri bulamıyor.