Cómo Elegir la Distribución Linux Ideal para Ti
Linux es un sistema operativo creado en 1991 por un estudiante de computación finlandés, que quería conectarse al mainframe Unix de la Universidad utilizando su PC 386.
En esa época la única portabilidad del sistema Unix para PCs era el sistema operativo educativo llamado MINIX.
MINIX era un sistema operativo mínimo basado en UNIX, creado por el reconocido profesor de computación Andrew S. Tanenbaum, con el propósito de enseñar el funcionamiento de sistemas operativos. La licencia de MINIX en esa época limitaba su uso para cuestiones educativas, además de otras limitaciones.
Al principio Torvalds se basó en MINIX para escribir su propio Kernel y aplicaciones básicas, aprovechando mucho de MINIX. Más tarde, todo el código fue reemplazado por componentes del Proyecto GNU.
Torvalds quería que su creación se llamara "Freax", un derivado de "Free" (Libre), "Freak" (Aberración) y la "X" de Unix.
Desde el inicio, Linux fue una sensación entre los programadores y apasionados por tecnología, siendo distribuido a través de los canales de FTP, foros de discusión y mejorado por diversos entusiastas.
Algunos meses después del lanzamiento público del "Freax", Ari Lemmke, colega de Torvalds, renombró el proyecto a "Linux", con el consentimiento de Linus.
Hoy el sistema operativo creado por Torvalds es utilizado ampliamente en toda la infraestructura de Internet, en todos los supercomputadores, en casi todos los celulares a través de su versión embebida llamada Android.
Esto se debe en gran parte a la licencia de software adoptada, GNU GPL, que obliga a la libre distribución del código fuente, permite su mejora, y obliga a la libre distribución del nuevo código mejorado.
Distribuciones Linux
Por tratarse de un sistema operativo de código abierto, Linux puede ser alterado y personalizado por cualquier persona o empresa.
Con esto, en los años 90 surgieron diversos grupos, amateurs y empresariales con fines comerciales, que personalizaron Linux, creando sus propias distribuciones.
Una distribución Linux consiste en:
- Núcleo del sistema operativo, llamado Kernel;
- Utilitarios del proyecto GNU;
- Gestor de servicios: System V o Systemd;
- Entorno gráfico: KDE, Gnome, XFCE, etc;
- Gestor de software.

Cada distribución Linux puede alterar cualquiera de estos componentes, personalizando al gusto del grupo de usuarios, o para un propósito específico, o aplicación bien definida.
Es por eso que existen distribuciones orientadas a usuario final para uso en Desktop, como Fedora, Ubuntu y OpenSuSE, que utilizan herramientas amigables, entorno gráfico robusto, y las distribuciones orientadas a servidores, con propósito de uso eficiente de recursos computacionales, como Red Hat, Fedora para Servidores, SuSe y CentOS.
Existe también la posibilidad de clasificar las distribuciones por la familia de distribución a la cual pertenece. Básicamente existen dos grandes familias: Debian y Red Hat. Precisamente por ser las distribuciones estables más antiguas, casi todas las demás distribuciones existentes en 2020 se basan en una de ellas.
Lanzado en 1993 por Ian Murdock, Debian es una distribución Linux que contó con miles de voluntarios, que compartieron los ideales de Richard Stallman, en cuanto a la libertad de los usuarios para usar, distribuir y mejorar el software.
En 2004, Mark Shuttleworth y su equipo, con el objetivo de hacer que Linux sea lo más amigable posible para los usuarios Desktop, mejoró Debian, dejando la curva de aprendizaje para nuevos usuarios lo más pequeña posible, y de ese trabajo creó la distribución Ubuntu.
En 1994, fue creada la primera empresa comercial totalmente basada en Linux, llamada Red Hat Linux. Específicamente orientada a aplicaciones empresariales, su Linux está orientado a uso en servidores, y su receita anual de más de mil millones de dólares se mantiene con contratos de soporte. En 2019 Red Hat fue comprada por IBM por 34 mil millones de dólares. Nada mal para una empresa de Software libre.
De Red Hat nacieron otras distribuciones como Fedora, orientado a Desktops y CentOS para servidores. Fedora es mantenido por Red Hat, y adopta nuevas tecnologías de forma muy rápida.
Otra empresa antigua de Linux es SUSE Linux, nacida en 1992 en Alemania, es una distribución conocida por su seriedad y también por su Linux comercial SUSE Enterprise para servidores. En 2004 la empresa creó OpenSUSE, una versión libre y gratuita de Linux, abierta para desarrolladores externos. SUSE Linux se hizo conocida por su herramienta de gestión de software llamada YaST, que facilita mucho la instalación de software, mucho antes de que Debian y Red Hat crearan herramientas similares (apt y yum).

