Table of Contents
Cómo configurar el repositorio local HTTP Yum en CentOS 7
Un repositorio de software (“ repositorio. en resumen) es una ubicación de almacenamiento de archivos central para guardar y mantener paquetes de software, desde donde los usuarios pueden recuperar paquetes e instalarlos en sus computadoras.
Los repositorios a menudo se almacenan en servidores en una red, por ejemplo, una Internet, a la que pueden acceder varios usuarios. Sin embargo, puede crear y configurar un repositorio local en su computadora y acceder a él como un solo usuario o permitir el acceso a otras máquinas en su LAN. ( Red de área local. .
Una ventaja de configurar un repositorio local es que no necesita una conexión a Internet para instalar paquetes de software.
YUM (Yellowdog Updater Modified) es una herramienta de administración de paquetes ampliamente utilizada para RPM. ( RedHat Package Manager. basado en sistemas Linux, que facilita la instalación de software en Red Hat/CentOS. Linux.
En este artículo, explicaremos cómo configurar un repositorio local YUM. a través del servidor web HTTP. ( Nginx. en CentOS 7 VPS. y también le mostrará cómo encontrar e instalar paquetes de software en máquinas cliente CentOS 7.
Nuestro entorno de prueba Yum HTTP Repository Server. CentOS 7 [192.168.0.100] Cliente Máquina. CentOS 7 [192.168.0.101]
Paso 1: Instale el servidor web Nginx
freestar.config.enabled_slots.push
1.. Primero comience instalando el servidor HTTP Nginx desde el repositorio EPEL usando el administrador de paquetes YUM de la siguiente manera.
# yum install epel-release # yum install nginx
2.. Una vez que haya instalado el servidor web Nginx, puede iniciarlo por primera vez y habilitarlo para que se inicie automáticamente al arrancar el sistema.
# systemctl start nginx # systemctl enable nginx # systemctl status nginx
3.. A continuación, debe abrir los puertos 80. y 443. para permitir el tráfico web al servicio Nginx, actualice las reglas del firewall del sistema para permitir paquetes entrantes en HTTP. y HTTPS. usando los siguientes comandos.
# firewall-cmd–zone = public–permanent–add-service = http # firewall-cmd–zone = public–perm anent–add-service = https # firewall-cmd–reload
4.. Ahora puede confirmar que su servidor Nginx está funcionando, usando la siguiente URL; si ve la página web predeterminada de Nginx, todo está bien.
http://SERVER_DOMAIN_NAME_OR_IP
Nginx predeterminado Página
Paso 2: Cree un repositorio local de Yum
5.. En este paso, debe instalar los paquetes necesarios para crear, configurar y administrar su repositorio local.
# yum install createrepo yum-utils
6.. A continuación, cree los directorios necesarios (repositorios yum) que almacenarán los paquetes y cualquier información relacionada.
# mkdir-p/var/www/html/repos/base, centosplus, extras, updates
7.. Luego use la herramienta reposync. para sincronizar CentOS YUM. repositorios a los directorios locales como se muestra.
# reposync-g-l-d-m–repoid = base–nueva-solamente–download-metadata–download_path =/var/www/html/repos/# reposync-g-l-d-m–repoid = centosplus–nuevo-solo–download-metadata–download_path =/var/www/html/repos/# reposync-g-l-d-m–repoid = extras-solo el más nuevo–download-metadata–download_path =/var/www/html/repos/# reposync-g-l-d-m–repoid = actualizaciones–nueva-solamente–download-metadata–download_path =/var/www/html/repos/Salida de muestra Complementos cargados: rapidmirror, langpacks Cargando velocidades de espejo desde el archivo host en caché * base: mirrors.fibergrid.in * epel: mirror.xeonbd.com * extras: mirrors.fibergrid.in * actualizaciones: mirrors.fibergrid .in base/7/x86_64/group | 891 kB 00:00:02 No hay metadatos de Presto disponibles para la base (1/9911): 389-ds-base-snmp-1.3.7.5-18.el7.x86_64.rpm | 163 kB 00:00:02 (2/9911): 389-ds-base-devel-1.3.7.5-18.el7.x86_64.rpm | 267 kB 00:00:02 (3/9911): ElectricFence-2.2.2-39.el7.i686.rpm | 35 kB 00:00:00 (4/9911): ElectricFence-2.2.2-39.el7.x86_64.rpm | 35 kB 00:00:00 (5/9911): 389-ds-base-libs-1.3.7.5-18.el7.x86_64.rpm | 695 kB 00:00:04 (6/9911): GConf2-devel-3.2.6-8.el7.i686.rpm | 110 kB 00:00:00 (7/9911): GConf2-devel-3.2.6-8.el7.x86_64.rpm | 110 kB 00:00:00 (8/9911): GConf2-3.2.6-8.el7.i686.rpm | 1.0 MB 00:00:06
En los comandos anteriores, la opción:
- -g-habilita la eliminación de paquetes que fallan en la verificación de firmas GPG después de la descarga.
- -l: habilita la compatibilidad con el complemento yum.
- -d: habilita la eliminación de paquetes locales que ya no están presentes en el repositorio.
- -m: habilita la descarga de comps.xml. archivos.
- –repoid-especifica el ID del repositorio.
- –newest-only-indica a reposync que solo extraiga la última versión de cada paquete en los repositorios.
- –download-metadata: permite descargar todos los metadatos no predeterminados.
- –download_path: especifica la ruta para descargar paquetes.
8.. Luego, verifique el contenido de sus directorios locales para asegurarse de que todos los paquetes se hayan sincronizado localmente.
# ls-l/var/www/html/repos/base/# ls-l/var/www/html/repos/base/Packages/# ls-l/var/www/html/repos/centosplus/# ls-l/var/www/html/repos/centosplus/Packages/# ls-l/var/www/h tml/repos/extras/# ls-l/var/www/html/repos/extras/Packages/# ls-l/var/www/html/repos/updates/# ls-l/var/www/html/repos/updates/Packages/
9.. Ahora cree un nuevo repodata para los repositorios locales ejecutando los siguientes comandos, donde la bandera-g se usa para actualizar la información del grupo de paquetes usando el .xml especificado archivo.
# createrepo-g comps.xml/var/www/html/repos/base/# createrepo-g comps.xml/var/www/html/repos/centosplus/# createrepo-g comps.xml/var/www/html/repos/extras/# createrepo-g comps.xml/var/www/html/repos/updates/
10.. Para habilitar la visualización de repositorios y paquetes en ellos, a través de un navegador web, cree un bloque de servidor Nginx que apunte a la raíz de sus repositorios como se muestra.
# vim/etc/nginx/conf.d/repos.conf
Agregue la siguiente configuración del archivo repos.conf.
servidor listen 80; nombre_servidor repos.test.lab; #cambie test.lab a su raíz de dominio real/var/www/html/repos; ubicación/index index.php index.html index.htm; autoindex activado; # habilitar lista de índice de directorio
Guarde el archivo y ciérrelo.
11.. Luego reinicie su servidor Nginx y vea los repositorios desde un navegador web usando lo siguiente URL.
http://repos.test.lab
Ver ubicación l Repositorios Yum
Paso 3: Cree un trabajo cron para sincronizar y crear repositorios
12.. A continuación, agregue un trabajo cron que sincronizará automáticamente sus repositorios locales con los repositorios oficiales. Repositorios de CentOS para obtener las actualizaciones y los parches de seguridad.
# vim/etc/cron.daily/update-localrepos
Agregue estos comandos en el script.
#!/Bin/bash ## especificar todos repositorios locales en una sola variable LOCAL_REPOS = ”actualizaciones de extras de centosplus base” ## un bucle para actualizar los repositorios uno a la vez para REPO en $ LOCAL_REPOS; do reposync-g-l-d-m–repoid = $ REPO–nuevo-solo–download-metadata–download_path =/var/www/html/repos/createrepo-g comps.xml/var/www/html/repos/$ REPO/done
Guarde el script, ciérrelo y establezca los permisos correspondientes.
# chmod 755/etc/cron.daily/update-localrepos
Paso 4: Configuración local Repositorio de Yum en máquinas cliente
13.. Ahora en sus máquinas cliente CentOS. agregue sus repositorios locales a la configuración de YUM.
# vim/etc/yum.repos.d/local-repos.repo
Copie y pegue la siguiente configuración en el archivo local-repos.repo. (haga los cambios necesarios).
[ local-base] name = CentOS Base baseurl = http://repos.test.lab/base/gpgcheck = 0 enabled = 1 [local-centosplus] name = CentOS CentOSPlus baseurl = http://repos.test.lab/centosplus/gpgcheck = 0 enabled = 1 [local-extras] name = CentOS Extras baseurl = http://repos.test.lab/extras/gpgcheck = 0 enabled = 1 [local-updates] name = CentOS Updates baseurl = http://repos.test.lab/updates/gpgcheck = 0 enabled = 1
Guarde el archivo y comience a usar sus espejos YUM locales.
14.. A continuación, ejecute el siguiente comando para ver sus repositorios locales en la lista de repositorios de YUM disponibles, en las máquinas cliente.
# yum repolist O # yum repolist all
Ver repositorios locales de Yum en el cliente
¡Eso es todo! En este artículo, hemos explicado cómo configurar un repositorio YUM local en CentOS 7. Esperamos que esta guía le haya resultado útil. Si tiene alguna pregunta o cualquier otro pensamiento para compartir, utilice el formulario de comentarios a continuación.