Informática


Introducción al UNIX I


Allá hacia el año 1960 para introducir los programas tarjetas perforadas.

A partir de este año, en los laboratorios Bell se empieza a diseñar un sistema operativo que sea multitarea y multiusuario.

Hay que decir que los ordenadores pueden ser:

Monotarea: el sistema operativo solamente puede ejecutar un programa a la vez.

Multitarea: el sistema operativo puede ejecutar varios programas "a la vez".

Monousuario: el sistema operativo solo puede ser usado por un usuario.

Multiusuario: el sistema operativo puede ser usado por varios usuarios.

Uno de los principios básicos de éste sistema es que sea multiusuario, y como consecuencia, deberá ser multitarea, pues sería una tontería tener un sistema multiusuario y monotarea, ya que si estuvieran varios usuarios conectados a un mismo ordenador, solo uno de ellos podría usar las aplicaciones o recursos del equipo.

Ken Thomson y Denis Ritchie, de los laboratorios Bell, diseñaron un sistema multiusuario llamado MULTICS, que se utilizó básicamente en ordenadores de gran tamaño.

Más tarde, hallá por 1969, y ya por su cuenta, éstos consiguieron que el sistema MULTICS funcionase en una máquina pequeña. A este sistema se le llamó UNICS.

Este sistema operativo estaba escrito en ensamblador, por lo que solo funcionaba en la máquina desarrollada. Por esta causa, hacia el 1973 decidieron reescribir todo el sistema operativo en C, un lenguaje de programación superior, de manera que se pudiera utilizar en cualquier máquina, siempre y cuando ésta dispusiera de un compilador específico para transformar los comandos de C, en lenguaje máquina.

Con el paso del tiempo el sistema UNICS, pasó a llamarse UNIX.

Gracias a que los creadores de UNIX, dejaron el código fuente del sistema operativo abierto a todo el mundo, y dárselo a las universidades, el sistema se ha ido expandiendo y mejorando con el paso del tiempo. Esto es debido a que, debido a la liberación del código fuente, muchas universidades añadieron una asignatura a impartir, de esta manera los estudiantes aprendían UNIX y podían crear sus propias aplicaciones, además de que al acabar sus carreras i irse a trabajar, como éste era el sistema operativo que conocían, era el sistema operativo que instalaban en las empresas en las que trabajaban. Aparte de que a las empresas tampoco les costaba mucho dinero pues al ser un sistema libre, tan solo se debía pagar el soporte del programa.

Años más tarde, en 1990, Linus Torvald adaptó el sistema UNIX para PC, que pasó a llamarse LINUX en favor de su creador, que también decidió seguir con la filosofía del sistema UNIX y no registró el sistema operativo.

Algunas de las características de este sistema operativo son:

Su transportabilidad, pues al estar hecho en C, puede instalarse en cualquier máquina, siempre y cuando la máquina tenga un compilador de C hasta el lenguaje máquina del propio ordenador.

Las medidas de seguridad que ofrece, pues se trata de un sistema multiusuario, y un usuario no tendría que poder borrar archivos o directorios de otro usuario.

Su capacidad multitarea, pues se permite realizar diferentes tareas a la vez (aunque más que a la vez, lo que se hace es asignar y administrar tiempo de CPU a los diferentes recursos)

Se utiliza un sistema de archivos jerárquico, pues se parte de una raíz y de allí salen diferentes ramales.

Otra de las características diferenciadoras del sistema es que trata los dispositivos como archivos, con lo que las operaciones entrada/salida serán independientes al hardware.

Para entrar al sistema administrado por UNIX hace falta, en primer lugar, que el servidor y administrador del sistema, esté conectado.

Una vez conectados se nos pedirá que introduzcamos nuestro login y nuestro password. Es importante especificar que UNIX es un sistema que diferencia entre la escritura en minúsculas y mayúsculas, por lo que el mismo nombre con un carácter cambiado por la misma letra en mayúscula o minúscula, el sistema operativo pasaría a reconocerlo como una palabra diferente.

