Distribución de linux

Compartir Imprimir Citar
Ubuntu, una de las distribuciones de Linux de escritorio más populares

Una distribución de Linux (a menudo abreviada como distro) es un sistema operativo creado a partir de una colección de software que incluye el kernel de Linux y, a menudo, un sistema de administración de paquetes. Los usuarios de Linux suelen obtener su sistema operativo descargando una de las distribuciones de Linux, que están disponibles para una amplia variedad de sistemas que van desde dispositivos integrados (por ejemplo, OpenWrt) y computadoras personales (por ejemplo, Linux Mint) hasta potentes supercomputadoras (por ejemplo,, Distribución de agrupaciones de rocas).

Una distribución típica de Linux comprende un kernel de Linux, herramientas y bibliotecas GNU, software adicional, documentación, un sistema de ventanas (el más común es el sistema X Window o, más recientemente, Wayland), un administrador de ventanas y un escritorio. medioambiente.

La mayor parte del software incluido es software gratuito y de código abierto disponible como binarios compilados y en forma de código fuente, lo que permite modificaciones al software original. Por lo general, las distribuciones de Linux incluyen opcionalmente algún software propietario que puede no estar disponible en forma de código fuente, como los blobs binarios necesarios para algunos controladores de dispositivos.

Una distribución de Linux también puede describirse como una variedad particular de aplicaciones y software de utilidades (varias herramientas y bibliotecas de GNU, por ejemplo), empaquetadas con el kernel de Linux de tal manera que sus capacidades satisfagan a muchos usuarios. necesidades. El software generalmente se adapta a la distribución y luego los mantenedores de la distribución lo combinan en paquetes de software. Los paquetes de software están disponibles en línea en repositorios, que son ubicaciones de almacenamiento generalmente distribuidas por todo el mundo. Junto a "pegamento" componentes, como los instaladores de distribución (por ejemplo, Debian-Installer y Anaconda) y los sistemas de administración de paquetes, muy pocos paquetes son escritos por los mantenedores de una distribución.

Existen casi mil distribuciones de Linux. Debido a la enorme disponibilidad de software, las distribuciones han adoptado una amplia variedad de formas, incluidas las adecuadas para su uso en equipos de escritorio, servidores, portátiles, netbooks, teléfonos móviles y tabletas, así como en entornos mínimos, normalmente para su uso en sistemas integrados. Existen distribuciones respaldadas comercialmente, como Fedora Linux (Red Hat), openSUSE (SUSE) y Ubuntu (Canonical Ltd.); y distribuciones totalmente impulsadas por la comunidad, como Debian, Slackware, Gentoo y Arch Linux. La mayoría de las distribuciones vienen listas para usar y precompiladas para un conjunto de instrucciones específico, mientras que algunas (como Gentoo) se distribuyen principalmente en forma de código fuente y deben compilarse localmente para su instalación.

Historia

5.25 pulgadas disquete conteniendo una versión muy temprana de Linux
Timeline of the development of main Linux distributions

Linus Torvalds desarrolló el kernel de Linux y distribuyó su primera versión, la 0.01, en 1991. Inicialmente, Linux se distribuyó solo como código fuente y, más tarde, como un par de imágenes de disquete descargables: una de inicio y que contenía el propio kernel de Linux, y otra el otro con un conjunto de utilidades y herramientas GNU para configurar un sistema de archivos. Dado que el procedimiento de instalación era complicado, especialmente ante la creciente cantidad de software disponible, surgieron distribuciones para simplificarlo.

Las primeras distribuciones incluían:

Los dos proyectos de distribución más antiguos y aún activos comenzaron en 1993. La distribución de SLS no estaba bien mantenida, por lo que en julio de 1993 Patrick Volkerding lanzó una nueva distribución basada en SLS, Slackware. También insatisfecho con SLS, Ian Murdock se dispuso a crear una distribución gratuita fundando Debian, lanzada por primera vez en diciembre de 1993.

