Distribución de GNU/Linux

miniatura|Mapa da evolución das distribucións de GNU/Linux ao longo do tempo.
Unha **distribución de GNU/Linux**, chamada tamén *distribución Linux* por abreviar ou *distro* de xeito coloquial, é un sistema operativo que pon en funcionamento GNU/Linux dun xeito concreto. As distribucións están compostas por un kernel de Linux cunha colección de múltiples utilidades, como o software do proxecto GNU, e aplicacións.

As distribucións diferéncianse polas aplicacións que inclúen, a práctica de empaquetado e a instalación e xestión de aplicacións. Tamén polas súas ferramentas para a instalación do sistema operativo e o seu mantemento. As distribucións desenvólvense ora ben para ser sistemas operativos xenéricos ora para cubrir necesidades dun grupo específico de usuarios. Son o modo habitual de instalar GNU/Linux.

Existen centos de distribucións. Xa só entre as máis empregadas hai distribucións que están orientadas a seren sinxelas no seu uso acotío, como o son Linux Mint, Ubuntu e PCLinuxOS. Tamén hai outras, como Debian GNU/Linux, fedora e openSUSE, que son para usos máis avanzado de Linux. Algunhas outras, como Red Hat Enterprise Linux, SUSE ou CentOS, están orientadas ao uso en pequenas e grandes empresas. Entre as demais distribucións hai outras que lle prestan atención a fins específicos, como é o caso da distribución galega Trisquel GNU/Linux que se enfoca en estar feita só con software libre.

## Historia
### As primeiras distribucións
Linus Torvalds publicou a primeira versión do kernel de Linux, a 0.01, no servidor da Universidade de Helsinqui e con licenza GPL en 1991. No comezo de desenvolvemento de Linux, Linus e os primeiros compañeiros do proxecto ían publicando só o código fonte. As instalacións nos computados facíanse compilándoo. Axiña comezaron a distribuílo en varias imaxes de disquete que se descargaban. Unhas contiñan o kernel de Linux e outros aplicacións de GNU e outras máis para o sistema de ficheiros. Xa que este proceso de instalación inicial se ía facendo cada vez máis complexo, ao progresar e haber máis software desenvolto para Linux, comezáronse a desenvolver "distribucións" para simplificala. As distribucións consistían nun selector de paquetes de software dispoñible na imaxe, ferramentas de configuración e a documentación. A primeira distribución en se crear foi MCC Interim Linux e fíxoa Owen Le Blanc no Centro de Computación de Manchester en febreiro de 1992. Nela incluía X e TCP/IP. Outras das primeiras, tamén de 1992, foron a *Boot-root* de H.J. Lu, *Softlanding Linux System* (SLS) e a distribución comercial *Yggdrasil Linux/GNU/X*. Patrick Volkerding comezou a desenvolver a finais do 1992 a distribución Slackware e publicouna en xullo de 1993.. Foi unha das primeiras distribucións e unha das que aínda segue en desenvolvemento.

### O arranque das comunidades e a comercialización
A finais do 1992 fundouse en Alemaña a compañía "Software und System-Entwicklung" ou S.U.S.E Linux. SUSE Linux adicábase daquela a distribuír "Softlanding Linux System" (SLS) e "Slackware". No 1994, e baseándose en Slackware, publicaron a súa primeira distribución propia "S.u.S.E. 1.0", a primeira enfocada venda a empresas. En 1993 Bob Young e Marc Ewing fundaron a compañía Red Hat e absorberon a distribución Bogus. En 1994 Red Hat publicou o seu primeiro xestor de paquetes de sistemas e distribuíuno nun único CD, chamándolle "Red Hat Software Linux".. Apoiadas nesas primeiras distribucións de Red Hat, fundáronse as compañías Caldera, Mandrake e TurboLinux; nacidas de par para comercializar as distribucións. Ao igual que Red Hat, Slackware e SuSE, a outra distribución que naceu nos primeiros anos e que aínda se desenvolve é Debian. Ian Murdock fora tamén outro dos desenvolvedores que non quedara satisfeito con SLS e que decidiu crear a súa propia distribución en decembro de 1993, chamándolle "Debian". O desenvolvemento de Debian foi apoiado activamente polo proxecto GNU entre o 1994 e 1995. En 1994 un grupo de alumnos da compañía Novell, apoiados polo fundador da empresa, crearon Caldera, unha distribuidora comercial. Comezou a distribuír as súas primeiras distribucións, "Caldera Network Desktop", en 1995. Fixéronas incluíndo o kernel de Linux con aplicacións compiladas de licenzas privativas, o que lle foi dando terreo no sector de empresas especialmente en 1999. SUSE liberou "SUSE Linux 4.2" en 1996, a que considera a súa primeira distribución completa, converténdose na principal distribución do mercado europeo. Entre o 1997 e 1999 comezou a entrar no mercado americano e asiático. No ano 2000 publicou "SUSE Linux Enterprise Server", a primeira edición orientada ao mercado dos servidores.

