1. ¿De qué va esto?
- Un poco de inspiración
- Software libre
- ¿Qué es Linux?
- Historia
- Componentes
- Distribuciones
- ¿Qué distribución escogemos?
Un poco de inspiración
Hay varias formas de comenzar el texto de un curso de Linux. Podríamos definir qué es, hablar de su historia o presentarlo sencillamente como una opción gratuita al software privativo.
Todo este material se ofrecerá en los siguientes apartados y, dependiendo del conocimiento previo de cada uno, podremos saltárnoslo o disfrutar de su lectura. Existen sin embargo dos preguntas que debemos hacernos antes de continuar. Dos cuestiones que han motivado el cambio de paradigma en nuestra relación con la tecnología:
- ¿Para qué voy a usar Linux si puedo usar Windows o Mac OSX?
- ¿Qué es el software libre?
Trata de elaborar una idea personal sobre estas dos preguntas antes de continuar leyendo. Una vez lo hayas hecho, te recomendamos encarecidamente que veas las dos charlas recogidas a continuación:
Charla TED ‘Más allá del software, software libre, Agustín Benito Bethencourt.
Comunicación de Richard Stallman ¿Software Libre o Software privativo? Software Privativo
Software libre
Texto extraído del curso de Vitalinux en Aularagón.
Una forma de comprender la grandeza de esta característica, la de ser código abierto, sería buscar un símil en otra área de conocimiento, como por ejemplo la cocina:
¿Qué sería una Cocina libre o Cocina Abierta? Una cocina abierta sería aquella donde tanto los ingredientes como el proceso de creación de un plato son de acceso público para que todo aquel que quiera reproducirlo con exactitud pueda hacerlo, dando libertad a poder modificar la lista de ingredientes o pasos a seguir en el proceso de creación, en el caso de considerar que puede mejorarse, y distribuir la nueva receta para que otros puedan disfrutar del nuevo plato confeccionado. Por contra, una cocina cerrada sería aquella donde ni la lista de ingredientes, ni el proceso a seguir puede hacerse pública, y por tanto, no esta permitida su distribución (sería necesario adquirir una licencia para ello) imposibilitando que públicamente pueda disfrutarse de ello, a menos que se pague.
Entonces ... ¿De qué viven aquellos cuyo trabajo gira en torno a la filosofía de código abierto? Para poder comprender este aspecto podríamos retomar el ejemplo de cocina abierta. En el caso de un restaurante que siguiera la filosofía de cocina abierta, sus cocineros podrían obtener beneficios por los siguientes motivos:
- Preparar los platos a clientes. Aunque los ingredientes y los pasos de preparación son públicos siempre existe un porcentaje de usuarios que preferieren que alguien les prepare el plato de cocina, antes de ponerse a cocinar ellos.
- Asesorar a otros restaurantes. Otros restaurantes, advirtiendo los platos que se preparan en el restaurante de código abierto, estarían dispuestos a pagarle para que les asesorasen a la hora de cocinar esos mismos platos u otros similares.
- Cursos de formación para formar a clientes y otros cocineros en su forma de cocinar. Clientes apasionados por el tipo de cocina que se cuece en el restaurante de código abierto podrían asistir a cursos de formación donde se les explicaría todos los entresijos necesarios.
- Donativos. Otros restaurantes y clientes, interesados en el tipo de cocina que crean los cocineros del restaurante de código abierto, estarían dispuestos a realizar donaciones económicas para que se siguiera creando y liberando nuevos platos de cocina, de los cuales se aprovecharían ellos más tarde.
Si se han entendido las diferentes fuentes de financiación que podrían darse en el caso de una cocina abierta, estas podrían extrapolarse a cualquier otro entorno de producción de código abierto, entre los cuales podrían distinguirse los relativos al software libre (sistemas operativos y aplicaciones libres), y al hardware libre (fabricantes de aparatos electrónicos donde se facilitan los planos y componentes para que cualquiera pueda fabricarse uno propio).
¿Qué es Linux?
Texto extraído del artículo GNU/Linux de Wikipedia.
GNU, también conocido como GNU/Linux, es el término empleado para referirse a la combinación del sistema operativo GNU, desarrollado por la FSF, y el núcleo(kernel) Linux, desarrollado por Linus Torvalds y la Linux Foundation. Su desarrollo es uno de los ejemplos más prominentes de software libre; todo su código fuente puede ser utilizado, modificado y redistribuido libremente por cualquiera bajo los términos de la GPL (Licencia Pública General de GNU) y otra serie de licencias libres.
A pesar de que Linux denomina en la jerga cotidiana al sistema operativo, este es en realidad solo el Kernel (núcleo) del sistema. La verdadera denominación del sistema operativo es "GNU/Linux" debido a que el resto del sistema (la parte fundamental de la interacción entre el hardware y el usuario) se maneja con las herramientas del proyecto GNU (www.gnu.org) y con entornos de escritorio (como GNOME), que también forma parte del proyecto GNU aunque tuvo un origen independiente. Como el Proyecto GNU destaca, GNU es una distribución, usándose el término sistema operativo en el sentido empleado en el ecosistema Unix, lo que en cualquier caso significa que Linux es solo una pieza más dentro de GNU/Linux. Sin embargo, una parte significativa de la comunidad, así como muchos medios generales y especializados, prefieren utilizar el término Linux para referirse a la unión de ambos proyectos.
Además, existen distribuciones de Linux que no tienen componentes GNU, por ejemplo Android, y distribuciones GNU que tienen núcleo distinto a Linux, por ejemplo Debian GNU/Hurd.
Para más información consulte la sección "Denominación GNU/Linux" o el artículo "Controversia por la denominación GNU/Linux".
A las variantes de esta unión de programas y tecnologías, a las que se les adicionan diversos programas de aplicación de propósitos específicos o generales se las denomina distribuciones. Su objetivo consiste en ofrecer ediciones que cumplan con las necesidades de un determinado grupo de usuarios. Algunas de ellas son especialmente conocidas por su uso en servidores y super computadoras, donde tiene la cuota más importante del mercado. Según un informe de IDC, GNU/Linux es utilizado por el 78% de los principales 500 servidores del mundo, otro informe le da una cuota de mercado de 89% en los 500 mayores supercomputadores. Con menor cuota de mercado el sistema GNU/Linux también se usa en el segmento de las computadoras de escritorio, portátiles, computadoras de bolsillo, teléfonos móviles, sistemas embebidos, videoconsolas y otros dispositivos.
Etimología: El acrónimo recursivo GNU, GNU's Not Unix (GNU no es Unix), proviene de las herramientas básicas de sistema operativo creadas por el proyecto GNU, iniciado por Richard Stallman en 1983 y mantenido por la FSF. El nombre Linux viene del núcleo Linux, inicialmente escrito por Linus Torvalds en 1991.
La contribución de GNU es la razón por la que existe controversia a la hora de utilizar Linux o GNU/Linux para referirse al sistema operativo formado por las herramientas de GNU y el núcleo Linux en su conjunto.
Historia
Texto extraído del artículo GNU/Linux de Wikipedia.
Richard Matthew Stallman, Fundador del Movimiento del software libre, de la FSF y del Proyecto GNU.
El sistema operativo Unix fue concebido e implementado en 1969 en los laboratorios Bell de AT&T en los Estados Unidos por Ken Thompson, Dennis Ritchie, Douglas McIlroy, y Joe Ossanna.11 Por primera vez en 1971, Unix fue escrito completamente en lenguaje ensamblador, ya que era una práctica común en el momento. Más tarde, en un enfoque innovador clave en 1973, se volvió a escribir en el lenguaje de programación C por Dennis Ritchie (a excepción del núcleo y sistema I/O). La disponibilidad de un lenguaje de alto nivel de implementación de Unix hizo su portabilidad a diferentes plataformas de computación más fácil.
El proyecto GNU, iniciado en 1983 por Richard Stallman, tiene el objetivo de crear un "sistema de software compatible con Unix" compuesto enteramente de software libre. El trabajo comenzó en el año 1984. Más tarde, en 1985, Stallman comenzó la Free Software Foundation y escribió la Licencia Pública General de GNU (GNU GPL) en 1989. A principios de la década de 1990, muchos de los programas que se requieren en un sistema operativo (como bibliotecas, compiladores, editores de texto, un shell Unix, y un sistema de ventanas) se completaron, aunque los elementos de bajo nivel, tales como los controladores de dispositivos y los daemons se estancaron y quedaron incompletos.
En este momento entra en juego Linus Torvalds, estudiante finlandés que en 1991 libera la pata que le faltaba a la silla: el kernel o núcleo. Él mismo declaró que si el núcleo de GNU hubiera estado disponible en ese momento, no se habría decidido a escribir el suyo propio.
En 1991, mientras asistía a la Universidad de Helsinki, Linus Torvalds se interesó por los sistemas operativos y, frustrado por la concesión de licencias que utilizaba MINIX que en ese momento se limitaba a uso educativo, comenzó a trabajar en su propio núcleo del sistema operativo, lo que eventualmente se convirtió en el núcleo de Linux.
A partir de ahí, los desarrolladores trabajaron para integrar componentes de GNU con el núcleo Linux, haciendo un sistema operativo completamente funcional y gratuita.
Linus Torvalds, creador del núcleo Linux.
Componentes
Entorno gráfico
GNU/Linux puede funcionar tanto en entorno gráfico como en modo consola. La consola es común en distribuciones para servidores, mientras que la interfaz gráfica está orientada al usuario final, tanto de hogar como empresarial. Asimismo, también existen los entornos de escritorio, que son un conjunto de programas conformado por ventanas, iconos y muchas aplicaciones que facilitan la utilización del ordenador.
Los escritorios más populares en GNU/Linux son: GNOME, KDE, LXDE, Xfce, [Unity](https://www.google.com/url?q=https://es.wikipedia.org/wiki/Unity_(entorno_de_escritorio)&sa=D&ust=1509364089106000&usg=AFQjCNGwjaTbMmUz4_53rn_C1sMo5eqL_w), MATE y Cinnamon.
Escritorio KDE SC 4.10
Escritorio GNOME 3.0
Escritorio XFCE 4.4
Escritorio LXDE 0.5
Como sistema de programación
La colección de utilidades para la programación de GNU es con diferencia la familia de compiladores más utilizada en este sistema operativo. Tiene capacidad para compilar C, C++, Java, Ada, Pascal, Python, Perl, entre otros muchos lenguajes. Además soporta diversas arquitecturas mediante la compilación cruzada, lo que hace que sea un entorno adecuado para desarrollos heterogéneos.
Hay varios entornos de desarrollo integrados disponibles para GNU/Linux incluyendo Sublime, Atom y Visual Studio Code. También existen editores como Emacs o Vim. GNU/Linux también dispone de capacidades para lenguajes de guion (script), aparte de los clásicos lenguajes de programación de shell, o el de procesado de textos por patrones y expresiones regulares conocido como awk, la mayoría de las distribuciones tienen instalado Python, Perl, PHP y Ruby.
Aplicaciones de usuario
Las aplicaciones para GNU/Linux se distribuyen principalmente en los formatos .deb y .rpm, los cuales fueron creados por los desarrolladores de Debian y Red Hat respectivamente. También existe la posibilidad de instalar aplicaciones a partir de código fuente en todas las distribuciones.
Software de código cerrado para GNU/Linux
Durante la primera época había pocas aplicaciones de código cerrado para GNU/Linux. Con el tiempo se fueron uniendo programas no libres al sistema GNU/Linux, entre ellos Adobe Reader, Adobe Flash, Opera, entre otros.
Distribuciones
Texto extraído del artículo Distribución Linux de Wikipedia.
Una distribución Linux (coloquialmente llamada distro) es una distribución de software basada en el núcleo Linux que incluye determinados paquetes de software para satisfacer las necesidades de un grupo específico de usuarios, dando así origen a ediciones domésticas, empresariales y para servidores. Por lo general están compuestas, total o mayoritariamente, de software libre, aunque a menudo incorporan aplicaciones o controladores propietarios.
Además del núcleo Linux, las distribuciones incluyen habitualmente las bibliotecas y herramientas del proyecto GNU y el sistema de ventanas X Window System. Dependiendo del tipo de usuarios a los que la distribución esté dirigida se incluye también otro tipo de software como procesadores de texto, hoja de cálculo, reproductores multimedia, herramientas administrativas, etc. En el caso de incluir paquetes de código del proyecto GNU, se denomina distribución GNU/Linux.
Existen distribuciones que están soportadas comercialmente, como Fedora, (Red Hat), openSUSE (Novell), Ubuntu (Canonical Ltd.) y Mandriva; distribuciones mantenidas por la comunidad, como Debian y Gentoo; y distribuciones que no están relacionadas con ninguna empresa o comunidad, como es el caso de Slackware.
Podeís encontrar una relación de las distros más utilizadas en este artículo de Linux Adictos.
¿Qué distribución escogemos?
Elegir la distro de Linux que vamos a usar siempre es un tema muy personal. En cualquier caso, recomendamos utilizar cualquiera de las distribuciones de Ubuntu o sus derivadas, como pueden ser Vitalinux, Linux Mint, Edubuntu, Kubuntu o Lubuntu.
Las diferencias entre ellas se limitan a la utilización de diferentes aspectos del entorno gráfico, siendo en todo lo demás muy similares. Las aplicaciones preinstaladas varían de una a otra, pero casi siempre podrás instalar la aplicación libre que eches en falta.
En el presente curso os mostraremos todos los pasos utilizando como ejemplo dos distribuciones: Vitalinux y Linux Mint. No obstante, podéis probar con cualquiera de las relacionadas anteriormente.
¿Por qué Vitalinux? Es probable que en tu centro educativo ya esté instalado y, puesto que esta distro es sencillamente Lubuntu + Migasfree, tendrás todo el potencial de Linux disfrutando del mismo entorno de trabajo tanto en casa como en el trabajo.
Por otro lado, tanto Linux Mint como Vitalinux son una muy buena opción si has sido usuario de Windows.