Los usuarios se sintieron atraídos por las distribuciones de Linux como alternativas a los sistemas operativos DOS y Microsoft Windows en computadoras compatibles con IBM PC, Mac OS en Apple Macintosh y versiones propietarias de Unix. La mayoría de los primeros usuarios estaban familiarizados con Unix en el trabajo o la escuela. Adoptaron las distribuciones de Linux por su bajo (o inexistente) costo y la disponibilidad del código fuente para la mayoría o la totalidad de su software.

A partir de 2017, Linux se ha vuelto más popular en los mercados de servidores y dispositivos integrados que en el mercado de escritorio. Se utiliza en más del 50% de los servidores web; su participación actual en el mercado de computadoras de escritorio es de alrededor del 3,7%.

Componentes

Una distribución Linux generalmente se construye alrededor de un sistema de gestión de paquetes, que reúne el kernel de Linux, software libre y de código abierto, y ocasionalmente algún software propietario.

Muchas distribuciones de Linux proporcionan un sistema de instalación similar al proporcionado con otros sistemas operativos modernos. Otras distribuciones, incluida Gentoo Linux, solo proporcionan los archivos binarios de un núcleo básico, herramientas de compilación y un instalador; el instalador compila todo el software solicitado para la arquitectura específica de la computadora del usuario, utilizando estas herramientas y el código fuente del software.

Gestión de paquetes

Las distribuciones normalmente se segmentan en paquetes. Cada paquete contiene una aplicación o servicio específico. Ejemplos de paquetes son una biblioteca para manejar el formato de imagen PNG, una colección de fuentes y un navegador web.

El paquete generalmente se proporciona como código compilado, con la instalación y eliminación de paquetes manejados por un sistema de administración de paquetes (PMS) en lugar de un simple archivador de archivos. Cada paquete destinado a dicho PMS contiene metainformación como su descripción, número de versión y sus dependencias (otros paquetes que requiere para ejecutarse). El sistema de administración de paquetes evalúa esta metainformación para permitir búsquedas de paquetes, realizar actualizaciones automáticas a versiones más nuevas y verificar que todas las dependencias de un paquete estén presentes (y notificar al usuario que las instale o instalarlas automáticamente).

Aunque las distribuciones de Linux normalmente contienen mucho más software que los sistemas operativos propietarios, es normal que los administradores locales también instalen software no incluido en la distribución. Un ejemplo sería una versión más nueva de una aplicación de software que la proporcionada con la distribución, o una alternativa a la elegida por la distribución (por ejemplo, KDE Plasma Workspaces en lugar de GNOME, o viceversa, para la capa de interfaz de usuario). Si el software adicional se distribuye en forma de código fuente únicamente, debe compilarse localmente. Sin embargo, si se agrega software adicional localmente, el "estado" del sistema local puede perder la sincronización con el estado de la base de datos del administrador de paquetes. Si es así, el administrador local debe tomar medidas adicionales para garantizar que todo el sistema se mantenga actualizado, ya que es posible que el administrador de paquetes ya no pueda hacerlo automáticamente.

La mayoría de las distribuciones instalan paquetes, incluido el núcleo y otros componentes del sistema operativo central, en una configuración predeterminada. Algunos ahora requieren o permiten ajustes de configuración en el momento de la primera instalación. Esto hace que la instalación sea menos abrumadora, especialmente para los nuevos usuarios, pero no siempre es aceptable. Para requisitos específicos, gran parte del software debe configurarse cuidadosamente para que sea útil, para que funcione correctamente con otro software o para que sea seguro, y los administradores locales a menudo se ven obligados a dedicar tiempo a revisarlo y reconfigurarlo.

Algunas distribuciones (pero no todas) hacen todo lo posible para ajustar y personalizar el software que incluyen, y algunas proporcionan herramientas de configuración para ayudar a los usuarios a hacerlo.