Sistemas Empotrados
En cuestión de sistemas empotrados Linux también es campeón, precisamente por tener código abierto, que facilita adaptaciones y funcionar en un enorme abanico de arquitecturas de procesadores (x86, ARM, IA-64, m68k, MIPS, OpenRISC, PA-RISC, powerpc, s390, Sparc, etc).
Los sistemas empotrados son equipos creados para una funcionalidad específica, pero que en los bastidores son una computadora conectada a interfaces específicas. Se puede mencionar: multimedia automotriz, smartTVs, carros autónomos, routers de Internet, instrumentos médicos, automatización industrial, sistemas de navegación, etc.
Android
Sin duda, con 2.500 millones de dispositivos activos en 2019, Android es una forma de Linux empotrado muy exitosa. Creada en 2003, la empresa Android Inc. inicialmente comenzó a desarrollar un sistema para ser usado en cámaras digitales. En 2005 fue adquirida por el gigante Google y se transformó en el sistema operativo más utilizado en dispositivos móviles.
Android utiliza una versión modificada del Kernel de Linux, especialmente diseñada para funcionar con pequeñas pantallas táctiles. El proyecto de Android también cuenta con una serie de softwares propietarios de las aplicaciones de Google, como Calendario, Mapas, Mail y Navegador.
Raspberry Pi
Raspberry Pi es una computadora de bajo costo (US$25), del tamaño de una tarjeta de crédito, con WiFi, entradas USB, HDMI y sonido. Además posee diversas interfaces de entrada y salida, conocidas como GPIO, que pueden conectarse a otros dispositivos electrónicos, placas extensoras, sensores, servomotores, y otros hardwares. Los creadores de Raspberry personalizaron una versión de Debian para funcionar en Raspberry, llamada Raspbian.
El Raspberry es uno de los vectores del crecimiento de dispositivos embebidos, debido a su versatilidad y precio.
Linux en la Nube
El término computación en la nube fue acuñado para designar el consumo de recursos computacionales en data centers distribuidos, en nubes públicas o privadas. En 2017, se estima que el 90% de las aplicaciones en la nube se ejecuten en Linux.
Los grandes players de computación en la nube son: Amazon Web Services (AWS), Google Cloud Platform, Rackspace, Digital Ocean, y Microsoft Azure. Todos ellos ofrecen varias versiones de Linux en sus infraestructuras.
¿Cómo Elegir el Sistema Operativo?
La elección del sistema operativo de una computadora generalmente se hace en el momento de la compra del hardware, pues difícilmente una computadora de Escritorio se vende sin sistema operativo actualmente.
Es con esta premisa que desde hace más de 25 años Microsoft mantiene fuertemente el espacio de los sistemas operativos de computadoras de Escritorio compatibles con el IBM PC.
Apple también provee su sistema operativo UNIX propietario en sus computadoras, ya sean iMacs o MacBooks, llamado MacOS. En sus celulares, el gigante de Cupertino también ejecuta una variante de UNIX, llamada IOS.
Es en el mercado de servidores donde Linux floreció, y mantiene gran parte del ecosistema de Internet, y el 100% de los supercomputadores del mundo.
A pesar de que los fabricantes casi siempre envían el hardware con un sistema operativo preinstalado, es posible que el usuario cambie el sistema operativo por uno de su gusto y que cumpla con los requisitos necesarios.
Hace cinco años instalar Linux en un Notebook era algo experimental, y no siempre la distribución elegida era capaz de identificar y hacer uso correcto del hardware. Pero eso hoy cambió drásticamente. Es perfectamente posible instalar cualquier gran distribución Linux con éxito en prácticamente cualquier notebook, sin perjuicio alguno de mal funcionamiento.
Linux incluso ha sido una elección sabia para revivir viejos notebooks, con distribuciones ligeras, capaces de funcionar en hardware antiguo.
¿Cómo Elegir un Sistema Operativo Linux?
Linux básicamente puede dividirse en tres categorías: empresarial, consumidor y experimental.
Las distribuciones empresariales pueden ser gratuitas o comerciales, generalmente involucran un contrato de soporte, y proveen un sistema operativo robusto y testeado exhaustivamente, para aplicaciones y servicios empresariales.
Las distribuciones de esta categoría son:
Existen las distribuciones de consumidor final, orientadas a las computadoras de Escritorio, tales como:
- Ubuntu no LTS (Lubuntu, Xubuntu, Kubuntu, etc)
- OpenSUSE
- Fedora Workstation
- Elementary OS
- Zorin
- Linux Mint
- Deepin
Todavía existen las distribuciones experimentales, para hackers y usuarios avanzados:

