UNIX/Linux explicado: cómo funcionan, cómo se administran y por qué siguen dominando los servidores

UNIX/Linux explicado: cómo funcionan, cómo se administran y por qué siguen dominando los servidores

Hay tecnologías que hacen mucho ruido y otras que, simplemente, funcionan. UNIX y Linux pertenecen a esta segunda categoría. No suelen aparecer en los titulares con la misma frecuencia que la inteligencia artificial, los nuevos móviles o las plataformas cloud, pero están en la base de buena parte de Internet, de los servidores corporativos, de los sistemas embebidos y de muchas infraestructuras críticas.

UNIX/Linux es una de esas piezas que conviene entender bien aunque no se trabaje todos los días pegado a una terminal. Porque detrás de esa pantalla negra con comandos hay una filosofía de diseño muy potente: simplicidad, modularidad, estabilidad y control. En Tecnoic ya hemos hablado de qué es un sistema operativo y cómo ha evolucionado, y también de esos sistemas operativos menos visibles que mueven buena parte del mundo digital. Hoy toca bajar un nivel más y centrarnos en UNIX/Linux.

De UNIX a Linux: una herencia que sigue viva

UNIX nació a finales de los años sesenta y principios de los setenta como un sistema operativo multiusuario y multitarea. Su importancia no está solo en el sistema concreto, sino en el modelo mental que dejó: todo se trata como un archivo, las herramientas pequeñas se combinan entre sí, la línea de comandos es una interfaz de administración real y el sistema debe ser portable, robusto y relativamente sencillo de extender.

Linux, por su parte, no es UNIX en sentido estricto, sino un sistema de tipo UNIX. Técnicamente, Linux es el kernel, el núcleo del sistema operativo. Lo que usamos normalmente como “Linux” es una distribución GNU/Linux: kernel Linux, utilidades de sistema, intérprete de comandos, gestor de paquetes, bibliotecas, servicios, escritorio opcional y herramientas de administración.

Ahí entran distribuciones como Debian, Ubuntu Server, Red Hat Enterprise Linux, AlmaLinux, Rocky Linux, SUSE o Arch. Cada una tiene su enfoque: estabilidad, soporte empresarial, facilidad de uso, actualización continua o control absoluto. Pero todas comparten una base común que hace que aprender Linux sea una inversión bastante rentable.

El kernel: el corazón que no se ve

El kernel es la parte más crítica del sistema. Se encarga de gestionar la CPU, la memoria, los procesos, los dispositivos, los sistemas de archivos y las llamadas al sistema que utilizan los programas. Dicho de forma sencilla: cuando una aplicación necesita leer un fichero, abrir una conexión de red o reservar memoria, no habla directamente con el hardware; pasa por el kernel.

En UNIX/Linux hay una separación clara entre espacio de usuario y espacio de kernel. Las aplicaciones normales se ejecutan en modo usuario, con privilegios limitados. El kernel opera en modo privilegiado. Esta frontera es fundamental para la estabilidad y la seguridad: si un programa falla, no debería arrastrar consigo todo el sistema.

Además, Linux destaca por su capacidad de adaptación. Puede ejecutarse en servidores enormes, máquinas virtuales, contenedores, routers, televisores, móviles Android, placas embebidas o supercomputadores. Su diseño modular permite cargar controladores, configurar servicios y ajustar el sistema a escenarios muy distintos.

Usuarios, permisos y sistema de archivos

Uno de los fundamentos que más conviene dominar es el modelo de usuarios y permisos. En Linux todo gira alrededor de usuarios, grupos y privilegios. Cada archivo tiene un propietario, un grupo asociado y permisos de lectura, escritura y ejecución. El famoso esquema rwx no es un adorno académico: es una barrera básica contra errores, accesos indebidos y desastres operativos.

El superusuario root tiene control total sobre el sistema. Por eso, en administración moderna se evita trabajar directamente como root salvo que sea imprescindible. Lo habitual es utilizar sudo, que permite elevar privilegios de forma controlada y auditable.

El sistema de archivos también tiene una estructura característica. /etc guarda configuración, /var contiene datos variables como logs o colas, /home almacena directorios de usuarios, /usr contiene programas y bibliotecas, /tmp sirve para temporales y /bin, /sbin o /lib alojan componentes esenciales. Esta jerarquía puede intimidar al principio, pero con práctica se vuelve muy lógica.

Y aquí aparece una idea clave: en UNIX/Linux configurar muchas veces significa editar texto. Archivos planos, legibles, versionables y automatizables. Puede parecer menos cómodo que una interfaz gráfica, pero ofrece una potencia enorme.