Al obtener e instalar todo normalmente proporcionado en una distribución, un administrador puede crear un "distributionless" instalación. Es posible construir dichos sistemas desde cero, evitando por completo las distribuciones. Se necesita una forma de generar los primeros archivos binarios hasta que el sistema sea autohospedado. Esto se puede hacer a través de la compilación en otro sistema capaz de construir archivos binarios para el objetivo previsto (posiblemente mediante compilación cruzada). Por ejemplo, consulte Linux desde cero.

Tipos y tendencias

En términos generales, las distribuciones de Linux pueden ser:

La diversidad de las distribuciones de Linux se debe a la variación técnica, organizativa y filosófica entre proveedores y usuarios. La licencia permisiva de software libre significa que los usuarios con suficiente conocimiento e interés pueden personalizar cualquier distribución existente o diseñar una que se adapte a sus propias necesidades.

Distribuciones móviles

Las distribuciones continuas de Linux se mantienen actualizadas mediante actualizaciones pequeñas y frecuentes. Los términos parcialmente rodante y parcialmente rodante (junto con los sinónimos semi-rodante y medio rodante), completamente rodante, realmente rodante y opcionalmente rodante.

Los repositorios de distribuciones continuas suelen contener versiones de software muy recientes, a menudo las últimas versiones estables disponibles. Tienen pseudo-lanzamientos y medios de instalación que son simplemente instantáneas de la distribución en el momento del lanzamiento de la imagen de instalación. Por lo general, un sistema operativo de lanzamiento continuo instalado desde un medio de instalación anterior se puede actualizar por completo después de instalarlo.

Dependiendo del caso de uso, puede haber ventajas y desventajas tanto para la versión estándar como para las metodologías de desarrollo de software de versión continua.

En términos del proceso de desarrollo de software, las versiones estándar requieren un esfuerzo de desarrollo significativo para mantener las versiones antiguas actualizadas al propagar las correcciones de errores a la rama más nueva, en lugar de centrarse en la rama de desarrollo más nueva. Además, a diferencia de las versiones continuas, las versiones estándar requieren más de una rama de código para desarrollarse y mantenerse, lo que aumenta las cargas de trabajo de los desarrolladores y mantenedores de software.

Por otro lado, las funciones de software y la planificación de la tecnología son más sencillas en las versiones estándar debido a una mejor comprensión de las próximas funciones en las próximas versiones. Los ciclos de lanzamiento de software también se pueden sincronizar con los de los principales proyectos de software anteriores, como los entornos de escritorio.

En lo que respecta a la experiencia del usuario, las versiones estándar a menudo se consideran más estables y libres de errores, ya que los conflictos de software se pueden abordar más fácilmente y la pila de software se prueba y evalúa más exhaustivamente durante el ciclo de desarrollo del software. Por esta razón, tienden a ser la opción preferida en entornos empresariales y tareas de misión crítica.

Sin embargo, las versiones continuas ofrecen software más actual que también puede proporcionar una mayor estabilidad y menos errores de software junto con los beneficios adicionales de nuevas características, mayor funcionalidad, velocidades de ejecución más rápidas y seguridad mejorada del sistema y la aplicación. Con respecto a la seguridad del software, el modelo de lanzamiento continuo puede tener ventajas en las actualizaciones de seguridad oportunas, la corrección de errores y vulnerabilidades de seguridad del sistema o de la aplicación, que los lanzamientos estándar pueden tener que esperar hasta el próximo lanzamiento o parchear en varias versiones. En una distribución de lanzamiento continuo, donde el usuario ha elegido ejecutarlo como un sistema altamente dinámico, el flujo constante de paquetes de software puede introducir nuevas vulnerabilidades no deseadas.

Distribuciones sin instalación (live CD/USB)

Un "en vivo" La distribución es una distribución de Linux que se puede iniciar desde medios de almacenamiento extraíbles, como discos ópticos o unidades flash USB, en lugar de instalarse e iniciarse desde una unidad de disco duro. La portabilidad de las distribuciones sin instalación las hace ventajosas para aplicaciones tales como demostraciones, tomar prestada la computadora de otra persona, operaciones de rescate o como medios de instalación para una distribución estándar.