Trala compra de Caldera por Canopy Group e o inicio de litixios con IBM e outras fundacións sobre da distribución de Linux, a compañía Caldera/SCO quebrou en 2002. A compañía Red Hat fixérase pública en 1999 e acababa de comezar a distribuír a distribución "Red Hat Enterprise Linux" no mercado nese ano 2002. Entre outras cuestións, a quebra de Caldera/SCO contribuíu á expansión de Red Hat no mercado como principal distribuidora de Linux en empresas. Co inicio deste proxecto de desenvolvemento aberto, en maio de 2004 comezouse a publicar CentOS, unha distribución baseada en RHEL e orientada a empresas e co fin de ser estable.. Igualmente, a comunidade de Debian foi continuamente sumando desenvolvedores. Coa "Debian 2.0 Hamm" de 1998 chegou a contar con 400 persoas traballando na distribución e 1500 paquetes compilados. A súa distribución destacaba por ser unha distribución para servidores sinxela. Sendo un proxecto popular, ao comezo dos 2000 iniciáronse varios proxectos baseados en Debian co fin de crear as primeiras distribucións amigables no escritorio: Libranet, Storm, Finnix ou Corel Linux. Destacaba por ser das primeiras en incluír KDE 1.0 ou por ter un bo soporte de hardware. Foi perdendo popularidade pero deixou tras de si distribucións agora populares: PCLinuxOS (iniciada no 2003), Mageia e OpenMandriva (iniciadas en 2010 como sucesoras de Mandriva). Entre 2004 e 2005 destacaban tamén Fedora, Debian, Slackware e Gentoo. e competindo con CentOS, Debian, Fedora, Mint, Slackware ou openSUSE.

Desde o 2010, os usuarios de Linux mostraron unha preferencia polas distribucións baseadas en Debian. Linux Mint foi gañando popularidade entre o público xeral, e Arch Linux entre os usuarios máis avanzados. ca nos computadores persoais ou dispositivos móbiles. Así, en 2012 Red Hat tiña un valor no mercado da bolsa de 1.000 millóns de dólares.. Mentres tanto, a comezos do 2017 o uso de Linux nos escritorios situouse no 3,7%. Porén, a introdución ChromeOS para portátiles lixeiros e os dispositivos móbiles con Android fixo que Linux conseguise dominar como o sistema operativo máis usado.

## Compoñentes e desenvolvemento
[miniatura|350px| As distros están construídas polo xeral con [Sistema de xestión de paquetes|sistemas de empaquetamento, que xonguen o kernel de Linux con aplicacións de software libre, e algunhas veces con software privativo.]]

Case todas as distribucións fornecen un sistema de instalación e un xestor de paquetes de software. Algunhas fan o contrario e só inclúen o kernel, ferramentas para compilar e un instalador da distribución. O instalador destas distribucións encárgase de compilación para a arquitectura do sistema do usuario usando varias ferramentas e o código fonte. Un caso destes últimos é Gentoo.

Un aspecto que diferenza ás distribucións é a frecuencia coa que sacan novas versións. Hai distribucións que planifican o lanzamento de novas versións seguindo patróns de tempo regulares (coma Ubuntu ou Fedora), outras que sacan novas versións cando consideran que a versión en desenvolvemento é estable e aceptable para usar (coma Debian), e outras que non sacan versións,senón que van actualizando o software a medida que se publican novas versións de cada aplicacións (*rolling release*, coma Arch Linux ou a *Tumbleweed* de openSUSE).

