Post on 30-Mar-2016
description
Oscar Anaya Flores | Taller de Sistemas Operativos 1
Software Libre (características)
Es el software que viene con permiso para que cualquiera lo use, copie y
distribuya, ya sea como está o con modificaciones, ya sea gratis o con un costo.
En particular, esto significa que el código fuente debe estar disponible. Sin código
fuente no es software libre.
En inglés, la palabra "free" se refiere a libertad, no a precio. En español tenemos
la fortuna de tener dos palabras diferentes para cada concepto: libre y gratis. Esta
libertad se refiere a la libertad del usuario para ejecutar, copiar, distribuir, estudiar,
cambiar y mejorar el software. Con mayor precisión, nos referimos a cuatro tipos
de libertad:
La libertad de ejecutar el software, con cualquier propósito (libertad 0)
La libertad de estudiar cómo funciona el programa, y adaptarlo a sus necesidades
(libertad 1)
La libertad de distribuir copias del programa, de modo que usted pueda ayudar a
su vecino (libertad 2).
La libertad de mejorar el programa y proporcionar las mejoras al público, de modo
que se beneficie a la comunidad completa (libertad 3)
Frecuentemente el software libre es más robusto que el software no-libre.
Software de dominio público
El software de dominio público es software sin "copyright". Es un tipo especial de
software libre. La desventaja de este tipo de software es que versiones
modificadas pueden no ser libres.
A veces la gente usa el término "dominio público" para referirse a "disponible
gratuitamente", pero "dominio público" es un término legal que significa,
precisamente, sin "copyrigth".
Software de Código Abierto
El término "Open Source" es de reciente creación, y es utilizado para dar más o
menos el mismo sentido que el software libre. Sin embargo, no es software libre.
El significado evidente para "código abierto" es "se puede ver el código fuente".
Otros programas semi-libres, como xv, e inclusive algunos programas propietarios
como qt permiten ver el código fuente.
Oscar Anaya Flores | Taller de Sistemas Operativos 2
Muchas compañías han abrazado esta filosofía, que para ellos se lee como
"permite a los usuarios ver el código fuente y ellos arreglarán los errores". Pero "el
programa" sigue siendo de "la compañía".
Software semi-libre
El software semi-libre no es software libre, pero el usuario tiene permiso de usarlo,
copiarlo y distribuirlo sin fines de lucro. PGP es un ejemplo de software semi-libre.
El software semi-libre es mejor que el software propietario, pero aún así presenta
problemas. El software debe ser para todos, incluyendo los negocios, no
solamente para las escuelas y los aficionados.
Software propietario
El software propietario es aquel que no es libre ni semi-libre. Su uso, redistribución
o modificación están prohibidos, o requieren la solicitud de un permiso.
Software "copylefted"
El software "copylefted" es software libre cuyos términos de distribución no
permiten la adición de ninguna restricción al redistribuir o modificar el software.
Esto significa que cada copia de el software, aún si ha sido modificado, debe ser
software libre.
Los desarrolladores de software propietario usan el derecho de copia (copyright)
para quitarle libertad al usuario. De allí que la Fundación del Software Libre
invierta el concepto utilizando el "copyleft", garantizando que todos los usuarios
obtengan la misma libertad.
Software comercial
El software comercial es software desarrollado por una empresa con el propósito
de ganar dinero por el uso del software. ¡El software comercial y el software
propietario no son la misma cosa! Casi todo el software comercial es propietario,
pero hay software comercial libre, y también software no-comercial no-libre.
Oscar Anaya Flores | Taller de Sistemas Operativos 3
Historia y evolución del software libre
Historia
Como lo conocemos actualmente, se remonta a inicios de los años 1980, época
en la que la mayoría de software era privativo y surgió la necesidad, por parte de
algunos programadores, de crear proyectos que impulsaran la creación de
software libre. Cabe mencionar que antes, cuando las
primeras computadoras nacieron (y por ende los primeros programas
informáticos), el software tenía un modelo de desarrollo cooperativo, similar al de
otras ciencias como la física; esto empezó a cambiar en los años 1960 y los años
1970, cuando nacieron las primeras compañías que «privatizaron» su código.2
Es importante señalar que el software libre y de código abierto, no debe ser
confundido con el llamado "freeware"; el software libre y de código abierto suele
ser gratuito, lo que puede llevar a confusión. El FOSS (acrónimo en inglés
para free and open source software) también puede ser comprado y vendido. La
confusión es aún mayor en países de habla inglesa por la ambigüedad de la
palabra free que significa tanto libertad, como gratuidad.
Esta es una línea del tiempo acerca de cómo el software libre y de código
abierto ha existido y evolucionado desde su concepción.
Hace unos 15 años, el mundo de la informática parecía estar dividido respecto al
Software Libre al menos en dos bandos, unos que decían que todo el software
debía ser libre, mientras que otros lo veían como una moda destinada a
desaparecer. Hoy con las aguas algo más quietas podemos mirar hacia atrás y
reír de esos tiempos en que nos volvimos locos cada uno con su bandera. A
diferencia del fin de la guerra fría que fue marcado claramente por la caída del
Muro de Berlín, la lucha entre el software libre y el software privativo fue
aquietándose lentamente y fueron muchos los eventos que nos llevaron a donde
estamos hoy en día.
El software libre dejó hace mucho tiempo de ser una preferencia personal,
simplemente es muy difícil ser productivo sin recurrir al software que se ha creado
colaborativamente, de eso no se escapa hoy ninguna empresa que quiera
sobrevivir en el mercado, desde la más modesta startup hasta gigantes como
Oracle o Apple.
Oscar Anaya Flores | Taller de Sistemas Operativos 4
Evolución
1983 : Richard Stallman anuncia en Usenet la creación del proyecto GNU.
1984 : Se crea el X Window System, la piedra fundacional de las interfaces
gráficas para Unix, utilizando una licencia de código abierto y dirigido por una
organización independiente. Su naturaleza abierta ayuda a que sea aceptado
como un sistema gráfico estándar por los fabricantes de la época, al pasar los
años necesitará un remezón que lo sacará de su estancamiento para convertirse
en un sistema gráfico revolucionario.
1985 : Richard Stallman crea la Free Software Foundation. Es aquí donde se
estudian y definen las licencias de software que sirvieron de base para garantizar
la libertad del software creado como Software Libre de aquí en adelante. Su
licencia más famosa, la General Public License o GPL.
1987 : Stallman y otros colaboradores crean GCC o GNU Compiler Collection, la
herramienta de compilación por excelencia de los proyectos de código abierto,
usada hasta el día de hoy en alguna de sus encarnaciones.
1991 : Linus Torvalds publica la primera versión de Linux, el componente que le
faltaba al proyecto GNU: Un kernel. A partir de este momento se desencadena la
famosa “dominación mundial” del código abierto.
1994 : Rasmus Lerdorf crea el lenguaje PHP, inicialmente llamado Personal Home
Page Tools. Permitió que la creación de páginas web se democratizara, ayudando
a que un programador promedio fuera capaz de trabajar a gusto con estas
tecnologías. Parafraseando al mismísimo Rasmus: Si fuera un requisito ser
experto en el lenguaje C o Perl para crear páginas dinámicas, hoy la web sería
muy distinta.
1995: La empresa sueca MySQL AB crea la base de datos MySQL. Eliminando
características que son utlizadas sólo por algunas aplicaciones, crean una base de
datos simple, liviana y fácil de usar que se convierte rápidamente en el motor de
miles de sitios web.
1995: Se crea el servidor web Apache. Junto a Linux, MySQL y PHP causaron
una explosión de nuevos sitios web, creándose la mítica combinación LAMP
(Linux/Apache/MySQL/PHP). Desde su lanzamiento, Apache ha sido el servidor
web más utilizado en el mundo, tanto respecto al total de servidores activos como
Oscar Anaya Flores | Taller de Sistemas Operativos 5
al grupo de los sitios web más importantes del mundo. Sin LAMP probablemente a
Mark Zuckerberg se le hubiese hecho más difícil crear Facebook.
1995: Sergey Brin y Larry Page comienzan a trabajar en lo que hoy conocemos
como Google. En vez de utilizar grandes y caros computadores con un Unix
propietario deciden distribuir todo el procesamiento en miles de equipos pequeños
con Linux (el año 2000 eran 6.000 equipos con Red Hat Linux).
1995: Amazon.com vende su primer libro. La empresa se convierte rápidamente
en la tienda online más grande del mundo, y al mismo tiempo, la base de datos
más grande del mundo, migrando completamente a Linux el año 2005 con el
apoyo de Oracle. Hoy en día no solamente venden libros, música y otros
“tangibles” sino que también convirtieron en realidad lo que hoy conocemos como
computación en la nube, permitiendo que cualquier persona pudiera comprar o
arrendar poder computacional sin necesidad de preocuparse de un datacenter.
1996: Matthias Ettrich funda el proyecto KDE. Se trata de un esfuerzo para
estandarizar la forma en que se ven y se comportan las aplicaciones gráficas en
sistemas operativos basados en Unix (Linux, FreeBSD y otros). El concepto luego
fue conocido como “entorno de escritorio”. KDE es el puntapié inicial al
refinamiento de las interfaces gráficas de los sistemas de código abierto,
eliminando el caos y simplificando la forma en que se crean y usan las
aplicaciones. Sin que sea su propósito el proyecto entrega la base para lo que se
convertirá en el fin del reinado de Internet Explorer (ver Webkit).
1997: Motivados por las restricciones de licencia de KDE, Miguel de Icaza y
Federico Mena crean el proyecto GNOME. Se trata de un entorno de escritorio
completamente libre que ayudará a la rápida adopción de Linux y otros sistemas
en base al uso de una interfaz gráfica. GNOME ayuda a establecer los estándares
que hasta el día de hoy son parte de los sistemas de escritorio basados en
software libre.
1997: Id Software libera el código fuente de Doom. Si bien se libera el código
cuando ya no es relevante (Quake II es de 1997), este evento marca el inicio de lo
que se convertirá en una tradición para Id Software. Al liberar el código de sus
juegos Id Software logró que los desarrolladores novatos pudieran aprender de
estas verdaderas joyas, y al mismo tiempo convirtió a estos juegos en “eternos”.
Durante los años, el legado de Id Software ha sido mejorado y mantenido por
desarrolladores independientes que han resuelto los problemas dados por el paso
del tiempo, resolviendo incompatibilidades, agregando nuevas características y
adecuando el código para aprovechar el hardware moderno. Para los interesados
Oscar Anaya Flores | Taller de Sistemas Operativos 6
en el tema les dejo este link a un blog de análisis de código de Quake y otros. De
nada.
1998: Gartner Group refiriéndose a sistemas de código abierto declara que “estos
sistemas operativos no serán usados en aplicaciones comerciales de la industria
en los próximos 3 años, ni tendrán soporte de aplicaciones de terceros”.
1998: Netscape da por perdida la batalla de los navegadores y decide publicar el
código fuente de Netscape Navigator, creando el proyecto Mozilla. Se trata de
una de las liberaciones de código más importantes. Aunque Mozilla queda
relegado a un nicho por varios años, volverá a la batalla con el
navegador Firefox años después. Esta historia contada por sus propios
protagonistas se puede ver en el documental Code Rush.
1999: VA Linux sale a la bolsa de valores, generando la apertura más
espectacular a la fecha. Las acciones salieron a la venta en USD$30 llegando a un
peak de USD$320 para terminar en USD$250 al final de la jornada. Si bien es un
hecho que llama la atención, hay que recordar que se da en el contexto de
la burbuja puntocom, cuando las apuestas eran muy altas pero no se sabía
exactamente cual era el sustento tras ellas. La emoción del momento se puede
revivir en el reporte de CNBC (segmento del documental Revolution OS).
Ver en YouTube
2001: Apple crea Webkit a partir del código de KHTML (KDE). Webkithoy es el
motor de render HTML más utilizado en el mundo, no solamente por medio de los
productos de Apple, sino que también a través de Android y Google Chrome en los
escritorios. La masificación de los equipos móviles con WebKit hizo que los
desarrolladores de sitios y aplicaciones web dejaran de utilizar la excusa de
“funciona en Internet Explorer, el que usan todos”. Webkit y su masificación
ayudaron a empujar no solo la evolución y la estandarización de la web, sino que
también forzaron a la competencia a retomar esfuerzos y mejorar
considerablemente la tecnología detrás de los navegadores web.
2001: Nace Wikipedia. Si bien no se trata de un software propiamente tal,
Wikipedia logra su éxito usando como base fundacional los conceptos del
Software Libre respecto a su apertura, libre distribución y evolución en base al
refinamiento del conocimiento experto. Por lo mismo, no es de extrañar que el
software que potencia Wikipedia - llamado Wikimedia - también sea abierto.
2001: IBM declara que invertirá USD$1 billón en Linux. Si bien para el usuario
normal puede parecer un simple evento de negocio, las consecuencias de este
hecho son dramáticas. Conocido es el hecho de que “a ningún gerente lo
Oscar Anaya Flores | Taller de Sistemas Operativos 7
despedirían por escoger IBM”, y el espaldarazo de IBM al sistema de código
abierto hizo que justamente los gerentes perdieran el miedo de contar con Linux
en sus datacenters.
2003: Oracle, el fabricante de base de datos más grande del mundo anuncia
Unbreakable Linux, una iniciativa para ayudar a la adopción de Linux como
sistema operativo de su base de datos en sistemas de misión crítica. A la larga el
apoyo de Oracle (e IBM) fue lo que hizo desaparecer a Unix, transformándolo
en un sistema irrelevante para la gran mayoría de las empresas. No es por nada
que SCO, una de las empresas que basaban su negocio en vender Unix
demandara a IBM tratando de declarar ilegal a Linux. Demanda que hoy se
recuerda como uno de los grandes fiascos de la industria.
2004: Se libera la primera versión del navegador Mozilla Firefox. Se puede decir
que este navegador surgió de las cenizas de Netscape Navigator, demostrando
que se podía construir como Software Libre un navegador liviano, potente, con
características innovadoras, de rápida evolución y por sobre todas las anteriores:
Seguro. Si bien no logró destronar por si sólo al estancado Internet Explorer, hizo
que mucha gente perdiera el miedo de usar otro navegador y fue el primer
empujón que hizo tambalear al navegador de Microsoft.
2004: Se libera la primera versión de Ubuntu Linux. Aunque no es el primer
esfuerzo serio de acercar el sistema operativo de código abierto al usuario medio
(recordemos Mandrake), es el primero que tiene un éxito indiscutido. Basado
en Debian, la distribución más completa de Linux, se convierte rápidamente en el
favorito de los nuevos usuarios, eliminando las dificultades que muchos usuarios
encontraban al instalar y usar este sistema operativo. Es tanto su dominio que
muchos usuarios nuevos hablan simplemente de Ubuntu y no de Ubuntu Linux.
Canonical, la empresa detrás de Linux fue fundada por Mark Shuttleworth - quien
se hizo millonario gracias a Linux - partió como una especie de agradecimiento a
la comunidad del código abierto y hoy en día se prepara para extender su dominio
a los teléfonos y tablets a través de una versión unificada de Ubuntu.
2006: Nicolás Negroponte crea el proyecto Un computador por niño(One Laptop
Per Child/OLPC). Se trataba de un computador de bajo costo basado en Software
Libre. La idea era entregar un computador a niños en países en vías de desarrollo
como apoyo a la educación al mínimo costo posible. Independiente del éxito de la
iniciativa, el proyecto hizo evidente que había interés por equipos más baratos
y más portátiles que pudieran realizar tareas simples pero enriquecedoras, dando
origen a la revolución de los netbooks y como segunda derivada, la revolución de
los tablets y el establecimiento de la era post-pc.
Oscar Anaya Flores | Taller de Sistemas Operativos 8
2006: Dave Reveman publica XGL, la primera implementación que lleva al
hardware actual los conceptos propuestos por Jim Gettys y Keith Packard en el
2004 para reformular el sistema gráfico de Linux, esfuerzo inspirado en la
tecnología Quartz Extreme de Apple. Con XGL se comenzó a usar la
aceleración de hardware 3D para dibujar la interfaz gráfica, marcando el punto
de inflexión entre el estancado sistema gráfico X Window System y los nuevos
entornos de escritorio. XGL y su famoso cubo no sólo fascinó a los usuarios de
Linux sino que también hizo que muchos se interesaran a tener “el cubo”. Como
contexto, Microsoft publica Windows Vista el año siguiente, aplicando técnicas
similares.
2007: 95% de los escritorios y servidores usados para crear efectos especiales y
animaciones en Hollywood están basados en Linux. Éxitos como Shrek, The
Matrix y Titanic estuvieron entre las primeras películas creadas sobre sistemas
basados en Linux, un esquema que terminó arrastrando a todo Hollywood.
2008: Samsung lanza su primer televisor basado en Linux. Se trata de una serie
de televisores utilizando Linux como sistema operativo. Hoy día los principales
fabricantes de televisores conectados a Internet (SmartTV) utilizan
Linux como sistema operativo, ya sea utilizando su propia plataforma o a través
de Google TV, el derivado de Android orientado a televisión.
2008: Google lanza el primer teléfono con sistema operativo Android. Basado
en Linux y otros componentes de código abierto, Android se convierte rápidamente
en el sistema operativo de preferencia de los fabricantes de equipos móviles,
permitiéndoles enfocarse en el hardware para desarrollar teléfonos con un
ecosistema de miles de aplicaciones compatibles.
2013: Valve, una de las plataformas de distribución de videojuegos más grande
del mundo anuncia que concentrará sus esfuerzos en Linux, y anuncia un sistema
operativo derivado llamado SteamOS. Como consecuencia natural se espera que
este evento marque el compromiso definitivo de los principales fabricantes de
tarjetas de video con el sistema operativo de código abierto por excelencia.
Oscar Anaya Flores | Taller de Sistemas Operativos 9
Estructura de Linux (Ubuntu)
Es vital conocer la estructura interna del sistema que utilicemos para poder tener
absoluto control sobre las operaciones que realizamos sobre él. Además de
familiarizarnos mejor con el entorno, resulta tremendamente útil a la hora de
buscar un archivo específico.
En Linux existen diversos directorios y subdirectorios que cumplen esta labor.
Librerías, binarios, programas instalados, archivos temporales, etc., se encuentran
contenidos en sitios específicos donde podemos ubicarlos si precisamos en algún
momento de ellos.
Oscar Anaya Flores | Taller de Sistemas Operativos 10
A continuación daré una breve reseña sobre ellos:
/
Directorio raíz donde se encuentran todos los directorios y archivos de una
manera lógica.
/bin
En este directorio podemos encontrar todos los archivos ejecutables del sistema.
En el están muchos de los comandos que usamos habitualmente como por
ejemplo ls, cat, more, cp, tar … además de los de tus programas.
/home
Aquí se encuentran todos los archivos de los usuarios del sistema. Si mi nombre
de usuario es kiefer seria /home/kiefer
/media
Generalmente aquí es donde se montan los Cds y Dvds además de los SticksUSB
y discos duros externos.
/sbin
Contiene archivos ejecutables que por lo general son comandos usados para la
administración del sistema. Los comandos mount, halt, umount y shutdown son
algunos de ellos.
/usr
Contiene varios archivos y subdirectorio importantes como pueden ser las
configuraciones del entorno grafico X, fuentes del kernel, librerias, juegos y un
largo etc.
/boot
Todos los archivos necesarios para el arranque incluidos el cargador Grub y los
kernels disponibles.
/mnt
Directorio vacío, normalmente se suele usar para montajes de unidades
temporales que deseamos cargar en ese momento.
/var
Oscar Anaya Flores | Taller de Sistemas Operativos 11
Contiene varios archivos que definen el sistema así como archivos log que
almacenan cada movimiento del sistema como por ejemplo el fichero
/var/log/messages.
/cdrom
Normalmente es un enlace simbólico hacia /media/cdrom
/dev
Aquí es donde están todos los drivers y los dispositivos, estos se identifican en
forma de archivo.
/lib
Contiene librarias para C y otros lenguajes de programación.
/proc
Directorio que contiene información sobre diferentes partes del sistema, cpu,
discos, tiempo uptime, irqs, memoria, etc …
/opt
En este directorio se suelen almacenar todos los archivos de una instalación fuera
de los repositorios como puede ser cuando instalamos un .deb
/etc
Contiene prácticamente todos los archivos de configuración del equipo y los
demonios de inicio en /etc/init.d entre otras cosas.
/lost+found
Directorio específico para archivos perdidos. Cada partición tiene el suyo propio
independientemente.
/root
Directorio particular del supe usuario del sistema ( root )
/tmp
Directorio temporal que pueden usar todos los usuarios para archivos temporales
y del sistema.
Oscar Anaya Flores | Taller de Sistemas Operativos 12
Requerimientos de Instalación
Un DVD de Ubuntu o si lo prefieres una memoria/llave USB.
Un computador con mínimo 1GB de RAM y 2,1 GHz de procesador
Se recomienda que tu tarjeta de vídeo sea NVIDIA, ATI o INTEL
Para una instalación completa se requiere mínimo de 10 GB en disco
Para los computadores portátiles se recomienda estar conectados a la corriente al
momento de la instalación.
Ubuntu
Última actualización: Thursday 22 May 2014 21:20 GMT
OS Type: Linux
Basado en: Debian, Ubuntu
Origen: Isle of Man
Arquitectura: armhf, i686, powerpc, x86_64
Escritorio: Unity
Categoría: Beginners, Desktop, Server, Live Medium
Estado: Activo
Popularidad: 2 (2,242 Visitas diarias)
Ubuntu es un completo sistema operativo Línux de escritorio, disponible
gratuitamente con soporte tanto de la comunidad como profesional. La comunidad
Ubuntu está construida sobre las ideas consagradas en el Manifiesto de Ubuntu:
Que el software debe estar disponible libre de cargos, que las herramientas
informáticas deben ser usables por gente en su propia lengua y a pesar de
cualquier discapacidad, así como el que la gente debe poseer la libertad de
Oscar Anaya Flores | Taller de Sistemas Operativos 13
personalizar y modificar sus programas en cualesquier forma que les parezca.
"Ubuntu" es una antigua palabra africana que significa "humanidad para los otros".
La distribución Ubuntu trae el espíritu de Ubuntu al mundo del software.
Distribución Ubuntu
Página principal http://www.ubuntu.com/
Listas de correo http://lists.ubuntu.com/mailman/listinfo/
Foros de usuarios http://ubuntuforums.org/
Documentación https://wiki.ubuntu.com/UserDocumentation
Capturas de pantalla LinuxScreenshots.org
Espejos de descarga http://www.ubuntu.com/desktop/get-ubuntu/download
Rastreador de errores https://bugs.launchpad.net/
Oscar Anaya Flores | Taller de Sistemas Operativos 14
Fuente de información:
http://xml.cie.unam.mx/xml/Linux/glinux-
1.html#ss1.1http://congresos.nnb.unam.mx/sites/default/files/TIB2014/Introd
uctiontoLinux-Georgios.pdf
http://distrowatch.com/table.php?distribution=ubuntu