Cuando el sistema operativo se inicia desde un medio de solo lectura, como un CD o DVD, cualquier dato de usuario que deba conservarse entre sesiones no se puede almacenar en el dispositivo de inicio, sino que se debe escribir en otro dispositivo de almacenamiento, como una unidad flash USB o una unidad de disco duro.

Muchas distribuciones de Linux ofrecen una versión "en vivo" forma además de su forma convencional, que es una imagen basada en red o de medios extraíbles destinada a ser utilizada solo para la instalación; tales distribuciones incluyen SUSE, Ubuntu, Linux Mint, MEPIS y Fedora Linux. Algunas distribuciones, incluidas Knoppix, Puppy Linux, Devil-Linux, SuperGamer, SliTaz GNU/Linux y dyne:bolic, están diseñadas principalmente para uso en vivo. Además, algunas distribuciones mínimas se pueden ejecutar directamente desde un espacio tan pequeño como un disquete sin necesidad de cambiar el contenido de la unidad de disco duro del sistema.

Ejemplos

El sitio web DistroWatch enumera muchas distribuciones de Linux y muestra algunas de las que tienen más tráfico web en el sitio. La Fundación Wikimedia publicó un análisis de los agentes de usuario del navegador de los visitantes de los sitios web de WMF hasta 2015, que incluye detalles de los identificadores de sistemas operativos más populares, incluidas algunas distribuciones de Linux. Muchas de las distribuciones populares se enumeran a continuación.

Distribuciones basadas en GNU o compatibles con GNU ampliamente utilizadas

Sistemas operativos basados en el kernel de Linux

Si los sistemas operativos anteriores cuentan como una "distribución de Linux" es un tema controvertido. Usan el kernel de Linux, por lo que la Fundación Linux y Chris DiBona, el jefe de código abierto de Google, están de acuerdo en que Android es una distribución de Linux; otros, como el ingeniero de Google Patrick Brady, no están de acuerdo al señalar la falta de soporte para muchas herramientas GNU en Android, incluida glibc.

Otros sistemas operativos basados en el kernel de Linux incluyen Cyanogenmod, su bifurcación LineageOS, Android-x86 y, recientemente, Tizen, Mer/Sailfish OS y KaiOS.

Distribuciones ligeras

Las distribuciones ligeras de Linux son aquellas que se diseñaron teniendo en cuenta el soporte para hardware más antiguo, lo que permite que el hardware más antiguo aún se use de manera productiva o, para obtener la máxima velocidad posible en hardware más nuevo al dejar más recursos disponibles para que los usen las aplicaciones. Los ejemplos incluyen Tiny Core Linux, Puppy Linux y Slitaz.

Distribuciones de nicho

Otras distribuciones apuntan a nichos específicos, como:

Problemas de interdistribución

El Free Standards Group es una organización formada por los principales proveedores de software y hardware que tiene como objetivo mejorar la interoperabilidad entre diferentes distribuciones. Entre sus estándares propuestos se encuentran Linux Standard Base, que define un ABI común y un sistema de empaquetado para Linux, y Filesystem Hierarchy Standard, que recomienda un cuadro de nombres de archivos estándar, en particular los nombres de directorio básicos que se encuentran en la raíz del árbol de cualquier sistema de archivos de Linux. Esos estándares, sin embargo, tienen un uso limitado, incluso entre las distribuciones desarrolladas por miembros de la organización.

La diversidad de distribuciones de Linux significa que no todo el software se ejecuta en todas las distribuciones, según las bibliotecas y otros atributos del sistema que se requieran. El software empaquetado y los repositorios de software suelen ser específicos de una distribución en particular, aunque a veces es posible la instalación cruzada en distribuciones estrechamente relacionadas.

Herramientas para elegir una distribución

El proceso de cambiar constantemente entre distribuciones a menudo se denomina "salto de distribución". Las máquinas virtuales como VirtualBox y VMware Workstation virtualizan el hardware, lo que permite a los usuarios probar medios en vivo en una máquina virtual. Algunos sitios web como DistroWatch ofrecen listas de distribuciones y enlaces a capturas de pantalla de sistemas operativos como una forma de obtener una primera impresión de varias distribuciones.

