LABORATORIO 01:INTRODUCCION AL SISTEMA OPERATIVO LINUX
1.1 | Introducción |
1.2 | Kernel |
1.3 | Estructura de directorios |
1.4 | Intérprete de Comandos |
1.5 | Permisos |
1.6 | Comandos Básicos |
1.7 | Práctica |
LINUX es un sistema operativo desarrollado bajo la filosofía de código abierto, es decir que cualquier persona puede reconfigurar y programar el núcleo (kernel). Linux posee los mejores perfiles característicos para un sistema operativo, es multiproceso, es decir que puede funcionar en equipos con múltiples procesadores; multiusuario, pues permite que un equipo pueda ser compartido por varios usuarios, cada uno con un perfil y restricciones específicas; es multitarea, porque el usuario puede trabajar en varias aplicaciones simultáneamente y contiene prácticamente todos los protocolos para la comunicación de redes.
El entorno de Linux tiene algunas modificaciones generadas a partir de las denominadas distribuciones, que son una colección de software libre y a veces software propietario, utilizando el Kernel de Linux que han desarrollado algunas empresas.
Algunos ejemplos de distribuciones de Linux son:
* Debian y sus distribuciones :Knoppix, Gnoppix, Morphix, LinEx,
Guadalinex...
* Gentoo
* Lindows
* Mandrake
* Red Hat
* SuSE
* Tomsrtbt: Linux en un disquete
* Xandros
La mascota de Linux es un pingüino llamado Tux, creado por Larry Ewing.
Figura 1.1 El pingüino Tux
El kernel (también conocido como núcleo) es aquella parte de un sistema operativo que interactúa de forma directa con el hardware de una máquina. Entre las funciones principales del kernel se encuentran:
El software por su parte puede comunicarse con el kernel por medio de llamadas
al sistema, las cuales le indican al kernel que realice tareas como abrir y
escribir un archivo, ejecutar un programa, finalizar un proceso u obtener la
fecha y hora del sistema.
Para Linux, los directorios más allá del concepto de carpeta destinada a almacenar archivos, son un archivo mas que posee enlaces a otros archivos. Cuando se listan los archivos, generalmente, los directorios serán desplegados en color azul.
A continuación se describe la estructura de directorios más común del sistema operativo Linux:
/ Directorio raiz. Donde comienza el árbol de directorios
/boot: Mantiene el kernel e información indispensable para el arranque del sistema.
/bin: Mantiene unos pocos programas que estarán disponibles incluso en los modos de ejecución más restringidos (e.g. bash, cat, ls, login, ps).
/sbin: Mantiene programas disponibles sólo para el administrador incluso en los modos de ejecución más restringidos (e.g fsck, getty, halt).
/usr: Programas accequibles a usuarios finales y datos de estos programas que no requieren ser modificados (datos de sólo lectura). Algunos de sus subdirectorios son:
/lib: Librerías de funciones comunes a varios programas (algunas como libc indispensables para todos).
/usr/X11R6: El sistema X-Window, versión 11 distribución 6.
/local: Otros programas y datos compilados por el administrador i.e no provienen de paquetes Debian. En algunos sistemas otros programas se ubican en /opt.
/mnt: Directorio para montar disquettes, CD-ROMs y otros sistemas de archivos o dispositivos.
/proc: Diversos canales de comunicación con algunos programas (por ejemplo con el kernel).
/lib: Librerías indispensables y módulos (especialmente requeridas durante el arranque del sistema).
/etc: Archivos de configuración de diversos programas.
/dev: Abstracciones a los dispositivos conectados (o que podrían conectarse) al computador.
/home: Mantiene información de los usuarios del sistema.
/root: Mantiene información del administrador del sistema.
/tmp: Archivos temporales creados por algunos programas, que serán borrados por el sistema operativo durante el arranque.
/var: En este directorio los programas que lo requieran pueden mantener archivos que deban modificarse frecuentemente. Algunos de sus subdirectorios son: mail donde se mantienen colas de correo de cada usuario, log que mantiene bitácoras, run con archivos que mantienen los números de los procesos iniciados al arrancar el sistema, spool colas de impresión y de otros programas, tmp archivos temporales (más persistente que /tmp).
Para la visualización de archivos y directorios generalmente se usa un Administrador de Archivos, que es un programa que provee acceso a archivos y facilita el realizar operaciones con ellos, como copiar, mover o eliminar archivos. En Linux existen gestores de archivos como Midnight Commander (Interfaz de Símbolos); Nautilus (gestor de archivos del proyecto GNOME) y Konqueror (gestor de archivos del proyecto KDE).
Empleando el administrador de archivos, verá que puede
organizar los nombres de sus archivos en directorios. Puede mover un archivo
de un directorio a otro seleccionándolo con el puntero del ratón
y arrastrándolo, es decir moviendo el ratón manteniendo presionado
el botón izquierdo; arrastrando directorios o nombres de archivos creará
nuevos iconos. Puede copiar archivos de la misma forma como los mueve pero manteniendo
presionada la tecla Control, o alternativamente puede emplear opciones de los
menús ---por ejemplo la opción "Copiar" y posteriormente
la opción "Pegar". Puede borrar un nombre de archivo o un directorio
seleccionándolo y presionando la tecla Supr (o Del si su teclado es en
inglés) o alternativamente después de seleccionar puede escoger
una opción apropiada de un menú ---por ejemplo "Cortar".
Para renombrar un archivo o un directorio después de seleccionarlo presione
nuevamente el botón izquierdo o alternativamente busque la opción
"Renombrar" entre los menús del administrador de archivos o
emplee el botón derecho una vez el puntero esté sobre el archivo.
Al emplear el administrador de archivo descubrirá que sólo puede
escribir o leer de ciertos directorios, esto ocurre por un sistema de permisos
que se explicará más adelante, por lo pronto basta que sepa que
su directorio personal (donde usted tiene permiso para leer, escribir y cambiar
permisos) es un directorio dentro del directorio /home, es el directorio cuyo
nombre es su login ---el nombre completo de su directorio es entonces de la
forma /home/sulogin.
Al abrir una ventana de Terminal o de intérprete de comandos siempre estará ubicado en un directorio llamado directorio de trabajo y que cuando inicie una sesión corresponderá a su directorio personal. Puede examinar su directorio de trabajo con el comando pwd, puede emplear el comando cd para cambiarse de un directorio a otro y puede examinar el contenido de un directorio con el comando ls. Por ejemplo el comando cd / lo ubicara en el directorio raiz, si teclea entonces pwd verá /, al teclar ls verá algo como:
bin cdrom etc home lib mnt root tmp var
boot dev floppy initrd lost+found proc sbin usr vmlinuz
que corresponde al contenido del directorio raíz --en este caso sólo contiene directorios. Si teclea cd home pasará al directorio home ---también puede pasar a ese directorio con cd /home.
Para brindar algo de privacidad y protección cada archivo o directorio tiene asociados permisos diferentes para el dueño, para el grupo y para los demás usuarios. En el caso de archivos los permisos que pueden darse o quitarse son: (r) lectura, (w) escritura y (x) ejecución. En el caso de directorios los permisos son: (r) para listar los archivos, (w) para escribir, crear o borrar archivos y (x) para acceder a archivos del directorio.
Desde un administrador de archivos, puede ver los permisos de un archivo con el botón derecho del mouse cuando el puntero está sobre el archivo, escogiendo la opción apropiada del menú que aparece. Desde un interprete de comandos puede emplear el comando ls con la opción -l. Un ejemplo del resultado de este comando se presenta a continuación:
-rw-r--r-- 1 nediaz Docentes 22016
Jul 29 16:07 2004-02 Horario Semanal.xls
-rw-r--r-- 1 nediaz Docentes 38194 Jul 30 09:23 Contenidos.zip
drwxr-xr-x 5 nediaz Docentes 4096 Aug 1 20:06 web
La primera línea muestra un archivo (el guión inicial lo indica), la segunda línea muestra un archivo compreso, se identifica porque se presenta en color rojo y la tercera línea muestra un directorio que se identifica por la d inicial. El directorio se llama web y contiene 5 archivos o directorios, fué modificado por última vez el 1 de Agosto de este año, el dueño es nediaz, pertenece al grupo Docentes, el tamaño de 4096 Bytes no corresponde con el tamaño real del directorio (el valor mostrado para los archivos si es el real). En cuanto a permisos el contenido del directorio web, puede ser leído, modificado y ejecutado por el propietario (nediaz), el grupo tiene permiso de lectura y ejecución sobre el directorio, al igual que los demás usuarios.
Los permisos de un archivo pueden ser modificados por el dueño o por el administrador del sistema con el comando chmod que espera dos parámetros: cambio por realizar al permiso y nombre del archivo por cambiar. Los permisos se pueden especificar en octal o con una o más letras para identificar al usuario (u para el usuario, g para el grupo, o para los demás usuarios y a para todos), un +, un - o un = y después letras para identificar los permisos (r, w o x). Por ejemplo:
chmod u=rwx,g=rx,o= Contenidos.zip
Cambia permisos del archivo Contenidos.zip, el usuario puede leer, ejecutar y escribir, el grupo puede leer y ejecutar mientras que los demás usuarios no tienen permisos.
El dueño de un archivo pueden ser modificados sólo por el administrador del sistema con el programa chown.
A continuación se listan algunos de los comandos básicos más comunes del sistema operativo Linux.
En la tabla que sigue se muestran los operadores aritméticos que se utilizan más fecuentemente.
Tabla 1.1 Comandos Básicos sistema operativo Linux
Comando |
Descripción |
Ejemplo |
ls |
Muestra el contenido de un directorio |
|
ls –la |
Muestra el contenido de forma detallada |
|
cd <nombre_directorio> |
Cambia de directorio. |
|
cd / |
Cambia de directorio al raiz / |
|
clear |
Borra el contenido de la pantalla. |
|
mkdir <nombre_directorio> |
Crea un directorio. |
mkdir /pepe Crea el directorio pepe |
rmdir <nombre_directorio> |
Borra un directorio vacio |
rmdir /pepe Borra un directorio pepe que está vacio. |
pwd |
Muestra el directorio en que nos encontramos |
|
cat |
Muestra el contenido de un archivo |
cat texto.txt Muestra el contenido de texto.txt |
login |
Solicita nombre de usuario y password |
|
logout |
Sale de una sesión y hace un login |
|
cp |
Copia archivos indicando el origen y el destino |
cp /texto.txt /pepe/ Copia el archivo texto.txt al directorio /pepe |
rm |
Borra archivos |
rm texto.txt Borra el archivo texto.txt |
mv |
Mueve archivos indicando el origen y el destino |
|
find |
Busca archivos ó directorios |
|
|more |
Muestra la información de forma paginada |
|
mount |
Monta discos ó unidades para ser utilizador |
mount /dev/cdrom /mnt/cdrom Monta el CD en e l directorio /mnt/cdrom/ |
umount |
Desmonta discos ó unidades |
umount /dev/cdrom Desmonta la unidad de CD-ROM. |
adduser <usuario> |
Crea un nuevo usuario |
adduser Catalina Crea un nuevo usuario Catalina |
passwd <usuario> |
Establece password a un usuario |
passwd Catalina Establece password al usuario Catalina. |
chmod abc <file> |
Establecer ó quitar permisos a los ficheros |
|
df <param> |
Muestra el espacio utilizado en discos |
|
man <nombre_comando> |
Muestra la página de ayuda del comando nombre_comando |
man cp Muestra la ayuda para el comando cp |
shutdown <param> |
Reinicia o apaga el sistema |
|
Prepare una hoja con sus datos básicos (Nombre(s), Código(s), Fecha), en ella registre la respuesta a cada uno de los puntos que se citan a continuación.