### Xestión de paquetes
As distribucións están polo xeral segmentadas en *paquetes*. Cada un destes contén un servizo ou aplicación específico. Como exemplo, un paquete pode conter a libraría para xestionar o formato de imaxe PNG, unha tipografía ou un navegador web como Firefox. Case todas as distribucións adoitan instalar por defecto unha cantidade importante de paquetes de software, cubrindo as necesidades dos usuarios finais. Contan cun kernel de Linux, librarías GNU e outras librarías, un sistema de xanelas (como X), un ambiente de escritorio como GNOME Shell, KDE Plasma 5 e outro software, como LibreOffice. Ademais inclúen paquetes específicos para a súa finalidade (como deseño gráfico ou a bioinformática) e mesmo poden ter algún software privativo. Mais, sempre se pode precisar de instalacións adicionais, que non inclúe por defecto a distribución. Un exemplo sería instalar un ambiente de escritorio alternativo: instalar Xfce no canto de GNOME.

Os paquetes adoitan constar de código compilado e sóenos xestionar os *sistemas de xestión de paquetes*, que se adican a instalalos ou desinstalalos. Non son só ficheiros arquivados. En cada paquete de software hai "metainformación" do seu contido: a descrición do paquete, a versión, as "dependencias" ou requisitos que precisa ese paquete. Os xestores de paquetes analizan esa metainformación e facilitan a busca de paquetes, a súa actualización a novas versións, a comprobar se os demais paquetes (ou dependencias) que precisan xan están instalados, e/ou resolvelas de xeito automático.

Nas distribucións o software pódese instalar empregando só código fonte. Mais para iso hai que facer unha compilación local. Iso implica que o sistema non coñece o "estado" de instalación dese software adicional compilado: os sistema de xestión de paquetes "descoñecen" a súa instalación. Por iso, as distribucións instalan paquetes, incluíndo o kernel e outros compoñentes vitais do sistema, no que o software ven nunha configuración predeterminada. Existen varios tipos paquetes compilados, ou *formatos de paquetes*, que inclúen toda a metainformación para a súa xestión nas distribucións (como o nome, descrición, número de versión, provedor, "checksum" ou dependencias).

Os paquetes compilados de cada edición da distribución sóeno xestionar os desenvolvedores. Ademais deses, os outros paquetes adóitanse poñer a disposición dos usuarios en liña e accesibles para todo o mundo, no que se denominan *repositorios*. Os repositorios son lugares de almacenamento de paquetes de software preparados, en esencia, para instalar nunha distribución e versión concreta.

#### Formatos de paquetes
Os principais formatos de paquetes especializados empregados na distribucións son:

* **Deb**: Debian e derivadas como o son Ubuntu, Xubuntu ou Linux Mint.
* **ebuild**: Gentoo.
* **PISI**: Pardus.
* **PUP** e **PET**:  Puppy Linux (o formato PUP está deprecado desde a súa versión 3.0).
* **RPM**: Red Hat Enterprise Linux, Fedora e derivadas como CentOS, openSUSE e SUSE Linux Enterprise Server, Mageia (e antes Mandriva).
* SNAP: Ubuntu, e coa posibilidade de usar noutras como Arch, Fedora, Gentoo ou openSUSE.

Ademais, **Alien** é unha aplicación que converte entre diferentes formatos de paquetes de Linux.

#### Xestores de paquetes
As principais interfaces en liña de comandos ou gráficas para a xestión de paquetes, nos seus distintos formatos, son:

* **DPKG** *(Debian Package Management System)*, sistema base da familia de distribucións Debian.
** **APT** *(Advanced Packaging Tool)*, interface en liña de comandos do sistema de paquetes dpkg.
** **Aptitude Package Manager**, interface en liña de comandos do sistema de paquetes dpkg.
** **Synaptic Package Manager**, interface gráfica en GTK+ de paquetes dpkg.
* **Entropy**, en Sabayon.
* **RPM** *(Red Hat Package Manager)*, sistema inicial desenvolto por Red Hat e usado nas distros derivadas de Fedora e openSUSE.
** **YUM** *(Yellowdog Updater, Modified)*, interface en liña de comandos do sistema de paquetes RPM.
** **DNF** *(Dandified Yum)*, interface en liña de comandos do sistema de paquetes introducido en Fedora 12 e que substitúe a *yum*.
* **Pacman Package Manager**, en Arch Linux.
* **Portage Package Manager**, en Gentoo e derivadas como Calculate e Sabayon.
* **urpmi**,  en Mageia (e antes Mandriva) e ROSA é o xestor de RPMs.
* **ZYpp Package Manager** (ZYpp ou libzypp), en openSUSE é o xesto de paquetes RPM que conta coa interface en liña de comandos *Zypper Package Manager* (zypper). ZYpp é base de zypper e a instalación en YaST.