Hay herramientas disponibles para ayudar a las personas a seleccionar una distribución adecuada, como varias versiones del Selector de distribución de Linux y la herramienta universal de búsqueda de paquetes whohas. Hay formas sencillas de probar varias distribuciones de Linux antes de decidirse por una: Multi Distro es un Live CD que contiene nueve distribuciones que ahorran espacio. Herramientas como Ventoy permiten arrancar desde una de varias distribuciones en vivo copiadas a un dispositivo de almacenamiento seleccionando la imagen de disco apropiada desde un menú de arranque.

Instalación

Hay varias formas de instalar una distribución de Linux. El método más común para instalar Linux es arrancar desde una memoria USB en vivo, que se puede crear usando una aplicación de escritura de imágenes USB y la imagen ISO, que se puede descargar de varios sitios web de distribución de Linux. Los discos DVD, los discos CD, las instalaciones de red e incluso otros discos duros también se pueden usar como "medios de instalación".

En la década de 1990, las distribuciones de Linux se instalaban mediante conjuntos de disquetes, pero todas las distribuciones principales lo han abandonado. En la década de 2000, muchas distribuciones ofrecían conjuntos de CD y DVD con los paquetes vitales en el primer disco y paquetes menos importantes en los posteriores. Algunas distribuciones, como Debian, también permitieron la instalación a través de una red después de arrancar desde un conjunto de disquetes o un CD con solo una pequeña cantidad de datos.

Los nuevos usuarios tienden a comenzar por particionar un disco duro para mantener su sistema operativo previamente instalado. La distribución de Linux se puede instalar en su propia partición separada sin afectar los datos guardados previamente.

En una configuración de Live CD, la computadora inicia todo el sistema operativo desde el CD sin instalarlo primero en el disco duro de la computadora. Muchas distribuciones tienen un instalador de Live CD, donde la computadora arranca el sistema operativo desde el disco, y luego se puede instalar en el disco duro de la computadora, proporcionando una transición perfecta desde el sistema operativo que se ejecuta desde el CD al sistema operativo que se ejecuta desde el disco duro.

Tanto los servidores como las computadoras personales que vienen con Linux ya instalado están disponibles a través de proveedores como Hewlett-Packard, Dell y System76.

En los dispositivos integrados, Linux generalmente se encuentra en el firmware del dispositivo y puede o no ser accesible para el consumidor.

Anaconda, uno de los instaladores más populares, es utilizado por Red Hat Enterprise Linux, Fedora (que usa Fedora Media Writer) y otras distribuciones para simplificar el proceso de instalación. Debian, Ubuntu y muchos otros usan Debian-Installer.

Instalación a través de un sistema operativo existente

Algunas distribuciones permiten al usuario instalar Linux sobre su sistema actual, como WinLinux o coLinux. Linux se instala en la partición del disco duro de Windows y se puede iniciar desde el propio Windows.

Las máquinas virtuales (como VirtualBox o VMware) también hacen posible que Linux se ejecute dentro de otro sistema operativo. El software VM simula una computadora separada en la que está instalado el sistema Linux. Después de la instalación, la máquina virtual se puede iniciar como si fuera una computadora independiente.

También hay varias herramientas disponibles para realizar instalaciones completas de arranque dual desde plataformas existentes sin un CD, en particular:

Software propietario

Algunos productos de software propietarios específicos no están disponibles de ninguna forma para Linux. A partir de septiembre de 2015, el servicio de juegos Steam tiene 1500 juegos disponibles en Linux, en comparación con 2323 juegos para Mac y 6500 juegos de Windows. Los proyectos de emulación y traducción de API como Wine y CrossOver permiten ejecutar software no basado en Linux en sistemas Linux, ya sea emulando un sistema operativo propietario o traduciendo llamadas de API propietarias (por ejemplo, llamadas a Win32 de Microsoft o DirectX API) en llamadas nativas de API de Linux. Una máquina virtual también se puede usar para ejecutar un sistema operativo propietario (como Microsoft Windows) sobre Linux.

