SECCIÓN 6: Gestión de paquetes y software
Examen: 🧩 101-500
Objetivos cubiertos:
- 102.1 Diseño del sistema de paquetes
- 102.2 Instalar, actualizar y eliminar paquetes de software
- 102.3 Trabajar con bibliotecas compartidas
- 102.4 Uso de herramientas de desarrollo de Debian y RPM
Sistemas de paquetes:
- Debian:
dpkg, apt-get, apt-cache, apt. - Red Hat:
rpm, yum, dnf. - Archivos de repositorios (
/etc/apt/sources.list, /etc/yum.repos.d/). - Verificación de firmas GPG y dependencias.
-
Instalación desde código fuente (
./configure, make, make install).
- Limpieza de paquetes y gestión de dependencias (
apt autoremove, dnf clean).
Gestión de bibliotecas compartidas:
- Concepto de biblioteca dinámica (
.so) y estática (.a). - Comando
ldd para listar dependencias de binarios. -
Configuración del cargador dinámico:
/etc/ld.so.conf y /etc/ld.so.conf.d/*.conf - Actualización de la caché con
ldconfig - Variables relacionadas:
LD_LIBRARY_PATH, LD_PRELOAD
-
Ejemplo práctico: configuración de rutas de bibliotecas:
- Crear
/etc/ld.so.conf.d/custom.conf y añadir una ruta personalizada - Ejecutar
ldconfig para actualizar la caché - Verificar dependencias con
ldd /bin/bash - Ejemplo de uso de
LD_LIBRARY_PATH temporalmente
Creación y empaquetado de software:
-
Construcción de paquetes:
-
En Debian:
dpkg-deb, dpkg-buildpackage, estructura DEBIAN/control.
- En RPM:
rpmbuild, estructura del archivo .spec.
- Inspección de contenido de paquetes (
dpkg -c, rpm -qlp). - Variables de entorno y macros de compilación (
CC, CFLAGS). - Uso de
make, configure y Makefile.