## Estandarización 
Existen algúns proxectos para poñer en común algúns aspectos en todas as distribucións de GNU/Linux por motivos de pragmatismo.

Linux Standard Base é un proxecto da Linux Foundation coa finalidade de desenvolver unha cooperación estreita entre as diferentes distribucións de cara ás versións das aplicacións que sacan para facilitar o desenvolvemento de aplicacións para todas as distribucións.

O Filesystem Hierarchy Standard é unha importante ferramenta da organización para lograr unha certa normalización na xerarquía do sistema de ficheiros.

Alien é unha aplicación para poder converter paquetes entre múltiples formatos de distribución como deb, rpm ou tgz.

## As distribucións populares e as especializadas
### Principais distribucións
Segundo as estatísticas de consulta e descarga as distribucións con máis traxectoria e/ou populares son:

* Arch Linux: é unha distribución de actualizacións continuas orientada a usuarios avanzados e desenvolta pola comunidade.
** Chakra: é unha distribución que estivo inicialmente baseada en Arch e agora cun desenvolvemento independente. Céntrase en distribuír os últimos lanzamentos do proxecto KDE e Qt.
** Manjaro: esta derivada de Arch inclúe un instalador gráfico e outras ferramentas para facilitar o seu uso.

* Debian: é a distribución non comercial que está desenvolta e sostida por unha rede de desenvolvedores voluntarios cun compromiso cos principios do software libre.
** Knoppix: baseada en Debian e a primeira coa posibilidade de ser usada desde un Live CD.

** Ubuntu: baseada en Debian, con GNOME Shell e enfocada en escritorios e servidores. Mantena a compañía Canonical Ltd.
*** elementary OS: baseada en Ubuntu, está enfocada a ter un bo deseño gráfico e co ambiente de escritorio Pantheon.
*** KDE Neon: baseada en Ubuntu, é unha versión oficial do proxecto KDE que inclúe as últimas novidades de KDE Plasma e a compilación de software de KDE sobre da última versión LTS de Ubuntu. Con versións orientadas a usuarios e desenvolvedores.
*** Kubuntu: baseada en Ubuntu, é a versión de KDE de Ubuntu.
*** Linux Mint: baseada en Ubuntu, inclúe múltiples ambientes de escritorio, como unha variante de GNOME Shell, Cinnamon e MATE.
*** Trisquel: baseada en Ubuntu, só inclúe software libre.
*** Xubuntu: a versión de Xfce de Ubuntu.
*** Zorin OS: baseada en Ubuntu, está deseñada para os novos usuarios de Linux e trae consigo un deseño gráfico similar ao de Windows e aplicacións habituais neste SO.

* Fedora: a distribución da comunidade Fedora, e que apoia a compañía Red Hat. Sitúase na vangarda do novo software e serve de test deste.
** Kororaa: inicialmente baseouse en Gentoo mais agora baséanse no desenvolvemento de Fedora.
** Red Hat Enterprise Linux (RHEL): é a derivada comercial de Red Hat baseada en Fedora. Pretende ser unha distribución segura e estable para uso en servidores e equipos de empresas.
*** CentOS: é unha distribución derivada das fontes que emprega Red Hat e que está xestionada por unha comunidade de voluntarios. 
*** Oracle Linux: é unha distribución derivada de RHEL, que a mantén e comercializa Oracle.
*** Scientific Linux: é unha distribución derivada de RHEL orientada á aplicación en ciencia e que mantén Fermilab.

* Gentoo: é unha distribución para usuarios avanzados e que destaca polas migracións de sistemas de automatización similares aos de FreeBSD para automatizar compilacións de código fonte.

