1. Sistemas operativos
Ya sabes que los ordenadores son máquinas de propósito general, puesto que de antemano no pueden realizar ninguna tarea que no les sea indicada por medio de un programa. También has estudiado que a los programas de ordenador se les denomina genéricamente software. Ese software se puede clasificar por su función en:
• Sistema operativo: Es un software que permite administrar los recursos de un ordenador.
¿Cuáles son estos recursos? la memoria, el procesador, los dispositivos de entrada/salida, los dispositivos de comunicación y datos y los medios de almacenamiento masivo. En realidad el sistema operativo no es un solo programa, sino que lo forman una gran variedad de estos, de manera que cada uno tiene una misión asignada y todos juntos colaboran entre sí para conseguir que nuestro ordenador funcione, también hace de interfaz entre el hardware y el resto de software que utilizamos. También es misión del sistema operativo proporcionar una interfaz de línea de comando o una interfaz gráfica al usuario, para que este último se pueda comunicar con el ordenador.
• Programas de aplicación: Es el software que se superpone al sistema operativo y se aprovecha de él para proporcionarnos las diferentes funcionalidades que le vamos a pedir a nuestro sistema informático. Por ejemplo un programa de aplicación podría ser una hoja de cálculo o el navegador Web que estás utilizando para seguir este curso. Sin el sistema operativo proporcionando acceso a los recursos del ordenador (pantalla, impresora, memoria, procesador, etc.) y controlando todos los procesos, los programas de aplicación no podrían funcionar.
Nos interesa hablar de los sistemas operativos
Un sistema operativo es un programa que actúa como intermediario entre el usuario y el hardware del ordenador y su propósito es proporcionar el entorno en el cual el usuario pueda ejecutar programas. Entonces, el objetivo principal de un sistema operativo es, lograr que el sistema informático se use de manera cómoda, y el objetivo secundario es que el hardware del computador se emplee de manera eficiente
Nos vamos a centrar en el sistema operativo Linux
2. ¿Qué es Linux?
En 1987 el profesor Andrew S. Tanenbaum escribió un libro sobre diseño de sistemas operativos.
Como parte de ese libro el profesor Tanenbaum escribió un sistema operativo sencillo pero completo para ejemplificar los contenidos, además publicó el código fuente en un apéndice del
libro.
Aquel sistema se llamó Minix y simulaba a UNIX sobre un ordenador personal de la época.
Empezaron a aparecer seguidores de aquel sistema operativo hecho para aprender. Uno de aquellos seguidores se llamaba Linus Torvalds, un estudiante de informática finlandés.
Torvalds decidió modificar Minix para utilizar las características del microprocesador 80386 de Intel. Su idea tuvo mucho éxito y con el apoyo de cientos de programadores de todo el mundo unidos por Internet el fenómeno se propagó rápidamente constituyendo lo que hoy conocemos como Linux, un clónico de UNIX con licencia GNU.
El software distribuido bajo licencia GNU puede ser modificado y vuelto a distribuir siempre que se acompañe del código fuente, además de otras condiciones. Pero lo importante es que siempre se acompaña el código fuente, esto hace que un programador pueda continuar o perfeccionar el trabajo de otro. Esto se conoce como software libre.
Hoy día GNU/Linux se ha convertido en una alternativa real a sistemas operativos comerciales y se utiliza cada vez más en entornos empresariales, educativos, de organizaciones gubernamentales y domésticos.
3. Tipos de software por su licencia de uso
En este punto conviene aclarar cuáles son los distintos tipos de licencias que nos podemos encontrar en el software y nos ayudará a situar a Linux en su lugar, comparándolo con otras alternativas.
• Software comercial: El desarrollado por una empresa con intención de venderlo. Un ejemplo de software comercial puede ser el paquete ofimático Microsoft Office. Hay que aclarar que un software puede ser libre y al mismo tiempo comercial, como por ejemplo el sistema gestor de bases de datos MySQL. El cual, aunque es software libre, dependiendo del uso al que se destine puede ser comercial.
• Software libre: El que puede ser distribuido, modificado, copiado y usado. No hay que confundirlo con software gratis. El matiz está en la difusión del código fuente. En está categoría se encuentra GNU/Linux y todas las distribuciones de Linux, como por ejemplo Guadalinex, y los programas que vienen con ellas.
• Software semilibre: En este caso se imponen algunas restricciones, normalmente para usarlo en entornos empresariales, mientras que para usuarios domésticos mantiene las condiciones del software libre. Un ejemplo puede ser el software de encriptación de correo electrónico PGP.
• Software propietario: Aquél que prohíbe su redistribución, modificación y copia. Se puede utilizar con el pago de licencias de uso a sus fabricantes. En esta categoría encontraremos a la mayor parte del software que se utiliza, en concreto a toda la familia de sistemas operativos Windows o el paquete ofimático Office de Microsoft.
• Freeware: Se puede utilizar libremente pero su código fuente no está disponible. Existen multitud de programas con este tipo de licencia que pueden obtenerse fácilmente desde Internet, un ejemplo puede ser el cliente de correo Pegasus Mail.
• Shareware: Se permite su redistribución y copia, pero no se acompaña de código fuente y además suele tener alguna limitación de uso temporal. Se utiliza para distribuir programas de forma que se puedan probar antes de comprar la licencia de uso. Un ejemplo típico podría ser el compresor de ficheros Winzip.
4.Distribuciones Linux
Existen muchos "Linux", cada uno con nombres diferentes (Debian, Mandrake, Red Hat, SuSE, etc.). A esto se les llama distribuciones de Linux.
En realidad, y si hablamos de forma estricta, Linux sólo es el núcleo del sistema (kernel). Pero el núcleo por sí sólo no es capaz de ofrecer casi ninguna funcionalidad al usuario. El núcleo de un sistema operativo se encarga de las labores más básicas (pero muy importantes) de acceso al hardware, control de procesos, entrada/salida, etc.
Los programas de aplicación utilizan el núcleo del sistema para utilizar esa funcionalidad básica que proporciona. Por otra parte los programas de aplicación (procesadores de texto, hojas de cálculo, programas de dibujo, navegadores de Internet, etc.) no se consideran una parte del sistema operativo.
Se conoce como distribución de Linux a la unión del kernel Linux junto con programas de aplicación que aporten funcionalidad para el usuario final. Todo esto se empaqueta en uno o varios CD o incluso se pone a disposición de todos a través de Internet.
Existen cientos de distribuciones, unas tienen un propósito general y otras en cambio están orientadas a una labor muy concreta (seguridad, cortafuegos o firewall, etc.). Unas están desarrolladas por empresas, otras por instituciones, e incluso algunas por programadores independientes. A continuación se listan algunas de las distribuciones con más difusión en la actualidad. con enlace a las páginas donde se pueden obtener.
Debian. http://www.debian.org Knoppix. http://www.knoppix.org LinEx. http://www.linex.org
Guadalinex. http://www.guadalinex.org Ubuntu Linux. http://www.ubuntu-es.org
Gentoo. http://www.gentoo.org/doc/es/index.xml Mandriva. http://wiki.mandriva.com/es/
Red Hat Linux. http://www.redhat.es Fedora Core. http://www.redhat.es/fedora SuSE. http://www.novell.com/es-es/linux/suse Slackware. http://www.slackware.com/
5.Guadalinex
La Junta de Andalucía ha promovido una distribución de Linux bautizada como Guadalinex. Es un proyecto ambicioso que pretende implantar la filosofía del software libre en la administración andaluza. Esta distribución está a disposición de cualquiera que lo desee y en la actualidad se utiliza
en centros de enseñanza y organismos dependientes de la Junta de Andalucía.
Se puede descargar desde la página oficial de la distribución www.guadalinex.org u obtener un CD con la misma.
5.1.Trabajando con el escritorio de Guadalinex
Como todos los sistemas operativos modernos Guadalinex ofrece un interface de usuario en modo gráfico basado en el concepto de escritorio. Esto quiere decir que podremos interactuar con el sistema por medio de ratón, teclado y pantalla gráfica. En la pantalla encontraremos los habituales elementos de otros sistemas operativos como Windows o Mac OS X, nos referimos a iconos, accesos directos, paneles, papelera, etc.
En Guadalinex (y en general en Linux) se pueden utilizar escritorios diferentes (al contrario que ocurre en otros sistemas operativos) y la elección del escritorio la podremos hacer nosotros en función de nuestros gustos o necesidades. Esto es así porque el escritorio es una parte separada del núcleo del sistema y por lo tanto independiente. En la actualidad los dos escritorios más utilizados en Linux son GNOME y KDE. Guadalinex utiliza por defecto GNOME, pero sería posible cambiarlo si ése fuera nuestro deseo.
5.2. Escritorios: GNOME o KDE
Los escritorios más extendidos y utilizados, además de ser los proyectos más maduros y funcionalmente más completos. Nos referimos a GNOME y KDE.
Ambos se parecen en la idea conceptual y utilizan los consabidos elementos gráficos para interactuar con ellos, aunque como es natural ofrecen diferencias que pueden hacer que nuestro gusto se incline por uno u otro, incluso es posible instalar ambos en nuestro sistema.
Hay que destacar que por debajo de los escritorios y antes de llegar al núcleo o kernel del sistema existe un paso intermedio que es el manejador de gráficos de Linux, éste se llama X Windows y son las rutinas básicas para hacer funcionar la tarjeta de video o establecer la resolución de pantalla y profundidad de color. Podríamos decir que el escritorio "se entiende" con X Windows y éste a su vez "habla" con el kernel.
Para saber más
Te sugerimos que visites los siguientes enlaces para conocer a fondo los proyectos de escritorio más utilizados en las distribuciones Linux. Estos enlaces a las páginas oficiales de los escritorios GNOME y KDE te permitirán conocer sus características y poder compararlos mejor.
Página oficial del proyecto GNOME Página oficial del proyecto KDE
Ya sabemos que Guadalinex utiliza por defecto GNOME y éste será el escritorio que veremos en detalle a continuación.
5.3.Elementos del escritorio
En el escritorio nos encontramos diseminados los iconos que dan acceso a las aplicaciones asociadas al hacer doble clic de ratón.
Aparecen iconos propios del escritorio y además podremos crear nuestros propios iconos para lanzar aplicaciones. Por detrás aparece el fondo de escritorio o tapiz que como es natural podremos cambiar a nuestro gusto.
Arriba y abajo aparecen dos barras horizontales llamadas paneles, además podremos definir nuestros propios paneles.
6. Administración y configuración del sistema
6.1. Linux es multiusuario
El sistema incorpora elementos para separar el trabajo de cada usuario conforme a unos requerimientos de seguridad, rendimiento y acceso a recursos. Se debe garantizar por el sistema que todos los usuarios puedan trabajar y lo hagan en las mejores condiciones. El sistema operativo Linux exige al usuario que se identifique antes de comenzar una sesión, desde ese momento Linux le otorgará su nivel de acceso y quedarán determinados aspectos tales como las aplicaciones que está autorizado a ejecutar o el espacio de disco que puede usar, además de muchos otros.
La identificación de un usuario contra el sistema se hace por medio de un nombre de usuario (login) y una palabra de paso o contraseña (password). Todos los usuarios están obligados a identificarse.
Nota: Si utilizamos una distribución Live CD no se nos preguntará ningún login y password. En este caso se utiliza de forma automática un usuario genérico. Cuando hagamos la instalación en disco duro observaremos que sí se nos solicita identificación. No hay que olvidar que Live CD es un método orientado al aprendizaje y prueba. De forma que se obvian algunos elementos propios del sistema para simplificar su uso.
6.2. Usuarios y grupos
Linux distingue dos tipos de usuarios, el superusuario o root y todos los demás.
• El superusuario será la persona que administre el sistema y tendrá derechos plenos sobre éste. Podrá crear a otros usuarios, borrarlos, instalar aplicaciones, configurar dispositivos y en general realizar todas las tareas que supongan administración y configuración del sistema.
• El usuario root se crea en la instalación de Linux y no puede borrarse, su login es root y tampoco puede cambiarse. En una instalación de Linux la contraseña o password de root debería ser el secreto mejor guardado, puesto que con ella se puede hacer TODO.
• El resto de los usuarios tendrán capacidades limitadas de utilización del sistema ajustadas a su nivel de uso o requerimientos de funcionalidad. Será root quien asigne esas capacidades.
Todos los usuarios tendrán asignado un directorio de trabajo, llamado HOME, donde dispondrán de plenos derechos sobre los archivos. Fuera de ese directorio sus derechos vendrán determinados por su nivel de acceso.
Los usuarios se clasifican en grupos, de forma que todos los usuarios de un mismo grupo pueden compartir derechos de acceso comunes a archivos y directorios. Esto facilita la administración de los usuarios, sobre todo en sistemas con un alto número de estos.
6.3. Directorios, ficheros y unidades de disco Una de las responsabilidades del sistema operativo es:
• la gestión de los medios de almacenamiento,
• su organización
• y puesta en servicio para los usuarios del sistema.
Los datos se organizan en directorios (o carpetas) y se almacenan en archivos.
La mayoría de las versiones de Linux actuales utilizan el sistema de ficheros Ext3, el cual incorpora muchas características de seguridad, velocidad e integridad de datos que no estaban presentes en el anterior sistema de ficheros Ext2. La más importante es que incorpora journaling, esto quiere decir que ante una caída o cierre no limpio del sistema (corte de luz, bloqueo, fallo de hardware, etc.) la recuperación es más rápida y segura que con los sistemas anteriores.
Acceso a las unidades de disco
Una característica de Linux que lo hace diferente de otros sistemas operativos como los de la familia Windows de Microsoft, es que para estandarizar el uso de dispositivos todos ellos son tratados como archivos, aunque en muchos casos sean archivos ficticios.
Por ejemplo el teclado y el ratón son ficheros para el sistema, en ellos se lee información y también se escribe.
Los discos duros, las disqueteras, las unidades de CD ROM y DVD y los dispositivos de almacenamiento USB también están representados por un fichero que hace referencia a ellos y por el cual se comunican con el sistema operativo.
En Linux no existe el concepto de unidad de almacenamiento, sino que ésta se hace corresponder con un archivo. El contendido de la unidad de almacenamiento será accesible a través de ese archivo, lo que leamos del archivo lo estaremos leyendo de la unidad y lo que escribamos en el archivo lo estaremos escribiendo en la unidad.
A la acción de asignar un archivo a una unidad de almacenamiento se le llama "montar" y cuando queramos dejar de utilizarla la deberemos "desmontar".
Hay unidades que se montan automáticamente en el arranque del sistema y se desmontan también automáticamente en el apagado, como ocurre con la partición raíz del disco duro. En cambio otras unidades (especialmente las removibles como disquetes y CD ROM) deberemos indicar el montaje y desmontaje de forma explicita, aunque actualemente ya hay muchas distribuciones que lo hacen de forma automática.
Estructura de directorios
Todas las instalaciones Linux utilizan una estructura de directorios muy similar. En esta jerarquía de directorios que comienza por el directorio raíz, representado por el símbolo "/", podemos encontrar, al menos, los siguientes directorios:
/bin: Contiene los ejecutables básicos del sistema operativo.
/sbin: Aquí se encuentran los ejecutables del sistema que sólo pueden ser utilizados por root o usuarios autorizados por éste.
/dev: Contiene todos los ficheros de dispositivo, de los que ya hemos hablado.
Por ejemplo fd0 es la disquetera, stdin es el teclado, psaux es el ratón, hda es el primer disco duro.
/boot: Contiene los ficheros de arranque del sistema, en concreto el núcleo o kernel.
/etc: Este importante directorio contiene todos los archivos de configuración del sistema, por ejemplo hostname contiene el nombre de nuestro ordenador, fstab contiene la lista de unidades que se pueden montar, gnome contiene la configuración del escritorio GNOME.
/root: Éste es el directorio de trabajo del superusuario root.
/lib: Las librerías de programación usadas por las aplicaciones.
/mnt: Aquí se suelen montar las unidades de almacenamiento.
/home: Contiene un subdirectorio por cada usuario del sistema, ese
subdirectorio tiene el mismo nombre que el login del usuario que lo utiliza.Es el directorio de trabajo del usuario, también conocido como directorio
HOME.
/usr: Aquí se suelen instalar las aplicaciones de la distribución.
/tmp: Un directorio de uso temporal.
/var: Directorio con los archivos log y de trabajo de muchas de las aplicaciones instaladas.
Rutas y nombres de archivos y directorios
Como es natural cada archivo o directorio debe tener un nombre único, al menos en el subdirectorio donde se encuentra.
Linux permite que los nombres de archivo contengan casi cualquier carácter (aunque deberíamos evitar el espacio en blanco).
Es importante hacer notar que Linux distingue entre mayúsculas y minúsculas, por lo tanto dos archivos llamados "linux" y "Linux" serían considerados diferentes.
Las rutas para designar la ubicación de un archivo o directorio se comienzan por el directorio raíz y se van enumerando los distintos subdirectorios hasta llegar al archivo deseado separándolos con el signo "/". Por ejemplo para llegar al archivo "hola.txt" ubicado en el directorio HOME del usuario
"mperez", la ruta sería: /home/mperez/hola.txt. Se puede hacer referencia al directorio actual con
"." Y al directorio anterior con "..".
Permisos
Ya sabemos que Linux es multiusuario y que pretende garantizar la confidencialidad y seguridad de los datos almacenados. Por ello establece un sistema de permisos de archivos y directorios que regule el uso y modo de acceso de los mismos por parte de los usuarios.
El sistema es simple pero eficaz, consiste en separar el nivel de acceso en tres grupos:
• Permisos del usuario que creó al archivo o directorio, propietario.
• Permisos de los usuarios del mismo grupo que el propietario.
• Permisos del resto de usuarios.
Para cada nivel de acceso se tienen a su vez tres tipos de permiso:
• Lectura (r)
• Escritura (w)
• Ejecución (x)
Cualquier archivo puede tener uno de ellos o una combinación de ellos diferente para cada nivel de acceso. Se expresan en ese orden y si falta algún permiso se expresa con el signo "-".
Por ejemplo un archivo de un directorio podría tener los permisos "rwxr-x--x", lo cual querría decir:
que el propietario puede leer, modificar y ejecutar, pues tiene rwx
los usuarios del mismo grupo que el propietario pueden leer y ejecutar, pues en el segundo grupo de tres letras aparece r-x (no podrá escribir pues no tiene w)
y los demás usuarios sólo pueden ejecutar el archivo, pues en el tercer grupo de letras aparece –x Hay que darse cuenta que en Linux no basta con que un programa sea ejecutable, también debemos tener permisos para su ejecución.
Toda esta información la almacena y gestiona por el sistema operativo en el sistema de ficheros y es el pilar básico de la seguridad en Linux.
7. Instalación de Guadalinex en disco duro
Para sacar el máximo partido al sistema deberemos instalarlo en el disco duro de nuestro ordenador.
Esto supone realizar ciertas tareas previas y conocer algunos detalles del funcionamiento del disco duro de un ordenador y el proceso de arranque del mismo.
Un poco de teoría sobre arranque y particiones
Antes de empezar a estudiar cómo instalar Linux en un ordenador es imprescindible conocer qué ocurre cuando encendemos un ordenador hasta que tenemos un sistema operativo funcionando y listo para ser para ser usado. Esto se conoce como arranque del sistema o boot.
1. Encendido eléctrico: Cuando encendemos un ordenador pulsando el botón power del frontal estamos dando paso a la energía eléctrica hasta los circuitos de la máquina. Lo primero que ocurre es un chequeo general por el cual el propio ordenador comprueba que todos los elementos (memoria, disco, teclado, ratón, etc.) están presentes y funcionan sin problemas
2.Búsqueda de un MBR (Master Boot Record): Si el chequeo anterior ha sido positivo, un pequeño programa almacenado en la memoria ROM del ordenador toma el control y busca algún sistema operativo que cargar en memoria. La búsqueda del sistema operativo a cargar se hace en el orden indicado en la configuración de la BIOS del ordenador (normalmente primero busca en CD, luego en disco duro, disquetera, USB). Si suponemos que el sistema operativo está en el disco duro (lo cual es la situación normal) el programa cargador de la ROM cede el control al MBR . Esto es una parte del disco duro que contiene la rutina de arranque del sistema operativo.
3. Ejecución del gestor de arranque: Una vez que el MBR ha tomado el control pueden ocurrir dos cosas.
1. Si sólo hay un sistema instalado en el ordenador se comienza la carga y ejecución del mismo.
2. Si existen varios sistemas operativos instalados se nos presentará un menú donde se nos pregunta qué sistema operativo queremos arrancar. En Guadalinex se utiliza el gestor de arranque GRUB.
¿Cómo es posible que existan varios sistemas operativos instalados?
La respuesta a esta pregunta es fácil. En un disco duro se pueden establecer particiones, que no son otra cosa que divisiones internas del disco, de forma que cada una puede contener sistemas de archivos diferentes y sistemas operativos diferentes. Hay que tener en cuenta que nunca podremos ejecutar varios sistemas al mismo tiempo, pero sí elegir cuál queremos ejecutar en cada momento.
Una vez que un sistema ha arrancado habrá que pararlo para ejecutar otro.
Existen dos tipos de particiones: primarias y lógicas:
• Partición primaria: Es arrancable y puede haber hasta 4 en un disco duro típico.
• Partición extendida: No es arrancable y contiene en su interior otras particiones que sí pueden ser arrancables con el gestor de arranque adecuado. Sólo puede haber una en un disco duro. A las divisiones internas se les llama particiones lógicas.
En Linux los discos duros se nombran como:
• hda (primer disco duro), hdb (segundo disco duro), hdc (tercer disco duro), etc.
• Dentro de cada disco duro las particiones se nombran como hda1 (primera partición
primaria del primer disco duro), hda2 (segunda partición primaria del primer disco duro), etc.
• Como sólo puede haber 4 particiones primarias, las particiones que estén dentro de una partición extendida se nombran como hda5 (primera partición lógica de la partición extendida), hda6 (segunda partición lógica de la partición extendida), etc.
Ahora puedes instalar una distribución Linux en tu ordenador.
En Internet hay muchas guías de cómo instalarlo. Te recomiendo Ubuntu.
Una drección de cómo realizar la instalación:
http://sliceoflinux.com/2009/04/23/instalar-ubuntu-904-paso-a-paso/