Cómo configurar un repositorio de red para instalar o actualizar paquetes - Parte 11


Instalar, actualizar y eliminar (cuando sea necesario) programas instalados son responsabilidades clave en la vida diaria de un administrador de sistemas. Cuando una máquina está conectada a Internet, estas tareas se pueden realizar fácilmente usando un sistema de administración de paquetes como aptitude (o apt-get ), yum o zypper , según la distribución elegida, como se explica en la Parte 9: Gestión de paquetes de Linux de la serie LFCE ( Linux Foundation Certified Engineer ). También puede descargar archivos .deb o .rpm independientes e instalarlos con dpkg o rpm , respectivamente.

Sin embargo, cuando una máquina no tiene acceso a la World Wide Web, se necesitan otros métodos. ¿Por qué alguien querría hacer eso? Las razones van desde ahorrar ancho de banda de Internet (evitando así varias conexiones simultáneas al exterior) hasta asegurar paquetes compilados de origen local, e incluso la posibilidad de proporcionar paquetes que por razones legales (por ejemplo, software que está restringido en algunos países) no pueden ser incluido en repositorios oficiales.

Ahí es precisamente donde entran en juego los repositorios de red, que es el tema central de este artículo.

Network Repository Server:	CentOS 7 [enp0s3: 192.168.0.17] - dev1
Client Machine:			CentOS 6.6 [eth0: 192.168.0.18] - dev2

Configuración de un servidor de repositorio de red en CentOS 7

Como primer paso, manejaremos la instalación y configuración de una caja CentOS 7 como servidor de repositorio [dirección IP 192.168.0.17 ] y una máquina CentOS 6.6 como cliente. La configuración de openSUSE es casi idéntica.

Para CentOS 7, siga los artículos a continuación que explican las instrucciones paso a paso de la instalación de CentOS 7 y cómo configurar una dirección IP estática.

  1. Installation of CentOS 7.0 with Screenshots
  2. How to Configure Network Static IP Address on CentOS 7

En cuanto a Ubuntu, hay un gran artículo en este sitio que explica, paso a paso, cómo configurar su propio repositorio privado.

  1. Setup Local Repositories with ‘apt-mirror’ in Ubuntu

Nuestra primera elección será la forma en que los clientes accederán al servidor del repositorio: FTP y HTTP son los más utilizados. Elegiremos lo último ya que la instalación de Apache se cubrió en la Parte 1 - Instalación de Apache de esta serie LFCE. Esto también nos permitirá mostrar la lista de paquetes usando un navegador web.

A continuación, necesitamos crear directorios para almacenar los paquetes .rpm . Crearemos subdirectorios dentro de /var/www/html/repos en consecuencia. Para nuestra conveniencia, es posible que también deseemos crear otros subdirectorios para alojar paquetes para diferentes versiones de cada distribución (por supuesto, aún podemos agregar tantos directorios como sea necesario más adelante) e incluso arquitecturas diferentes.

Una cosa importante a tener en cuenta al configurar su propio repositorio es que necesitará una cantidad considerable de espacio disponible en disco ( ~ 20 GB ). Si no lo hace, cambie el tamaño del sistema de archivos en el que planea almacenar el contenido del repositorio o, mejor aún, agregue un dispositivo de almacenamiento dedicado adicional para alojar el repositorio.

Dicho esto, comenzaremos por crear los directorios que necesitaremos para alojar el repositorio:

# mkdir -p /var/www/html/repos/centos/6/6

Después de haber creado la estructura de directorio para nuestro servidor de repositorio, inicializaremos en /var/www/html/repos/centos/6/6 la base de datos que mantiene un seguimiento de los paquetes y sus correspondientes dependencias usando createrepo .

Instale createrepo si aún no lo ha hecho:

# yum update && yum install createrepo

Luego inicialice la base de datos,

# createrepo /var/www/html/repos/centos/6/6

Suponiendo que el servidor del repositorio tiene acceso a Internet, sacaremos un repositorio en línea para obtener las últimas actualizaciones de paquetes. Si ese no es el caso, aún puede copiar todo el contenido del directorio de paquetes desde un DVD de instalación de CentOS 6.6 .

En este tutorial asumiremos el primer caso. Para optimizar nuestra velocidad de descarga, elegiremos un espejo CentOS 6.6 de una ubicación cercana a nosotros. Ve al espejo de descargas de CentOS y elige el que esté más cerca de tu ubicación (Argentina en mi caso):

Luego, navegue hasta el directorio os dentro del enlace resaltado y luego elija la arquitectura apropiada. Una vez allí, copie el enlace en la barra de direcciones y descargue el contenido en el directorio dedicado en el servidor del repositorio:

# rsync -avz rsync://centos.ar.host-engine.com/6.6/os/x86_64/ /var/www/html/repos/centos/6/6/ 

En caso de que el repositorio elegido resulte estar fuera de línea por algún motivo, regrese y elija uno diferente. No es gran cosa.

Ahora es el momento en el que puede que desee relajarse y tal vez ver un episodio de su programa de televisión favorito, porque la duplicación del repositorio en línea puede llevar bastante tiempo.

Una vez que se haya completado la descarga, puede verificar el uso del espacio en disco con:

# du -sch /var/www/html/repos/centos/6/6/*

Finalmente, actualice la base de datos del repositorio.

# createrepo --update /var/www/html/repos/centos/6/6

También puede abrir su navegador web y navegar al directorio repos/centos/6/6 para verificar que puede ver el contenido:

Y ya está listo para comenzar, ahora es el momento de configurar el cliente.