Contratos OEM

El hardware de la computadora generalmente se vende con un sistema operativo diferente a Linux ya instalado por el fabricante del equipo original (OEM). En el caso de IBM PC compatibles, el sistema operativo suele ser Microsoft Windows; en el caso de las computadoras Apple Macintosh siempre ha sido una versión del SO de Apple, actualmente macOS; Sun Microsystems vendió hardware SPARC con Solaris instalado; las consolas de videojuegos como Xbox, PlayStation y Wii tienen cada una su propio sistema operativo. Esto limita la participación de mercado de Linux: los consumidores no saben que existe una alternativa, deben hacer un esfuerzo consciente para usar un sistema operativo diferente y deben realizar la instalación ellos mismos o depender del apoyo de un amigo, pariente, o profesional de la informática.

Sin embargo, es posible comprar hardware con Linux ya instalado. Lenovo, Hewlett-Packard, Dell, Affordy, Purism, Pine64 y System76 venden portátiles Linux de uso general. Los fabricantes de PC por encargo también construirán sistemas Linux, pero posiblemente con la tecla de Windows en el teclado. Fixstars Solutions (anteriormente Terra Soft) vende computadoras Macintosh y consolas PlayStation 3 con Yellow Dog Linux instalado.

Es más común encontrar dispositivos integrados que se venden con Linux como sistema operativo predeterminado compatible con el fabricante, incluido el dispositivo NAS Linksys NSLU2, la línea de grabadoras de video personales de TiVo y teléfonos celulares basados en Linux (incluidos los teléfonos inteligentes Android), PDA y reproductores de música portátiles.

La licencia actual de Microsoft Windows permite que el fabricante determine la política de reembolso. Con versiones anteriores de Windows, era posible obtener un reembolso si el fabricante no lo proporcionaba mediante litigio en los tribunales de reclamos menores. El 15 de febrero de 1999, un grupo de usuarios de Linux en el condado de Orange, California, celebró un "Día de reembolso de Windows" protesta en un intento de presionar a Microsoft para que les emita reembolsos. En Francia, las organizaciones Linuxfrench y AFUL (Asociación de Usuarios de Software Libre de Habla Francesa) junto con el activista de software libre Roberto Di Cosmo iniciaron un "Windows Detax" movimiento, que condujo a una petición de 2006 contra "racketiciels" (traducción: Racketware) con 39,415 signatarios y la rama DGCCRF del gobierno francés presentando varias quejas contra el software incluido. El 24 de marzo de 2014, AFUL lanzó una nueva petición internacional en la plataforma Avaaz, traducida a varios idiomas y respaldada por muchas organizaciones en todo el mundo.

Estadísticas

No hay cifras oficiales sobre popularidad, adopción, descargas o base instalada de distribuciones de Linux.

Tampoco hay cifras oficiales sobre la cantidad total de sistemas Linux, en parte debido a la dificultad de cuantificar la cantidad de PC que ejecutan Linux (consulte Adopción de Linux de escritorio), ya que muchos usuarios descargan distribuciones de Linux. Por lo tanto, las cifras de ventas de los sistemas Linux y las distribuciones comerciales de Linux indican un número mucho menor de sistemas Linux y un nivel de adopción de Linux mucho menor que en el caso; esto se debe principalmente a que Linux es un software gratuito y de código abierto que se puede descargar de forma gratuita. Un proyecto de contador de Linux había realizado un seguimiento de una estimación en ejecución de la cantidad de sistemas Linux, pero no distinguía entre las distribuciones de lanzamiento continuo y estándar. Dejó de funcionar en agosto de 2018, aunque se crearon algunas publicaciones de blog relacionadas hasta octubre de 2018.

Linux Hardware Project recopila y publica informes estadísticos de uso de escritorio para distribuciones de Linux específicas desde julio de 2014.