Tema 2 / 10
LPIC-1 Examen 102

Instalación de Linux y gestión de paquetes

Domina el diseño de particiones, gestores de arranque, librerías compartidas y gestión de paquetes.

102.1 Diseño del esquema de particionado

Puntos de montaje

Para acceder a un sistema de archivos, este debe estar montado en un directorio. Históricamente se usaba /mnt, hoy /media es más común para montajes automáticos (ej. USB en /media/USER/ETIQUETA). Para montajes manuales, /mnt sigue siendo la práctica estándar.

Manteniendo las cosas separadas

/boot
Arranque
Contiene kernel y GRUB. Recomendado separarlo. ~300MB.
/home
Usuarios
Facilita reinstalaciones sin perder datos de usuario.
/var
Logs y Caché
Evita que un bucle de logs llene el disco raíz y bloquee el sistema.

Partición de intercambio (SWAP)

La partición SWAP intercambia páginas de memoria RAM a disco. No se monta como un sistema de archivos normal. Se configura con mkswap y se activa con swapon.

  • Tamaño: Igual a RAM si ≤ 8GB; mínimo 4GB si > 8GB.
  • Linux también admite archivos de intercambio.

LVM (Logical Volume Manager)

Permite una gestión flexible del almacenamiento:

  • PV (Physical Volume): Partición o disco físico.
  • VG (Volume Group): Agrupación de PVs.
  • LV (Logical Volume): Particiones lógicas dentro de un VG donde se crean los sistemas de archivos.
  • Extents: Unidad mínima de almacenamiento en un VG.

102.2 Instalar un gestor de arranque

GRUB Legacy vs. GRUB 2

Característica GRUB Legacy GRUB 2
Configuración /boot/grub/menu.lst /etc/default/grub (y scripts en /etc/grub.d)
Estado Obsoleto (finalizado en 2005) Estándar actual

Ubicación del cargador

En sistemas MBR, el código de arranque reside en los primeros 512 bytes y carga el gestor secundario. En GPT (soluciona límites de 2TB y 4 particiones), en BIOS se usa una partición de arranque especial; en UEFI, GRUB se carga desde la partición EFI (ESP) usando archivos .efi.

La partición /boot

Contiene los archivos esenciales para el arranque (Kernel, initrd, configuración GRUB). Archivos clave:

  • vmlinuz-version: Núcleo comprimido.
  • initrd.img-version: Disco RAM inicial.
  • system.map-version: Tabla de símbolos.
  • /boot/grub/: Archivos del gestor (ej. grub.cfg, lvm.mod).

Configuración de GRUB 2

No editar /boot/grub/grub.cfg directamente. Editar /etc/default/grub y ejecutar update-grub o grub-mkconfig.

  • GRUB_DEFAULT: Entrada por defecto.
  • GRUB_TIMEOUT: Tiempo de espera.
  • GRUB_CMDLINE_LINUX: Parámetros del kernel (root, ro, etc).

Rescate: Si el sistema no arranca, usar un Live-CD, montar la partición en /mnt y ejecutar grub-install --boot-directory=/mnt/boot /dev/sda.

102.3 Gestión de librerías compartidas

Conceptos

  • Estáticas: Compiladas dentro del programa (sin dependencias externas, tamaño mayor).
  • Dinámicas (.so): Compartidas entre programas (menos tamaño, dependencias externas).

Nomenclatura y Rutas

Formato: libnombre.so.version.

Ubicaciones estándar: /lib, /lib64, /usr/lib, /usr/local/lib.

Configuración y Gestión

  • ld.so.conf y /etc/ld.so.conf.d/: Definen rutas de búsqueda.
  • ldconfig: Actualiza la caché de enlaces a librerías tras modificar la configuración.
  • LD_LIBRARY_PATH: Variable de entorno para añadir rutas temporales.
  • ldd programa: Muestra las librerías compartidas de las que depende un ejecutable.

102.4 Gestión de paquetes Debian

dpkg (Bajo nivel)

Gestiona archivos .deb individualmente. No resuelve dependencias automáticamente.

Acción Comando
Instalardpkg -i paquete.deb
Eliminardpkg -r paquete (config persiste)
Purgardpkg --purge paquete
Listardpkg -l

apt (Alto nivel)

Gestiona repositorios y resuelve dependencias.

Acción Comando
Actualizar índiceapt update
Actualizar sistemaapt upgrade
Instalarapt install paquete
Eliminarapt remove paquete
Limpiar cachéapt autoclean

Repositorios en /etc/apt/sources.list y /etc/apt/sources.list.d/.

102.5 Gestión de paquetes RPM y YUM

RPM (Bajo nivel)

Usado en Red Hat, Fedora, SUSE. No resuelve dependencias complejas.

Acción Comando
Instalar/Actualizarrpm -Uvh paquete.rpm
Eliminarrpm -e paquete
Listar instaladosrpm -qa
Info paqueterpm -qi paquete

YUM / DNF (Alto nivel)

YUM (Yellowdog Updater Modified) y su sucesor DNF manejan repositorios y dependencias.

Acción Comando
Instalaryum/dnf install paquete
Actualizar sistemayum/dnf update
Eliminaryum/dnf remove paquete
Buscaryum/dnf search paquete

Zypper (SUSE)

Herramienta equivalente para openSUSE/SLES. Comandos: zypper install, zypper update, zypper remove.

Repositorios en /etc/yum.repos.d/ (YUM/DNF) o gestionados con zypper addrepo.

102.6 Linux como sistema virtualizado

Conceptos de Virtualización

Permite ejecutar múltiples sistemas operativos (máquinas virtuales o "guests") sobre un único hardware físico ("host") mediante un hipervisor.

  • Hipervisores Tipo 1 (Bare Metal): Corren directamente sobre el hardware (ej. Xen).
  • Hipervisores Tipo 2 (Hospedados): Corren como una aplicación sobre un SO anfitrión (ej. KVM - integrado en kernel Linux, VirtualBox).

Tipos de Máquinas Virtuales

  • Totalmente virtualizadas: El sistema operativo invitado ignora que es virtual. Requiere soporte de hardware (Intel VT-x / AMD-V).
  • Paravirtualizadas: El SO invitado sabe que es virtual y usa controladores específicos para mejor rendimiento.
  • Híbridas: Combinación de ambos (hardware virtualizado con controladores paravirtualizados).

Plantillas y Nube

Las plantillas son imágenes preconfiguradas para despliegues rápidos. Es crítico verificar el D-Bus Machine ID único tras clonar.

En entornos de Nube (IaaS) como AWS o Azure, gestionamos instancias, almacenamiento y redes. El acceso es vía SSH y la configuración inicial se automatiza a menudo con cloud-init.