Download Introducción al Sistema Operativo Linux

Document related concepts

Núcleo Linux wikipedia , lookup

Linux International wikipedia , lookup

Distribución Linux wikipedia , lookup

Controversia por la denominación GNU/Linux wikipedia , lookup

Historia de Linux wikipedia , lookup

Transcript
UNIVERSIDAD MICHOACANA DE SAN NICOLÁS DE HIDALGO
FACULTAD DE INGENIERIA ELECTRICA
Introducción al Sistema Operativo Linux
Laboratorio
de
Herramientas
Computacionales
R.M.J.
Lab.Juárez
Herramientas Computacionales
M.I. Rosalía Mora
1
FEBRERO DE 2010
OBJETIVOS
Descubrir las peculiaridades de un proceso de arranque dual y el
inicio y cierre de una sesión Linux.
Reconocer los elementos del escritorio de Gnome.
Gestionar con soltura las aplicaciones y las ventanas.
Organizar los archivos personales en la estructura de directorios de
LINUX.
Utilizar la terminal en modo texto.
• Buscar aplicaciones elementales.
R.M.J.
Lab. Herramientas Computacionales
2
LINUX es un núcleo de sistema operativo basado en UNIX y
bajo licencia GNU, y es el producto de la cooperación de
numerosos desarrolladores de diferentes partes del mundo.
LINUX es una implementación de libre distribución para
computadoras personales (PC), servidores, y estaciones de
trabajo.
Fue desarrollado para el procesador Intel 386. Actualmente
soporta los procesador Intel, así como AMD y Cyrix. También
soporta máquinas basadas en SPARC, DEC Alpha,
PowerPC/PowerMac, Mac y Motorola 680x0.
R.M.J.
Lab. Herramientas Computacionales
3
DEFINICIONES
kernel
Se llama
al núcleo del sistema operativo de UNIX. El
núcleo contiene el código que se encarga de las interrupciones, los
manejadores de dispositivos de bajo nivel y parte del manejo de la
memoria.
El shell constituye el intérprete de órdenes del sistema
operativo UNIX. Aunque no es más que un programa de utilidad, es
la interfaz de UNIX para comunicación con el usuario. LINUX utiliza
el mismo shell como interprete.
R.M.J.
Lab. Herramientas Computacionales
4
UN POCO DE HISTORIA
Richard Stallman
Linus B. Torvalds
Andrew Tanenbaum
R.M.J.
Lab. Herramientas Computacionales
5
Free Software Fundation
Richard Stallman fundó la Free Software
Fundation con el objetivo de crear y difundir el uso de
programas libres, basados en la siguiente filosofía:
En
1985
“el software es una parte de la ciencia y como tal, debe ser
compartido libremente por toda la humanidad; los programas se
pueden copiar, usar y modificar sin más restricción que respetar
su autoría”.
Para ello, los programas se distribuyen con el código fuente, y se
sustiyuye el copyright por el copyleft.
R.M.J.
Lab. Herramientas Computacionales
6
GNU
El proyecto principal de la Free Software Fundation es la
creación de un sistema operativo compatible con UNIX, pero
totalmente libre. Este proyecto se llama GNU3, acrónimo de
“GNU’s not UNIX”.
GNU consta de multitud de programas, en constante desarrollo
y expansión, pero adolece de un núcleo bien depurado y
operativo, ya que su núcleo ha pasado por muchos problemas
en su desarrollo.
La unión del núcleo de LINUX con GNU fue un éxito
inmediato, y pronto se distribuyeron juntos, formando lo que se
conoce como GNU/LINUX.
R.M.J.
Lab. Herramientas Computacionales
7
Linus Benedict Torvalds
Nació en Helsinki, Finlandia, en 1969 y empezó a
"trabajar" con computadoras desde los 10 años.
En 1988 entró a la Universidad y conoció a Andrew
Tanenbaum, quien había desarrollado un sistema
operativo didáctico basado en UNIX al que llamó
MINIX.
Linus entró a formar parte de la comunidad de usuarios de MINIX, pero éste
era un sistema operativo demasiado limitado, además de que los derechos de
MINIX fueron cedidos a Prentice Hall y para usar MINIX se cobraba 150
dólares por licencia.
En enero de 1991 compró su primer PC, una Intel 386 y aquí empieza la
historia de LINUX.
R.M.J.
Lab. Herramientas Computacionales
8
Nacimiento de LINUX como
sistema operativo
En el verano de 1991; Linus tuvo la necesidad de bajar algunos archivos,
por lo que se vio en la necesidad de desarrollar un sistema de archivos
que leyera y escribiera en las unidades de disco.
Se encontró que necesitaba los drivers, (códigos que comunican al
kernel con los periféricos), así que se puso en contacto con otros usuarios
a través del Newsgroup de su universidad.
Linus utilizó el sistema operativo MINIX para realizar procesos muy
simples: escribió un programa que emulara una terminal con dos procesos
simultáneos para el Newsgroup y sin proponérselo, ya tenía para entonces
el kernel, que es la parte del sistema operativo que administra los
recursos.
R.M.J.
Lab. Herramientas Computacionales
9
Con el tiempo, Linus fue modificando periódicamente su kernel, de manera
que pudiera ser capaz de ejecutar aplicaciones GNU. Así fue que nació el
nuevo sistema operativo.
Inicialmente, Linus solicitó que su sistema operativo se llamara FREAX:
FRee (gratis) + frEAk (fenómeno anormal) + X (UNIX)
Sin embargo, al administrador del servidor FTP de la Universidad de
Tecnología de Helsinki no le gustó el nombre, y decidió ponerle el nombre
de trabajo de Torvalds:
Linus + X (UNIX) = LINUX
LINUX no habría pasado de ser un experimento interesante si su creador no
lo hubiera mencionado en el Newsgroup y si tampoco hubiera seguido la
sugerencia de compartirlo con otros usuarios.
R.M.J.
Lab. Herramientas Computacionales
10
Hasta enero de 1992 existían escasamente 100 usuarios de la
versión 0.02 de LINUX. Estos primeros usuarios proporcionaron
valiosa información y observaciones al sistema operativo,
desarrollando incluso los parches de los errores encontrados.
La colaboración de todos dio como resultado que en marzo de
1994 se liberara la versión 1.0, en cuyos créditos se cuentan a más
de 100 personas.
Actualmente LINUX se usa en mas de 120 países y en la mayoría
de las universidades del mundo, ya que por tratarse de un software
libre, su crecimiento y potencial es prácticamente ilimitado.
R.M.J.
Lab. Herramientas Computacionales
11
LINUX es software Libre
Software Libre no se refiere al precio o costo, se refiere a la libertad
de acceso al código fuente y su posibilidad de mejorarlo.
LINUX es software libre porque su codificación está a la disposición de
cualquiera que desee aprenderlo, modificarlo, mejorarlo e incluso incluir
nuevas herramientas.
El software que es colocado en el dominio público puede ser atrapado y
puesto en programas no libres. Cualquier mejora hecha después se pierde
para la sociedad. Para mantenerse libre, el software no debe presentar
derechos de autor o estar licenciado.
El software con licencia y sin costo es comúnmente una campaña de
mercado para promover un producto o para conducir a la quiebra a una
compañía más pequeña. No hay garantía de que seguirá siendo libre.
Consultar http://www.debian.org/intro/free.es.html para más información.
También http://www.gnu.org/ para conocer sobre las licencias GNU.
R.M.J.
Lab. Herramientas Computacionales
12
Distribuciones de LINUX
Una distribución es el trabajo de un conjunto de programadores que engloban
programas y aplicaciones, de modo que nos facilitan el trabajo de la instalación, la
configuración y el mantenimiento de un sistema GNU/LINUX.
Inicialmente, las distribuciones se limitaban a recopilar software libre, empaquetarlo en
disquetes o CD-ROM y redistribuirlo o venderlo.
Actualmente las distribuciones son empresas que compiten entre sí por incluir lo
último en software, con instalaciones gráficas capaces de autodetectar el hardware y
que instalan un sistema entero en unos cuantos minutos.
Además del núcleo Linux, las distribuciones incluyen bibliotecas y herramientas del
proyecto GNU, y el sistema de ventanas X Window. 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.
Más información: http://es.wikipedia.org/wiki/Distribuci%C3%B3n_Linux
R.M.J.
Lab. Herramientas Computacionales
13
Las tres tareas básicas de una distribución, y que además diferencian
unas de otras, son:
Recopilar todos los programas que consideren interesantes,
normalmente cientos o miles.
Crear un programa de instalación, que deje el ordenador listo para
trabajar.
Disponer de un sistema de control de software que lleve a buen
término la tarea de añadir, actualizar o borrar programas del
sistema.
Algunas distribuciones cobran una modesta cantidad a cambio del
costo de los materiales (CD y manuales), el transporte y la asistencia
técnica.
Todas las distribuciones permiten la descarga en Internet y la copia de
versiones de prueba, que son perfectamente operativas.
R.M.J.
Lab. Herramientas Computacionales
14
Debian Esta distribución está auspiciada por la Free Software Fundation
y por tanto no es comercial. La mantienen unos mas de mil voluntarios de
todo el mundo.
Red Hat Esta compañía estadounidense fue la primera distribución que
cotizó en bolsa. Tiene contactos comerciales con muchos grandes fabricantes
de hardware y software. Distribuye a FEDORA.
Slackware Esta distribución es una de las más antiguas.
SuSE La distribución de esta compañía alemana tiene un gran éxito en
Europa. Sólo es libre la versión de evaluación, de un único CD-ROM.
R.M.J.
Lab. Herramientas Computacionales
15
Ubuntu es una antigua palabra africana que significa "humanidad hacia
los demás".
Ubuntu también significa "soy lo que soy debido a lo que todos somos". La
distribución Ubuntu LINUX trae el espíritu del concepto Ubuntu al mundo del
sofware.
Ubuntu es perfecto para personas que nunca han utilizado Linux, por su
facilidad de instalación, amplio reconocimiento de dispositivos, robustez y
facilidad de manejo.
Incorpora todas las aplicaciones fundamentales que cualquier usuario básico
necesita para trabajar con una computadora.
Se puede bajar de Internet y distribuir libremente.
R.M.J.
Lab. Herramientas Computacionales
16
¿Qué programas incluye Ubuntu?
Ubuntu incluye más de 1.000 paquetes entre los cuales se incluyen:
El kernel 2.6 de linux y Gnome 2.10 (gestor de ventanas).
Aplicaciones: procesador de texto, hoja de cálculo y navegador para
Internet.
Un servidor web.
Clientes de correo electrónico.
Varios lenguajes y herramientas de programación.
Juegos.
Todo ello incluído en el CD de instalación.
Además, a través de Internet, tenemos acceso a más de 1.300 paquetes con
soporte completo por parte de Ubuntu, y más de 16.000 paquetes de
terceros.
R.M.J.
Lab. Herramientas Computacionales
17
Ventajas de LINUX
Precio. Debido a que su licencia es GNU, podemos descargarlo
gratuitamente desde Internet o comprarlo a un precio muy accesible.
Requerimientos. Actualmente los sistemas operativos necesitan mucha
máquina y recursos del sistema para ejecutarse con fluidez, LINUX, al poder
funcionar exclusivamente en modo texto sin la necesidad de cargar un
entorno gráfico puede ejecutarse en cualquier máquina a partir de un
procesador Intel 386.
Estabilidad. Al tener su núcleo basado en UNIX, hereda la estabilidad
caracteristica de los sistemas UNIX.
Seguridad. A nivel de servidor podemos encontrar que la seguridad de
LINUX frente a otros servidores del mercado es mucho mayor.
Compatibilidad. Reconoce la mayoría de otros sistemas operativos en
una red.
R.M.J.
Lab. Herramientas Computacionales
18
Multitarea real. Es posible ejecutar varias aplicaciones y procesos
simultáneamente.
Velocidad. Debido a la multitarea real que incorpora, y que no es
necesario cargar su entorno gráfico para ejecutar servicios o aplicaciones,
hacen que su velocidad sea muy superior a los actuales sistemas operativos.
Código Fuente. El paquete incluye el código fuente, por lo que es
posible modificarlo y adaptarlo a nuestras necesidades libremente.
Entorno de Programación. Es ideal para la programación, inclusive se
puede programar para otros sistemas operativos.
Crecimiento. Su crecimiento, gracias a la licencia GNU, el código
abierto, y la gran comunidad de miles de programadores, es de los más
rápidos que existen en la actualidad.
R.M.J.
Lab. Herramientas Computacionales
19
Desventajas de LINUX
Soporte.
Si se baja en forma gratuita, no se tiene soporte de la
compañía que lo distribuye. Sin embargo, algunas distribuciones dan
soporte por teléfono, email, foros, etc.
Simplicidad. No es tan fácil de usar como otros sistemas operativos.
No obstante, algunas distribuciones están mejorando su facilidad de uso,
gracias al entorno de ventanas, sus escritorios y las aplicaciones diseñadas
específicamente para él, cada día resulta más sencillo su integración y uso.
Software. No todas las aplicaciones Windows se pueden ejecutar bajo
LINUX. A veces es difícil encontrar una aplicación equivalente a alguna de
Windows y que tenga soporte para el español.
Hardware. No todo el hardware funciona en LINUX. Los dispositivos
propietarios, donde el fabricante no pone disponibles las especificaciones
de operación, no tienen drivers en LINUX. Tampoco funcionan todos los
dispositivos nuevos, pues se requiere tiempo para que algún programador
escriba los drivers.
R.M.J.
Lab. Herramientas Computacionales
20
Diferencias entre Windows y LINUX
LINUX, a diferencia de Windows, tiene multitarea real y es multiusuario.
Posee un esquema de seguridad basado en usuarios y permisos de
lectura, escritura y ejecución establecidos a los archivos y directorios. Esto
significa que cada usuario es propietario de sus archivos, y otro usuario no
puede acceder a estos archivos. Esta propiedad no permite el contagio de
virus entre archivos de diferentes usuarios.
GNU/LINUX es ideal para su utilización en un ambiente de trabajo
porque:
Al ser software libre, no existe el costo de las licencias, y una
copia del sistema GNU/LINUX puede instalarse en tantas
computadoras como se necesite.
Existen utilidades para el trabajo en oficina, que son compatibles
con las herramientas de la serie MS-Office.
R.M.J.
Lab. Herramientas Computacionales
21
Iniciar sesión en LINUX
MODO GRÁFICO
MODO TEXTO
Permite trabajar con hasta 7 consolas,
accesando con F1... F7
Red Hat Linux release 9
Emplea el X Window System, o
XWindows. GNOME y KDE son
los dos tipos GUI (interfase
gráfica de usuario).
Kernel 2.4.18-14 on an i686
[Localhost]$
startx
Localhost login:
R.M.J.
Lab. Herramientas Computacionales
22
El escritorio de LINUX
• Inicio
• Panel de control
• Personalizar el escritorio gráfico
• Preferencias de pantalla.
• Atajos del teclado
• Configurar fecha y hora
• Montar y desmontar unidades de disco
• Navegador para Internet
• Nueva Terminal
• Aplicaciones
Entre muchas otras...
R.M.J.
Lab. Herramientas Computacionales
23
Aplicaciones
Categoría
Aplicación recomendada
Equivalentes
Procesadores de texto
OpenOffice.org Word
KWord
Hojas de cálculo
OpenOffice.org SpreadSheet
Gnumeric, KSpread
Presentaciones
OpenOffice.org Presentation
KPresenter, MagicPoint
Diagramas
Dia
Kchart, Kivio, XFig
Diseño gráfico
GIMP, (KPaint)
Icon Editor (K Icon
Editor)
Visualizadores de imágenes
GThumb
Visualizador de
imágenes (Kuickshow)
Editores de texto
Gedit
vi, Emacs
Clientes de correo
electrónico
Evolution
Kmail, Mozilla Mail,
mutt
Navegadores
FireFox
Mozilla, Galeon,
Konquerer, links, lynx
Chat/Mensajes
Instant Messenger (GAIM)
X-Chat, Chatzilla
Visualizadores de
PDF/PostScript
xpdf
Ghostview
R.M.J.
Lab. Herramientas Computacionales
24
Cámaras
digitales/Escaners
Herramienta para la cámara digital
(gtKam), para escanear (XSane)
Programa para
escanear y OCR
(Kooka), GIMP
PDAs
Jpilot
KPilot, Evolution
Grabación de CDs
CD Creator, cdrecord, X-CD-Roast
KOnCD
Finanzas personales
Gnucash
Fax
Fax Viewer (KFax)
Sonido y vídeo
Audio Player (XMMS), Reproductor
de CD (GNOME CD), Grabador de
Sonido (GNOME Sound),Control de
volumen (VUMeter)
R.M.J.
Lab. Herramientas Computacionales
Reproductor de CD
de KDE, aumix,
Mezclador de
sonidos KDE, KMid
25
Finalizar sesión de LINUX
MODO GRÁFICO
MODO TEXTO
Finalizar sesión:
Para finalizar la sesión,
seleccionar “Terminar sesión”
[Localhost]$
exit
[Localhost]$
Ctrl D
Para apagar la computadora,
seleccionar “Apagar”
Apagar la computadora:
[Localhost]$
R.M.J.
halt
Lab. Herramientas Computacionales
26
Sistema de archivos en LINUX
El sistema de archivos de LINUX se basa en el sistema operativo UNIX. Su
organización es de forma jerárquica o de árbol invertido, que comienza por
la raíz.
A diferencia de Windows, en LINUX debemos olvidarnos de la estructura
de unidades identificadas por letras. En LINUX no existen unidades sino un
sistema de archivos único.
Todas las unidades, locales y remotas (compartidas en una red local), se
sitúan en la misma estructura de directorios.
El directorio principal se denomina
root
o raíz, y se simboliza mediante
una barra /.
R.M.J.
Lab. Herramientas Computacionales
27
Diagrama del Sistema de
archivos en LINUX
/root
/etc
/home
/lib
/bin
/sbin
/dev
/mnt /tmp
/usr
/var /proc /boot
/tmp
/local
R.M.J.
Lab. Herramientas Computacionales
28
Descripción de algunos archivos de LINUX
/boot
contiene los archivos de arranque del sistema.
/home
es el directorio que alberga las cuentas de usuario. Normalmente,
aparece un directorio para cada usuario autorizado del sistema.
Los usuarios pueden estar organizados por grupos. Tampoco es necesario
que todas las cuentas estén en la máquina local. Es muy frecuente que este
directorio enlace con la computadora y el directorio real que contienen las
cuentas de usuarios.
/usr
es un archivo para los datos estáticos, usualmente donde se instalan
todos los programas.
/dev contiene los accesos a los dispositivos de entrada y salida. Para LINUX,
cada dispositivo tiene un archivo asociado a través del cual se maneja.
/etc contiene archivos de configuración, administrativos y bases de datos del
sistema
R.M.J.
Lab. Herramientas Computacionales
29
Descripción de algunos archivos de LINUX
/mnt
es el punto de montaje en el que se unen los dispositivos de
almacenamiento para acceder a su contenido. Habitualmente, en los entornos
actuales, los dispositivos se montan automáticamente y el usuario no tiene
que estar pendiente de que estén accesibles en los directorios
correspondientes.
/lib, /usr/lib
contienen librerías de programas.
/bin, /usr/bin, /sbin
contienen aplicaciones o ejecutables empleados
para la administración del sistema.
/tmp, /var/tmp contienen archivos temporales.
/var contiene archivos y directorios variables en contenido.
/proc tiene el sistema de archivos virtual en memoria.
Este directorio
contiene una referencia por cada proceso activo en el sistema.
R.M.J.
Lab. Herramientas Computacionales
30
Protección de archivos
La protección de archivos en LINUX se maneja por medio de una cadena de
permisos de nueve caracteres. Los nueve caracteres se dividen en tres
grupos de tres caracteres cada uno.
RWX
1
RWX
2
RWX
3
1. Especifica los permisos del dueño del archivo.
2. Especifica los permisos para aquellos
usuarios que pertenecen al mismo grupo de
trabajo que el dueño.
3. Indica los permisos para el resto del mundo.
En cada grupo de tres caracteres pueden aparecer las letras RWX en el
orden indicando:
R
W
X
R.M.J.
Permiso de leer (READ).
Permiso escribir (WRITE)
Permiso para ejecutar (EXECUTE).
Lab. Herramientas Computacionales
31