Instalación: particiones, paquetes y servicios básicos

Instalar Linux no consiste solo en pulsar “siguiente”. En un entorno serio conviene decidir bien la distribución, el esquema de particionado, el sistema de archivos, la política de usuarios, la configuración de red y los servicios iniciales.

En servidores, lo normal es elegir instalaciones mínimas. Menos componentes significa menos superficie de ataque, menos consumo y menos mantenimiento. Después se añaden solo los paquetes necesarios mediante gestores como apt, dnf, yum, zypper o pacman, según la distribución.

El particionado merece atención. No es raro separar /, /home, /var o incluso /boot, especialmente en sistemas donde los logs, bases de datos o aplicaciones pueden crecer mucho. También aparecen tecnologías como LVM, que permite gestionar volúmenes lógicos con más flexibilidad que las particiones tradicionales.

Una vez instalado el sistema, toca revisar red, resolución DNS, repositorios, actualizaciones, sincronización horaria, acceso SSH y endurecimiento básico. En producción, dejar un servidor “recién instalado” sin revisar es una mala práctica. Linux da mucho control, pero también exige responsabilidad.

Administración diaria: procesos, logs y automatización

Administrar Linux es observar, diagnosticar y actuar. Para procesos, comandos como ps, top, htop, systemctl o journalctl son herramientas de cabecera. Para disco, df, du, lsblk o mount. Para red, ip, ss, ping, traceroute, dig o tcpdump. No hace falta sabérselos todos de memoria desde el primer día, pero sí entender qué problema resuelve cada uno.

El sistema de servicios moderno suele girar alrededor de systemd. Con systemctl se arrancan, paran, habilitan o revisan servicios. Con journalctl se consultan logs estructurados. Esto ha cambiado mucho la administración respecto a modelos anteriores basados en scripts clásicos de init.

La automatización es otro pilar. Shell scripting, tareas programadas con cron, despliegues con Ansible, contenedores con Docker, orquestación con Kubernetes o pipelines CI/CD: muchas capas modernas descansan sobre Linux. De hecho, cuando hablamos de cloud, DevOps o infraestructura como código, casi siempre hay una base Linux debajo.

Por eso Linux no es solo “un sistema operativo para servidores”. Es un lenguaje operativo común entre administradores, desarrolladores, equipos de seguridad y arquitectos de sistemas.

Seguridad y gestión: menos magia, más control

En seguridad, UNIX/Linux parte de una idea sobria: privilegios mínimos, separación de usuarios, trazabilidad y configuración explícita. A partir de ahí se construyen muchas capas: firewall con nftables o iptables, control de acceso con SELinux o AppArmor, actualizaciones de seguridad, gestión de claves SSH, auditoría de logs, copias de seguridad y monitorización.

También hay que gestionar el ciclo de vida. Un servidor no termina cuando se instala: hay que parchearlo, revisar su rendimiento, controlar usuarios, comprobar certificados, vigilar servicios expuestos y documentar cambios. La administración real no es heroica; es metódica.

En entornos empresariales, además, entran herramientas de inventario, monitorización, hardening, copias, alta disponibilidad y cumplimiento normativo. Linux encaja muy bien ahí porque permite automatizar casi todo. Y lo que se puede automatizar, se puede repetir, auditar y mejorar.

Por qué UNIX/Linux sigue dominando los servidores

UNIX/Linux domina porque resuelve muy bien problemas reales: estabilidad, eficiencia, escalabilidad, seguridad y coste. No siempre es lo más fácil para un usuario novel, pero en servidores la prioridad no es que todo parezca sencillo, sino que sea fiable, controlable y mantenible.

También influye su ecosistema. Servidores web, bases de datos, balanceadores, herramientas de red, plataformas cloud, contenedores y soluciones de observabilidad funcionan de forma excelente sobre Linux. En el mundo del software libre y el código abierto, del que ya hablé en este artículo de Tecnoic, Linux es una pieza central.

Mi conclusión es clara: aprender UNIX/Linux no es aprender comandos sueltos. Es aprender una forma de entender los sistemas. Una forma menos dependiente de asistentes visuales y más basada en comprender procesos, permisos, ficheros, servicios y redes.

Y esa es precisamente su fuerza. UNIX/Linux no necesita llamar la atención para ser imprescindible. Está ahí, debajo de muchas cosas, haciendo que funcionen.

¿Qué opinas? ¿Crees que Linux sigue siendo una competencia básica para cualquier perfil técnico, o su complejidad lo aleja demasiado del usuario medio? Te leo en comentarios: aquí hay debate interesante.