* Mandriva Linux: foi unha popular versión de Red Hat da compañía do mesmo nome. Quebrou en 2010 e o seu desenvolvemento continuou en OpenMandriva Lx. Mantén un bo número de distribucións populares baseadas nesta.
** Mageia: unha comunidade creada a partir de Mandriva no 2010.
** PCLinuxOS: xorde de Mandriva para o uso fácil en escritorio.

* openSUSE: é unha distribución creada pola comunidade openSUSE e co apoio da compañía SUSE. 
** SUSE Linux Enterprise: versión estable creada a partir de openSUSE e para o seu uso comercial como escritorio e servidor. 
** GeckoLinux: é unha versión para o uso sinxelo en escritorios.

* Puppy Linux: é unha versión lixeira, con pouco uso da memoria, orientada a múltiples usos.

* Slackware: foi das primeiras distribucións e das que maior continuación no tempo tivo. Intenta permanecer achegada á filosofía Unix e coa facilidade de ser modificar polos usuarios finais.

* Solus: é unha distribución baseada no kernel de Linux só para computadoras de 64 bits. Conta cun ambiente de escritorio propio chamado Budgie, que se integra coas ferramentas de GNOME e que simula ao escritorio de GNOME 2.

### Distribucións especializadas 
#### Ciencia
Scientific Linux é unha edición de RHEL que patrocina a compañía Femilab Está orientada a unha aplicación xeral en ciencia e conta con xestores de bases de datos como PostgreSQL e MySQL, editores de texto como Emacs, a linguaxe R e gnuplots para a representación gráfica de datos.

Fedora Science é unha edición de Fedora con aplicacións orientadas á análise matemática e aplicacións en física. Inclúe ferramentas de cálculo como GNU Octave, IPython, Scilab, ou SciPy e de edición como LaTeX, Emacs ou Vim. Outras edicións de Fedora teñen tamén obxectivos específicos aplicados a ciencia, como Fedora Electronic Lab. Esa edición de Fedora está orientada ao deseño de hardware e a ser unha plataforma de simulación.

No CERN teñen desenvolto CERN CentOS e Scientific Linux CERN orientádas a empregar no ecosistema de desenvolvemento da organización. A primeira, CERN CentOS, baseouse en CentOS e a segunda, Scientific Linux CERN,  en Scientific Linux. O CERN informou en 2009 de que 50 mil equipos empregaban estas dúas distribucións. Arestora empregan RHEL

Bio-Linux é unha distribución orientada á aplicación en bioinformática e que está baseada nas versións LTS  de Ubuntu. En especia, inclúe a plataforma Galaxy para a exploración, procesado e análise de datos xenómicos.

Hai distribución orientadas á enxeñaría e deseño 3D, como o é CAELinux. Esta inclúe aplicacións como Freecad e PyCam, para deseño CAD, ou Cura, para impresión 3D.

#### Educación
Edubuntu, creada en colaboración con Ubuntu, creouse para ofrecer sistemas adaptables a todos os ciclos educativos infantís. Uberstudent é unha distribución similar pero orientada á educación máis avanzada, en idades de 12 anos en diante. Kano OS está orientada a aprendizaxe de programación en idade infantil. openSUSE Edu é unha variante de openSUSE Leap. Pretende cubrir todos os niveis da implementación e uso de software educativo nas aulas e no fogar: desde a xestión educativa, desde o alumnado, o profesorado ou os administradores dos sistemas. É o mesmo caso de Fedora Education SIG.

Outra máis é PicarOS, unha distribución orientada á educación e lecer infantil.

#### Edición multimedia
Fedora Design Suite, Ubuntu Studio e ArtiX contan por defecto cunha gama de aplicacións orientadas a edición de imaxe, son e vídeo. KXStudio e unha distribución especializada na edición de son.

#### Lixeiras
Existen múltiples distribucións orientadas a empregar en hardware antigo, hardware con pouca capacidade como Raspberry Pi, ou para mellorar o rendemento do hardware en casos nos que se precisa dunha ampla dispoñibilidade dos recursos. Un deses últimos casos é na edición intensiva de vídeo e son ou computadores adicados á reprodución multimedia. Distribucións xenéricas lixeiras, e orientadas a varios tipos de usuarios, son Arch, Manjaro, Puppy Linux e Lubuntu (con LXQt, a fusión de LXDE e RazorQt), e Xubuntu (con Xfce). Knoppix é unha distribución lixeira e ademais pensada a iniciarse desde Live CDs.

