Algunos de ustedes pueden compartir el siguiente caso de uso:necesita (o desea) duplicar repositorios para proporcionar paquetes para los hosts en su LAN que no están conectados a Internet y, por lo tanto, no pueden acceder directamente a los repositorios ascendentes. En este artículo, explico cómo realizar esta tarea fácilmente usando reposync
, que se envía con su suscripción a Red Hat Enterprise Linux (RHEL) 7 o Red Hat Enterprise Linux 8.
Antes de comenzar, me gustaría señalar los requisitos importantes. Necesita una suscripción válida para cada repositorio que desee duplicar porque su servidor espejo solo puede sincronizar los repositorios que están incluidos en su propia suscripción. Todos los otros hosts que usarán este espejo también deben tener una suscripción válida.
Si tiene alguna pregunta sobre las suscripciones, consulte las siguientes URL:las preguntas frecuentes sobre el modelo de suscripción de Red Hat y la descripción general del servicio de suscripción de Red Hat.
Configuración de repositorios duplicados para Red Hat Enterprise Linux 7
Para comenzar, deberá elegir el servidor web que servirá los repositorios reflejados en su LAN. Luego, si está utilizando Red Hat Enterprise Linux 7, entonces para crear un repositorio básico debe comenzar instalando createrepo
. No se preocupe, esta herramienta también está incluida en su suscripción. Instálelo en su servidor web con lo siguiente:
# yum install yum-utils createrepo
A continuación, necesita la identificación del repositorio para el repositorio que desea sincronizar. Ejecute yum repolist
y encontrará el ID del repositorio en la primera columna de la salida:
$ yum repolist
Loaded plugins: langpacks, nvidia, product-id, search-disabled-repos, subscription-
: manager
repo id repo name status
rhel-7-server-optional-rpms/7Server/x86_64 Red Hat Enterprise Linux 7 Server - O 19.490
rhel-7-server-rpms/7Server/x86_64 Red Hat Enterprise Linux 7 Server (RP 26.766
virtualbox/7Server/x86_64 Oracle Linux / RHEL / CentOS-7Server 77
En este caso, rhel-7-server-rpms
es el ID del repositorio estándar de Red Hat Enterprise Linux 7. Puede obtener una lista completa de repositorios a los que tiene acceso su suscripción con el comando:
$ sudo subscription-manager repos --list
Allí también encontrarás el ID del repositorio.
Por ejemplo, para sincronizar los paquetes desde el rhel-7-server-rpms
repo y cree un repositorio local básico, ejecute los siguientes comandos:
# reposync --gpgcheck -l --repoid=rhel-7-server-rpms --download_path=/var/www/html # Sync RPMS
# cd /var/www/html/rhel-7-server-rpms
# createrepo -v /var/www/html/rhel-7-server-rpms # Create the repo
Configuración de repositorios duplicados para Red Hat Enterprise Linux 8
Para Red Hat Enterprise Linux 8, este proceso es aún más sencillo. Solo necesitas el reposync
comando:
# reposync -p <download-path> --download-metadata --repo=<repo id>
El createrepo
el comando ya no es necesario porque reposync
descarga todo, incluidos los repodata
.
Compartir el repositorio local
Una vez que se recuperan los paquetes y se crea el repositorio local usando cualquiera de estos métodos, el repositorio local se puede distribuir entre los sistemas fuera de línea/desconectados usando un servidor web simple, FTP o NFS. Los siguientes artículos de la base de conocimiento brindan la información necesaria con respecto a su elección de distribución:
- Apache (HTTP)
- Apache (HTTPS)
- FTP
- Compartir NFS
Para una configuración más sofisticada que la descrita en este artículo, considere usar Red Hat Satellite.
[ ¿Quiere probar Red Hat Enterprise Linux? Descárgalo ahora gratis. ]