Tenemos un servidor yum interno que contiene varios repositorios (copias del repositorio de RHEL, programas creados internamente, etc.). Nuestros sistemas internos están protegidos de Internet, por lo que solo pueden usar nuestro servidor interno.
Para probar los parches antes de llevarlos a producción, tenemos un stable
repositorio habilitado de forma predeterminada. Cualquier actualización se pone en el -latest
repositorio. Cuando -latest
parcheamos servidores, usaremos ese -repo para construir una nueva línea de base y probarla en algunos servidores. Una vez probados, hacemos de esa línea base la nueva stable
. Los -latest
repos están deshabilitados por defecto.
Uno de los repositorios se usa para algunos paquetes que recuperamos de epel, rpmforge, etc. Tenemos un script que sincroniza solo los paquetes que queremos con cualquier dependencia que necesiten. El repositorio se reconstruye todas las noches con createrepo después de sincronizar los paquetes. Como estos paquetes no han sido probados, terminan en el int-optional-latest
repositorio, que generalmente está deshabilitado. Si un servidor necesita un paquete de ese repositorio, lo instalaremos usando enable-repo=int-optional-latest
.
Hoy un compañero de trabajo estaba tratando de instalar perl-Excel-Writer-XLSX en un servidor. El servidor no encontró el paquete. Intenté reconstruir el repositorio usando createrepo y agarré los archivos de repositorio para asegurarme de que el archivo estaba allí. Era. También verifiqué que el archivo existía dentro del repositorio usando
repoquery -q --repoid=int-optional-latest -l perl-Excel-Writer-XLSX
También borré el caché de metadatos en el lado del cliente, usando
sudo yum clean expire-cache
A pesar de esto, el cliente siguió afirmando que el paquete no existía en el servidor.
No creo que el problema esté en el lado del servidor, porque cuando intenté hacer una búsqueda desde otra máquina, encontró el paquete. Verifiqué que los archivos de repositorio eran correctos y que el nombre se yum.example.com
resolvió en la misma dirección IP en ambos servidores; sin embargo, uno de ellos puede encontrar el paquete y el otro no.