Si ponemos un login o password incorrecto, nos saldrá un mensaje: loging incorrect, y se nos ofrecerá la posibilidad de volver a introducir los datos de entrada al sistema.

Una vez hayamos entrado en el sistema sale un mensaje como este:

Linux 2.0.30

Last login: Wed Jun 10 11:52:11 on ttyp1 from 192.168.1.9

No mail

En la primera línea lo que se hace es informarnos de la versión de sistema operativo con el que estamos trabajando.

En la línea siguiente se nos informa de la última conexión (fecha, hora y desde que máquina lo hicimos)

Por último se nos indica si hemos recibido algún mensaje

También aparece el prompt del sistema. Si somos un usuario el prompt es representado por el símbolo dólar $, mientras que si somos el administrador éste viene representado por la almohadilla (o matriz 2x2) #.

En UNIX a diferencia de MS-DOS (sistema operativo por todos conocido), no existen unidades, sino que está totalmente administrado y dividido en directorios.

Como antes hemos dicho, UNIX tiene una estructura jerárquica.

Al directorio principal o la raíz, se le llama root y se le identifica con el símbolo /.

De este directorio cuelgan una serie de subdirectorios, que son:

  • bin: en el cual se guardan todos los archivos del sistema (los imprescindibles)

  • lib: en el cual se guardan las diferentes librerías (=dll)

  • etc: en el cual se guardan diferentes cosas (ejecutables prescindibles,...)

  • home: en el cual se guardan los directorios propios de los usuarios

  • dev: en el cual se guardan los ficheros de los dispositivos como por ejemplo el lp0 (impresora), fd0 (Floppy disk), sd0 (SCSI),...

  • usr: en el cual se guardan los ejecutables de los usuarios.

En el sistema operativo UNIX podremos encontrar tres tipos de ficheros:

Los ordinarios, que son los ficheros normales donde se almacena la información, ejecutables,... (no usan ningún tipo de extensión)

Los directorios, que se utilizan para contener ficheros u otros directorios

Los especiales, que son aquellos ficheros asociados a los dispositivos del sistema. (Y por los genera se encuentran en el directorio dev)

Comandos

Información

Exit

Salida del sistema

CTRL + D

Salida de sistema, aplicaciones,...

Man

Ayuda

Passwd

Cambia el password de entrada al sistema

Date

Nos muestra la fecha

Cal

Nos muestra el calendario

Who

Nos muestra los usuarios conectados al sistema

Whoami

Nos dice quien somos

Pwd

Nos muestra la ruta en la que estamos

Ls

Lista los ficheros, archivos,...

Mkdir directorio

Crea directorios

Rmdir directorio

Borra directorios

Cd directorio

Accedemos a un directorio

Cd ..

Salimos de un directorio

Mount destino origen

Monta dispositivos, carpetas,...

Cp origen destino

Copia archivos

Rm archivo

Borra ficheros

Mv origen destino

Mueve los archivos o directorios

Chmod propiedades archivo

Cambia las propiedades de los archivos

Find archivo

Busca el archivo indicado

Write usuari0

Para mantener conversaciones

Talk usuario

Como Write (pero divide pantalla en dos)

More archivo

Muestra el contenido de un fichero (con pausas)

Cat archivo

Muestra el contenido de un fichero (sin pausas)

Wc archivo

Nos muestra el número de líneas, palabras y caracteres del fichero en cuestión

Ps

Informa de los procesos en marcha

Kill PID

Mata el proceso indicado

Df

Nos muestra el espacio disponible del disco

Pine

Surge un menú para enviar correo electronico

Ping dirección IP

Comprueba funcionamiento de maquina indicada

Shutdown

Orden de desconexión del sistema (servidor)

Como en Ms-Dos, UNIX también dispone de los comodines (*) y las emulaciones de un carácter indeterminado (?).