PIXEL está pensada para empregar en dispositivos con Raspberry Pi. Remix OS é outra distribución lixeira, mais que está pensada para incluír o soporte a aplicacións de Android, libres e de pago ou privativos.

GALPon MiniNo, que conta con desenvolvedores galegos, é unha distribución orientada a computadores antigos ou con poucos recursos de hardware.

#### Orientadas a servizos na nube
Hai desenvoltas distribucións para fornecer servizos na nube ou xestión de aplicacións web. ChromeOS, Cub Linux e Peppermint. Así, ChromeOS é un sistema operativo accesible desde o navegador, para executar en liña. Mais, esta distribución pódese compilar e empregar como calquera das outras distribución de Linux.

#### Reparación de sistemas
Existen distribucións orientadas a reparación de sistemas por erros como o borrado de ficheiros, esquecer os contrasinais, ou fallos no arrinque ou  sistema de ficheiros corrompidos. Clonezilla Live permite facer copias de seguridade ou recuperar imaxes e particións de discos duros. Rescatux resolve problemas en sistemas Linux e Windows. Pode modificar a GRUB ou rexistro Windows Master Boot ou comprobar os erros no sistema de ficheiros en Linux.  SystemRescueCD está unha live CD baseada en Gentoo con menús gráficos para múltiples opcións de reparación de Linux.

#### Servidores
Arch, CentOS, ClearOS, Debian, Oracle Linux, Mageia, Red Hat Enterprise Linux, Slackware, SUSE Linux Enterprise Server e Ubuntu son distribucións empregadas habitualmente en servidores. Debian/Ubuntu, CentOS/Red Hat Enterprise Linux e openSUSE/SUSE Linux Enterprise destacaron en uso como servidores ou foron tendencia en 2016, en especial como servidores web.

#### Xogos e lecer
Steam OS é unha distribución baseada en Debian e creada pola compañía Valve Corporation que está enfocada de cheo en ser unha plataforma de videoxogos.

#### Outras
Hai outras distribución con nichos máis específicos, como para: 
* *Routers*, como OpenWrt que é unha distribución lixeira específica para ir incorporado no router.
* *Internet das cousas (IoT)*, como Ubuntu Core.
* *Centros multimedia para o fogar*, como KnoppMyth ou Mythbuntu.
* Plataformas específicas, como Raspberry Pi coa distribución Raspbian.
**Privacidade e anonimato*, como Tails.
**Uso fóra de liña*, como Endless OS.

## Galería de imaxes 

Ficheiro:Arch-linux-kdemod4-screenshot-gl.png|Arch Linux
Ficheiro:Chakra Goedel Screenshot.png|Chrakra
Ficheiro:Debian 9 Stretch-gnome desktop.png|Debian GNU/Linux
Ficheiro:ElementaryOS Loki.png|elementary OS
Ficheiro:Fedora Showing Gnome 3.22.2 showing overview.png|Fedora
Ficheiro:Linux Mint 15 Cinnamon.png|Linux Mint
Ficheiro:Captura Escritorio Minino 2.0.png|GALPon MiniNo
Ficheiro:Gentoo12.0.jpg|Gentoo Linux 
Ficheiro:Knoppix 7.2 640x480.png|Knoppix
Ficheiro:Mageia 2.png|Mageia
Ficheiro:Manjaro 17.0 Gellivara.png|Manjaro
Ficheiro:GNOME_applications_overview_42.1.png|openSUSE 
Ficheiro:Parabola13.png|Parabola GNU/Linux-libre
Ficheiro:PCLinux_OS_2014.12_(KDE).PNG|PCLinuxOS 
Ficheiro:RHEL-7-gnome 2014-06-11 17 06 46.png|Red Hat Enterprise Linux
Ficheiro:Slackware 15.0 screenshot.png|Slackware 
Ficheiro:Trisquel GNU Linux 5.5 screenshot.jpg|Trisquel GNU/Linux
|Ubuntu (GNU/Linux)

## Notas 
## Véxase tamén 
### Ligazóns externas 
* DistroWatch, todo sobre as distribucións Linux, BSD e outros sistemas operativos de código aberto..