Ciclo de Vida
Dependiendo de la aplicación que Linux ejecutará, es importante considerar el ciclo de vida de soporte del sistema operativo.
Después de que el ciclo de vida de una versión del software termina, los desarrolladores oficiales descartan cualquier soporte, actualización y corrección de errores en esa determinada versión. Las opciones del usuario entonces en este caso son: hacer las correcciones por cuenta propia, quedar a la deriva, o hacer el upgrade de versión.
El ciclo de vida de las distribuciones Linux puede variar de acuerdo con la categoría, y también del distribuidor. Las versiones empresariales suelen mantener el soporte activo de una versión por 10 años. Esto es necesario porque en las aplicaciones empresariales, los cambios se hacen de forma cautelosa y lenta. Es común hoy que el hardware pierda la utilidad antes del fin del ciclo de vida de un software.
Las distribuciones orientadas al consumidor mantienen el soporte a través de foros, generalmente en el sitio del fabricante, por un período de lanzamiento de tres versiones, que generalmente puede durar alrededor de 5 años.
Las versiones experimentales, generalmente también tienen soporte vía Wiki, que son construidos de forma activa, siempre en movimiento.
Además, es posible encontrar distribuciones que ponen disponibles para el público versiones beta de sus sistemas, que no han sido ampliamente probadas, y pueden contener varios bugs, y que no gozan del desempeño máximo por incluir rutinas de depuración. Después de innumerables pruebas y correcciones, el fabricante lanza una versión "stable" (estable).
Escritorios Gráficos
En su origen Linux era un simple shell en el estándar Unix, y fue así por mucho tiempo. Era algo hecho por programadores para programadores, entonces ser amigable y bonito no era un requisito importante.
Pero hace 5 años esa narrativa dio lugar a un sistema operativo bonito, con una variedad de entornos gráficos y aplicaciones de primera, culminando en una experiencia de Escritorio completa, con todo lo que un usuario inexperto pueda tener a la mano para trabajar, comunicarse y divertirse.
Sin duda una de las bellezas de Linux es su pluralidad de entornos gráficos para todos los gustos, a través de numerosas distribuciones y aún así mantener toda la conformidad de ser un sistema operativo estándar.
A lo largo del tiempo diversos entornos gráficos fueron construidos para funcionar en el servidor de ventanas de Linux.
Entre ellos, podemos mencionar los entornos KDE, GNOME, XFCE y Cinnamon.
KDE
KDE es una gran comunidad de desarrolladores desde 1996 que desarrollan un entorno gráfico multiplataforma conocido como KDE Plasma. Su nombre deriva de K Desktop Environment, y la letra "K" fue elegida simplemente porque viene después de la "L" de Linux. KDE y sus aplicaciones están escritas con el framework Qt.
El objetivo de la comunidad KDE es tanto proporcionar un entorno que ofrezca las aplicaciones y funcionalidades básicas para las necesidades diarias como permitir que los desarrolladores tengan todas las herramientas y documentación necesarias para simplificar el desarrollo de aplicaciones para la plataforma.
KDE se basa en el principio de la facilidad de uso y la personalización. Todos los elementos del entorno gráfico pueden personalizarse: paneles, botones de las ventanas, menús y elementos diversos como relojes, calculadoras y miniaplicaciones. La extrema flexibilidad para personalizar la apariencia permite incluso que los temas sean compartidos por los usuarios.
El gestor de ventanas KWin es responsable de proporcionar una interfaz gráfica organizada y consistente, y una barra de tareas intuitiva.
KDE Plasma con Tema OSX |
KDE Plasma otra variación estilo OSX |
KDE Plasma estilo Windows |
GNOME
El GNOME (acrónimo para GNU Network Object Model Environment) es un proyecto de software libre para entorno gráfico también multiplataforma con énfasis especial en usabilidad, accesibilidad e internacionalización.
El Proyecto GNOME es mantenido por diversas organizaciones y desarrolladores y forma parte del Proyecto GNU. Su principal contribuyente y mantenedor es Red Hat.
GNOME 3 es el entorno gráfico predeterminado de grandes distribuciones como Fedora, SUSE Linux, Debian, Ubuntu, Red Hat Enterprise, CentOS y muchos otros.
Aún existe una división del GNOME 2 conocida como MATE, ya que el cambio en el entorno del GNOME 2 al GNOME 3 fue grande, y algunos usuarios simplemente prefirieron quedarse con el entorno más parecido al GNOME 2.
Creado por dos mexicanos en 1997, disgustados en aquella época con la falta de software libre para el Framework Qt, utilizado para desarrollo de aplicaciones para KDE.
De esta forma, prefirieron utilizar GTK (Gimp Tool Kit) como framework predeterminado para el desarrollo del GNOME, ya que este ya estaba licenciado por la GPL.
GNOME 1 y 2 siguieron la tradicional área de trabajo con "barra de tareas".
GNOME 3 cambió esto con el GNOME Shell, con un entorno abstracto donde la alternancia entre diferentes tareas y escritorios virtuales ocurre en un área separada llamada "Vista General".
GNOME 3 en CentOS |
GNOME 3 en Ubuntu |
Figura 6 - MATE en Linux Mint |
Xfce
Xfce es un entorno de escritorio para sistemas operativos Unix Like, como Linux y BSD, fundado en 1996.
Xfce tiene como objetivo ser ligero, rápido y visualmente atractivo. Incorpora la filosofía Unix de modularidad y reutilización y consiste en partes separadas empaquetadas que, juntas, proporcionan todas las funciones del entorno de trabajo, pero pueden seleccionarse en subconjuntos para satisfacer las necesidades y preferencias del usuario.
Al igual que GNOME, Xfce está basado en el framework GTK, pero es un proyecto totalmente diferente.
Es muy utilizado en distribuciones que tienen la intención de ser ligeras, especialmente diseñadas para funcionar en hardware antiguo.
Xfce puede ser instalado en diversas plataformas UNIX, tales como NetBSD, FreeBSD, OpenBSD, Solaris, Cygwin, MacOS X, etc.
Entre las distribuciones que usan Xfce, podemos mencionar:
- Linux Mint Xfce edition
- Xubuntu
- Manjaro
- Arch Linux
- Linux Lite
Xfce en Linux Mint |
Xfce en Linux Manjaro |
Cinnamon
Cinnamon es un proyecto de escritorio gráfico derivado del GNOME 2, creado por el equipo de Linux Mint. Su experiencia de usuario es muy parecida con la de Windows XP, 2000, Vista y 7, facilitando la curva de aprendizaje de usuarios que hayan migrado de estos sistemas operativos.
Figura 9 - Cinnamon en Linux Mint |
Línea de Comando
Es importante decir que incluso con un entorno gráfico bonito, práctico y diversificado, es en la línea de comando donde reside la fuerza de Linux. Para los usuarios avanzados, es en el shell del sistema operativo donde ocurre la magia, ya que Linux permite que el usuario haga lo que quiera, con la facilidad de alterar un archivo. La concatenación de comandos también permite crear verdaderos cuchillos suizos computacionales.
El acceso al terminal es simple y rápido. Basta con buscar la aplicación Terminal en el entorno gráfico, o presionar la secuencia de teclas Ctrl-Alt-F1...F2...F3.. para tener acceso al terminal.
Linux en Máquinas Virtuales
Es imposible hablar de un entorno computacional sin hablar de virtualización y contenedores. Las viejas CPD en las empresas dejaron lugar a la computación en la nube, con entornos flexibles.
El término computación en la nube fue descrito por primera vez en 1997 en documentos de ARPAnet, que fue la red de computadoras precursora de Internet como la conocemos. Fue designado para representar una gran red de servidores interconectadas y dispersas geográficamente, de modo que cada entorno es autosuficiente e independiente.
Popularizado por grandes empresas como Amazon Web Services (AWS), Microsoft Azure y Google Cloud Platform, el término computación en la nube sirve actualmente para designar computación distribuida, donde los recursos computacionales son compartidos y distribuidos para completar una determinada tarea o aplicación.
Linux es perfectamente adaptable a este tipo de entorno computacional, que parece que fue hecho para él, en una simbiosis perfecta.
A pesar de tener acceso a hardware cada vez más eficiente y potente, las operaciones ejecutadas en los servidores físicos tradicionales - o bare-metal - inevitablemente enfrentan límites prácticos significativos.
El costo y la complejidad de la creación y el lanzamiento de un único servidor físico significan que agregar o remover efectivamente recursos para atender rápidamente las demandas es difícil o, en algunos casos, imposible. Sumele el costo del servidor, con costo de energía y refrigeración. Costo de enlace de Internet y también de seguridad de un buen firewall.
Probar con seguridad nuevas configuraciones o aplicaciones completas antes del lanzamiento también puede ser complicado, costoso y demorado.
En este sentido la computación evolucionó para proporcionar servidores virtuales, que pueden ser creados o destruidos en pocos segundos, o incluso tener la capacidad de aumentar y disminuir rápidamente su poder computacional.
Esto proporciona una ventaja única para las aplicaciones corporativas, que deben atender las necesidades de negocios en constante cambio.
La virtualización de máquinas implica las siguientes premisas:
- Acceso del software a los recursos y drivers de hardware de forma indistinguible de una experiencia no virtualizada;
- Debe permitir el control completo del cliente sobre el hardware del sistema virtualizado.
- Permitir que los recursos físicos de computación, memoria, red y almacenamiento sean divididos entre varias entidades virtuales.
- Cada dispositivo virtual está representado en sus entornos de software y usuario como una entidad real e independiente.
- Configurados correctamente, los recursos prácticamente aislados pueden proporcionar aplicaciones más seguras sin conectividad visible entre entornos.
- La virtualización también permite que nuevas máquinas virtuales sean aprovisionadas y ejecutadas casi instantáneamente y luego destruidas cuando ya no sean necesarias.
El tipo de adaptabilidad que la virtualización ofrece también permite que scripts agreguen o eliminen máquinas virtuales en segundos ... en lugar de las semanas que demora comprar, aprovisionar e implementar un servidor físico.
Virtualización en Contenedor
Una VM es un sistema operativo completo cuya relación con los recursos de hardware (CPU, memoria, almacenamiento y red) está totalmente virtualizada: piensa que se está ejecutando en su propia computadora.
Un hipervisor instala una VM a partir de la misma imagen ISO que descargaría y usaría para instalar un sistema operativo directamente en un disco duro físico vacío.
Un contenedor, por otro lado, es, efectivamente, una aplicación, lanzada a partir de una plantilla similar a un script, que considera un sistema operativo.
En las tecnologías de contenedor (como LXC y Docker), los contenedores no son más que abstracciones de software y recursos (archivos, procesos, usuarios) que dependen del kernel del host y una representación de los "cuatro principales" recursos de hardware (por ejemplo, CPU, RAM, red y almacenamiento).
Un contenedor entonces es un conjunto de uno o más procesos organizados de forma aislada del sistema, con su propia abstracción de disco, red y bibliotecas compartidas. Tiene todos los archivos necesarios para la ejecución de los procesos para los que fue creado. Sin embargo, los contenedores utilizan el Kernel del Host de las instancias en las que se ejecutan.
En la práctica, los contenedores son portátiles y consistentes durante toda la migración entre los entornos de desarrollo, pruebas y producción. Estas características los convierten en una opción mucho más rápida que los modelos tradicionales de desarrollo, que dependen de la replicación de los entornos de pruebas tradicionales.
Dado que los contenedores son, efectivamente, extensiones aisladas del kernel del host, permiten oportunidades de computación increíblemente ligeras y versátiles.
DevOps y Contenedores
Los contenedores son la combinación perfecta entre desarrollo de software y la infraestructura.
Los contenedores permiten replicar un entorno de producción en desarrollo con mucha facilidad, y viceversa. Todo el entorno creado para el desarrollo de una aplicación puede ser migrado en segundos a producción con el mínimo de esfuerzo. Todas las configuraciones, bibliotecas, dependencias, archivos, ubicación van junto con la aplicación encapsulada en el contenedor con el máximo de portabilidad, configurabilidad y aislamiento.
¿Los contenedores son VMs?
No exactamente. Las dos tecnologías son complementarias. Con la virtualización, es posible ejecutar sistemas operativos (Windows o Linux) simultáneamente en un único sistema de hardware.
En cambio, los contenedores comparten el mismo kernel del sistema operativo host y aíslan los procesos de la aplicación del resto del sistema. Esto proporciona aislamiento de la aplicación sin la necesidad de instalar una máquina virtual completa. De esta forma, las "instancias de contenedor" pueden ser inicializadas, detenidas y reiniciadas con mayor rapidez que una VM tradicional
Imagine los contenedores como departamentos de un edificio. Cada familia vive en un departamento diferente, con su propio color de pared, con sus muebles y electrodomésticos, pero comparten las áreas comunes como el hall de entrada, ascensores, espacio gourmet, red de alcantarillado, agua y gas. En cambio, las máquinas virtuales son como un residencial con varias casas. Cada casa necesita tener su propio muro, jardín, sistema de alcantarillado, calefacción, techo, etc. Difícilmente las casas tendrán en común su arquitectura, número de habitaciones, tamaño y configuraciones. En el residencial las casas solo comparten el sistema de calles, seguridad y alguna infraestructura, pero, a cambio son bastante independientes.
Software para Contenedores
LXC
El paquete LXC sirve para crear contenedores, un poco más pesados que un contenedor de aplicación, pero bastante más livianos que una máquina virtual. Contiene su propio sistema operativo simple, que hace interfaz directa con el sistema operativo anfitrión.
Por contener su propio sistema operativo, algunas veces LXC puede ser confundido con una máquina virtual, sin embargo, todavía necesita del sistema operativo anfitrión para funcionar.
Docker
El paquete de Docker también sirve para crear contenedores. Desarrollado por Docker, tiene una versión enterprise y otra Community. Extremadamente liviano, permite que varios contenedores se ejecuten en un mismo sistema operativo anfitrión.
Docker (conozca qué es docker) necesita ejecutar un servicio en el sistema operativo anfitrión que administra las imágenes de Docker instaladas. Ofrece tanto un cliente en modo texto para crear y administrar las imágenes, como un cliente de interfaz gráfica.
Las configuraciones de creación de contenedores en Docker se guardan en un archivo en formato YAML.
Sin duda, hay una migración de las VMs a los contenedores, precisamente por la facilidad de entrega de software y conformidad entre el desarrollo y producción.
Conclusión
Solo vas a saber cuál es tu versión favorita si pruebas varias. Mi distro preferida era OpenSuSe. Hoy uso en un notebook el Fedora Workstation y en el otro estoy encantado con el Zorin OS.
Aprende mucho más sobre Linux con los entrenamientos en línea de Certificación Linux. Puedes realizar la matrícula aquí. Si ya tienes una cuenta, o quieres crear una, simplemente ingresa o crea tu usuario aquí.
¿Te gustó? Comparte
Eso fue solo una pieza. El curso enseña el camino completo — desde tu primer comando hasta el día del examen.
KDE Plasma con Tema OSX
KDE Plasma otra variación estilo OSX
KDE Plasma estilo Windows
GNOME 3 en CentOS
GNOME 3 en Ubuntu
Figura 6 - MATE en Linux Mint
Xfce en Linux Mint
Xfce en Linux Manjaro