Por ejemplo:

Cat* = todos los archivos que empiecen pro cat

Cat?? = todos los archivos que empiecen por cat y tengan dos caracteres más

Dentro de la seguridad que debe proporcionar, podemos diferenciar diferentes niveles:

  • seguridad frente a intrusos

para solucionar este problema, lo que UNIX hace es preguntarnos al iniciar la sesión nuestro login y nuestra clave de acceso, de manera que si no estamos dado de alta dentro del sistema, no podremos entrar, a no ser que tengamos el login y password correspondiente.

  • seguridad en cuanto a la privacidad de la información almacenada

debe haber algún sistema para que ningún otro usuario entre en nuestras carpetas y acceda a todos nuestros datos, pueda borrarlos,... Para evitar esto, UNIX dispone de una serie de permisos que se asignan a cada uno de los archivos (incluye directorios), que el propietario de ellos puede modificar mediante la orden chmod.

La orden Chmod cambia los atributos de los ficheros. Estos atributos pueden ser:

r = permiso de lectura

w = permiso de escritura

x = permiso de ejecución

Estos atributos están agrupados de tres en tres [ (d) ---/---/--- ]

La primera letra (d), nos indica si estamos hablando de un directorio

Los tres primeros dígitos se refieren a los permisos que tiene el propietario, los siguientes tres dígitos se refieren a los permisos que tiene el grupo y por último están los permisos dados al resto de usuarios (todos los demás).

Un archivo con todos los permisos tendría esta estructura rwx rwx rwx

Un archivo sin ningún permiso tendría esta estructura --- --- ---

Para hacer el cambio tendremos que considerar que si concedemos una propiedad le asignaremos un numero uno, mientras que si no se la damos le asignaremos cero.

De esta forma podremos formar tres números de tres dígitos (111 111 111), y cada uno se le puede asignar un valor ( 7 7 7 ), contando en valor digital.

Para hacer cambios = chmod 740 carta.txt rwx r-- ---, así pues asignamos a este fichero llamado carta.txt las propiedades de control total al propietario, solo lectura al grupo y ningún acceso al resto de usuarios.

Pasaremos ha comentar y dar ejemplos de las ordenes más utilizadas:

Mount: esta orden nos permite por ejemplo crear lo que es conocido en Ms-Dos como una unidad en una carpeta. Para ello deberemos asignar el fichero, con la orden mount, aun directorio por nosotros creado.

Por ejemplo, si queremos ver el CD-ROM, en una carpeta llamada cdrom deberemos asignarle el fichero a esta carpeta. Para ello haremos:

Mount /dev/hdb /cdrom

Ls: la opción listar tiene varias opciones:

  • l = para ver los permisos de los ficheros

  • a = muestra los archivos ocultos

  • C = listado en forma de columna

  • F = añade una marcador de *, si el archivo es ejecutable

Por ejemplo: ls -la, nos muestra todos los archivos (incluso ocultos) con sus respectivas propiedades.

Cp: contiene la opción -r que nos permite copiar un directorio junto con todos los subdirectorios que de él cuelgan

Por ejemplo: cp -r /home/ferran/cuenta /home/ferran/raistlin, que copiará el directorio cuenta con sus respectivos subdirectorios a otro directorio llamado raistlin

También podemos direccionar, para ellos utilizaremos < para direccionamiento de entrada, > para direccionamiento de salida y >> para añadir datos conservando los datos anteriores.

Por ejemplo: cal 1979 > dates.txt copiamos los datos obtenidos a un fichero llamado dates.txt

Cuando ejecutamos el comando ps, aparece una pantalla como esta:

PID

TTY

TIME

COMMAND

28

04

0:20

Sh

272

04

0:03

Ps

Cuando efectuamos la orden kill, esta deberá ir acompañada por el número que hay bajo la columna PID. Por ejemplo: kill 28




Descargar
Enviado por:Ferran
Idioma: castellano
País: España

Te va a interesar