linux - unix. sistema operativo multiusuario (primera...

28
Linux - Unix. Sistema operativo multiusuario (primera parte) Autor: Editorial McGraw-Hill 1 mailxmail - Cursos para compartir lo que sabes

Upload: lexuyen

Post on 03-Oct-2018

309 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Linux - Unix. Sistema operativo multiusuario (primera …imagenes.mailxmail.com/cursos/pdf/3/linux---unix-sistema-operativo... · servidor Unix - Linux. ... en sistemas Unix/ Linux

Linux - Unix. Sistema operativomultiusuario (primera parte)Autor: Editorial McGraw-Hill

1

mailxmail - Cursos para compartir lo que sabes

Page 2: Linux - Unix. Sistema operativo multiusuario (primera …imagenes.mailxmail.com/cursos/pdf/3/linux---unix-sistema-operativo... · servidor Unix - Linux. ... en sistemas Unix/ Linux

Presentación del curso

En este curso de Sistemas Operativos Linux - Unix aprenderás acerca de la historiade Linux y sus características generales; analizaremos su estructura y sufuncionamiento. Estudiaremos los principales componentes que conforman elsistema operativo Linux - Unix, entre ellos, el núcleo, el lenguaje de programaciónShell, el sistema de archivos y los comandos.

Veremos también las interfaces de usuarios, es decir, la aplicabilidad del softwareque determina cómo el usuario interctúa con el sistema operativo; aprenderás elprocedimiento de conexión y desconexión y la conexión de usuarios sobre el propioservidor Unix - Linux. Veremos los primeros conceptos de Unix - Linux, las teclas ylos caracteres especiales, los comandos básicos, el formato de los comandos y otrasclases de comandos que ofrece el Sistema operativo Linux - Unix.

Aprende con este curso de la editorial McGraw-Hill, fragmento del l ibro: CEO -Sistemas informáticos multiusuario y en red" del autor F. J. Muñoz. Puedes descubrirmás libros de McGraw-Hill en: www.mhe.es.

2

mailxmail - Cursos para compartir lo que sabes

Page 3: Linux - Unix. Sistema operativo multiusuario (primera …imagenes.mailxmail.com/cursos/pdf/3/linux---unix-sistema-operativo... · servidor Unix - Linux. ... en sistemas Unix/ Linux

1. Linux - Unix. Introducción y características

Introducción

En esta Unidad se describen las características más importantes de los sistemasoperativos Unix y Linux. En concreto la versión Unix de SCO Sistema V versión 4(Open Server) y la versión Linux Suse 9.1, aunque la mayoría de las característicasson válidas para otras versiones. Actualmente la mayoría de los fabricantes dehardware y software suelen tener su propia versión de este sistema operativo, a laque denominan de diferentes formas. La base es la misma, los comandos enmuchos casos coinciden y. lo que es más  importante, todos estos sistemasoperativos se instalan en ordenadores que serán servidores de red.

De hecho, en la actualidad la mayoría de los Servidores de Internet instalan Unixcomo sistema operativo, debido especialmente a que es muy estable y tiene pocosfallos.

Características generales de Linux - Unix

El sistema operativo Linux - Unix es uno de los sistemas multiusuario porexcelencia. A lo largo de su evolución histórica se le ha llamado de muchas formas yha tenido multitud de versiones, pero en definitiva siempre ha estado especializadoen  gestionar software para que pueda ser utilizado simultáneamente por variosusuarios. En general, el hardware de cualquier sistema multiusuario consta de dospartes fundamentales:

- Ordenador central. También llamado servidor, es el encargado de suministrarinformación a los diferentes usuarios del sistema.- Terminales. Éstos son los puestos con los que los usuarios se comunican con elordenador central. Pueden ser, a su vez, de dos tipos:

-  Terminales puros. Estos terminales son exclusivamente un monitor y un tecladosin unidad central, que están conectados directamente al ordenador central.Solamente pueden ser utilizados en el sistema en el que están conectados, es decir,no son autónomos, ya que no tienen microprocesador propio, ni memoria, niningún componente básico de un ordenador.

-  Ordenadores personales en emulación. Pueden ser ordenadores de la familia8086, 486-SX, Pentium, etc. Son autónomos, es decir, pueden trabajar de formaindependiente, ya que constan de todos los componentes que cualquier ordenadorprecisa: microprocesador, memoria, monitor, teclado, ROM, etc. Pueden serutilizados por los usuarios de un sistema multiusuario, ya que se pueden conectaral ordenador central mediante tarjetas de red (también pueden conectarse a travésde los puertos serie). Una vez conectados, el equipo ejecuta un programa que emulao transforma la señal recibida del ordenador central, para que éste la entienda ypueda funcionar.

Respecto al sistema de almacenamiento, los sistemas como Unix/Linux permitenque más de un disco pueda formar lo que se denomina un sistema de archivos. Otrocomponente que forma parte de un sistema multiusuario es la impresora.Normalmente, en sistemas Unix/ Linux solamente se utilizan impresoras conectadas

3

mailxmail - Cursos para compartir lo que sabes

Page 4: Linux - Unix. Sistema operativo multiusuario (primera …imagenes.mailxmail.com/cursos/pdf/3/linux---unix-sistema-operativo... · servidor Unix - Linux. ... en sistemas Unix/ Linux

al ordenador central, que son gestionadas directamente por éste y utilizables portodos los usuarios. Estos sistemas operativos constan de estos dos componentes:núcleo y Shell. Observa algo más sobre estos dos componentes:

- Shell. Es el equivalente al intérprete de comandos de DOS (Command.com) o elExplorador de Windows. Permite introducir comandos, ejecutar programas, etc. Ladiferencia respecto a DOS y Windows es que, además, el Shell es un lenguaje deprogramación que permite controlar como se están ejecutando las comandos.- Núcleo. Es la parte del sistema que interactúa con el hardware. Aporta serviciospara la gestión de memoria, control de acceso a los periféricos, control y gestión delsistema de archivos, manejo de interrupciones, gestión de procesos deentrada/salida, etcétera.

Fig. 13.1. Estructura del sistema operativo Unix/Linux.

Nota: Este curso forma parte del libro "CEO - Sistemas informáticos multiusuarioy en red" del autor F. J. Muñoz, publicado por la editorial McGraw-Hill (ISBN:84-481-9962-6) .

4

mailxmail - Cursos para compartir lo que sabes

Page 5: Linux - Unix. Sistema operativo multiusuario (primera …imagenes.mailxmail.com/cursos/pdf/3/linux---unix-sistema-operativo... · servidor Unix - Linux. ... en sistemas Unix/ Linux

2. Linux - Unix. Historia y versiones (primera parte)

Introducción al sistema multiusuario Unix/Linux

A. Historia y versiones

Los inicios de Unix datan de los años 60, fruto de un proyecto de investigación delos laboratorios BELL. El sistema se llamaba MULTICS. El proyecto estuvo parado durante algunos años, básicamente, por dos problemas:necesitaba mucha memoria y los programas no acababan de funcionar bien con él. Ya en 1969 se escribe de nuevo un SO basado en MULTICS que supera losproblemas de éste, para aplicr en máquinas PDP-7. Unix es muy parecido a este. En 1973 se escribe en lenguaje «C», gana sobre todo en portabilidad y mejora sumantenimiento. Eso le da un gran auge.

A partir de aquí, el sistema sufre muchas modificaciones, hasta que en 1982, AT&T,lanza la primera versión comercial de Unix. A la vez, otras empresas sacaron «sus»versiones de Unix, lo cual hizo dudar a los usuarios, ya que no se sabía qué partespertenecían realmente a Unix o si eran alguna de sus variantes.

Unix empezó a fraguarse con más rapidez con la aparición de los ordenadoresPDP-11 a mediados de los años setenta. Como este sistema operativo se ajustabamuy bien a las características y arquitectura de los ordenadores DEC-PDP-11, laventa de éstos se incremento y facilitó el desarrollo del sistema operativo.

Simultáneamente, AT&T envió copias del sistema operativo Unix a muchasuniversidades del mundo, por lo que la mayoría de los informáticos realizaban susestudios basándose en este sistema operativo. Fue en la Universidad de Californiade Berkeley, donde se desarrollo aún más este sistema operativo, mientras queAT&T seguía su propio desarrollo.

Debido a ello, la expansión del Unix se vio algo frenada, ya que no se podíaasegurar en ningún caso la compatibilidad de programas en ambas versiones. Paraello se creó un estándar y multitud de librerías, de forma que lacaracterística fundamental del Unix, la portabilidad, fuera máxima. Con la aparición de los procesadores 8088 de IBM, Unix mejoró en prestaciones eincluso llegaron a hacerse versiones ligeras del Unix, como el sistema operativo XENIX para el IBM PC.

La evolución de este sistema operativo se puede consultar en Internet, si bien cabeindicar como característica general, que la primera versión de este sistema operativonace en 1960 con la empresa MULTICS y, tras reformarse prácticamente cadaaño, llega al sistema de la actualidad en la forma de SYSTEM V RELEASE 4.

5

mailxmail - Cursos para compartir lo que sabes

Page 6: Linux - Unix. Sistema operativo multiusuario (primera …imagenes.mailxmail.com/cursos/pdf/3/linux---unix-sistema-operativo... · servidor Unix - Linux. ... en sistemas Unix/ Linux

3. Linux - Unix. Historias y versiones (segunda parte)

La historia de Linux empieza en Finlandia, en 1991, cuando en Linus B. Torvalds,estudiante de la Universidad de Helsinki, se le ocurrió comprarse un PC conprocesador 386. Después de observar que el MS/DOS no aprovechaba los recursosde la máquina, decidió usar otro sistema operativo de entonces: Minix (Minix era unpequeño sistema Unix).

Sin embargo, debido a las limitaciones del Minix, Linus decidió reescribir algunaspartes del sistema, añadiéndole  mayor funcionalidad. Posteriormente, Linusdifundió el código fuente por Internet, de manera gratuita y con el nombre de Linux.La primera difusión de Linux tuvo lugar el mes de agosto de 1991. Se trataba de laversión 0.01, y por el momento, funcionaba bajo Minix. Esta primera versión era loque se podría denominar un embrión ni siquiera hubo anuncio oficial. La primeraversión «oficial», la 0.02, se hizo pública el 5 de octubre de 1991. En esta nuevaversión ya se permitía el uso de algunos programas GNU (GNU es un acrónimorecursivo que significa «GNU No es Unix»).

En estas primeras versiones, Linux era bastante limitado, pero el hecho de que sedifundiera la fuente por Internet, y totalmente gratis, hizo que cada vez máspersonas empezaran a colaborar con el proyecto, hasta llegar a los cientosde colaboradores que hay  trabajando en la actualidad en los cientos de proyectos GNUGNU. La primera versión estable de Linux fue la 1.0 y apareció en marzo de 1994. El número de versión asociado al núcleo tiene un sentido muy particular, ya que estáligado a su desarrollo; la evolución de Linux se efectúa en dos fases:

- Fase de desarrollo: es el momento en que se añade funcionalidad al núcleo,optimizaciones y demás. En definitiva, es la fase en la que se desarrolla más elnúcleo y se caracteriza por su nombre de versión impar: 1.1, 1.3, etcétera.

- Fase de estabilización: se trata de coger el núcleo desarrollado en la faseanterior, y hacer que sea lo más estable posible. Aquí las modificaciones sonmínimas; se trata más de retoques y pequeños ajustes. Los núcleos estables tienennúmero de versión par: 1.0, 1.2, 2.0, 2.4, etcétera.

Actualmente, Linux es un sistema Unix completo, aunque inicialmente se diseñócomo un clónico de éste, distribuido libremente para funcionar en máquinas PC conprocesadores 386, 486, etc. En la actualidad funciona sobre otras muchasplataformas como los procesadores Alpha, Sparc, Amiga, Atari, las máquinas tipoMIPS y sobre los PowerPC.

Hay que resaltar también que Linux respeta las especificaciones POSIX, pero poseetambién ciertas extensiones de las versiones System V y BSD de Unix. Esto simplificanotablemente la adaptación de programas desarrollados inicialmente para otrossistemas Unix. El termino POSIX significa Portable Operating System Interface. Sonunas normas definidas por el IEEE y estandarizadas por el ANSI y el ISO. POSIXpermite tener un código fuente transportable.

6

mailxmail - Cursos para compartir lo que sabes

Page 7: Linux - Unix. Sistema operativo multiusuario (primera …imagenes.mailxmail.com/cursos/pdf/3/linux---unix-sistema-operativo... · servidor Unix - Linux. ... en sistemas Unix/ Linux

permite tener un código fuente transportable.

Observa la Tabla 13.1, con las versiones más utilizadas de Linux en laactualidad. Esta Unidad y las siguientes se han centrado en la distribución de SUSEpor ser una de las más estandarizadas y similares a Unix que existen en el mercado.Además, es la distribución utilizada actualmente por el Ministerio de Educación paralos centros educativos.

Tabla 13.1. 10 distribuciones de Linux.

7

mailxmail - Cursos para compartir lo que sabes

Page 8: Linux - Unix. Sistema operativo multiusuario (primera …imagenes.mailxmail.com/cursos/pdf/3/linux---unix-sistema-operativo... · servidor Unix - Linux. ... en sistemas Unix/ Linux

4. Linux - Unix. Características generales

B. Características generales

Como se ha comentado anteriormente, Unix/Linux es un sistema operativo multiusuariomultiusuario.

Por otro lado, es un multitarea, es decir, el sistema permite que los usuarios esténejecutando varias aplicaciones simultáneamente utilizando la técnica de tiempocompartido. Para ello se aplican los diferentes algoritmos de planificación como losque viste en la Unidad 2. A continuación se detalla el utilizado habitualmente porUnix/Linux y otros sistemas multiusuario, junto con algunas de las característicasmás importantes de estos sistemas operativos:

- Algoritmo por prioridades o multinivel. Es uno de los más complejos y eficaces.Asigna los tiempos de ejecución de la UCP según una lista de prioridades. En cadauna de estas listas, el sistema operativo incluirá aquellos procesos a los que se leshaya asignado esa prioridad. El tiempo de ejecución del procesador se irádestinando, en primer lugar, de forma secuencial a los procesos de mayor nivel.Terminados éstos, se ejecutarán los procesos del nivel inferior, y así sucesivamentehasta los procesos del nivel más bajo.

- Memoria virtual. Esta técnica permite a los usuarios del sistema ejecutarprogramas, de tal forma que dé la sensación de que toda la memoria RAM es paraellos. Concretamente en Unix/Linux se utiliza la paginación de la memoria. Estatécnica, que ya viste en la Unidad 2, es la que utilizan la mayoría de los sistemasoperativos multiusuario. Dividen la memoria en páginas al igual que los programas yde esta forma se realiza el intercambio entre disco y RAM para ejecutar los mismos.

- Sistema de archivos jerárquico. Utiliza, de forma similar al DOS, un sistema dearchivos en forma de árbol invertido. La diferencia esencial frente al DOS es que elUnix/Linux no gestiona dispositivos (como una disquetera) de forma directa. ElUnix/Linux gestiona los dispositivos como si fueran directorios, de tal forma quecuando estemos accediendo al directorio asociado a una disquetera, en realidad loque estarás haciendo es acceder a la información contenida en el disquete.

- Comunicación con otros ordenadores. Un sistema Unix/Linux permite nosolamente trabajar con él en una máquina, sino también conectar variosordenadores centrales Unix/Linux entre sí de tal forma que cada usuario tengaacceso a la información contenida en todos ellos. La conexión se realiza a través delconjunto de protocolos y servicios que ofrece TCP/IP. Gracias a él puedes ejecutarprogramas en máquinas Unix/Linux que estén a varios kilómetros de distancia entresí; enviar correo electrónico de unos equipos a otros; realizar conversación directaentre dos usuarios, etcétera.

- Sistemas de seguridad. Es una de las características más importantes, ya que lainformación a la que un usuario puede tener acceso puede limitarse de formasencilla. De este modo, el administrador del sistema operativo, a través de palabrasclave (para archivos empaquetados o comprimidos) o mediante la asignación dederechos a los usuarios, hace que la información contenida en un servidorUnix/Linux esté totalmente protegida de piratas o usuarios no deseados.

8

mailxmail - Cursos para compartir lo que sabes

Page 9: Linux - Unix. Sistema operativo multiusuario (primera …imagenes.mailxmail.com/cursos/pdf/3/linux---unix-sistema-operativo... · servidor Unix - Linux. ... en sistemas Unix/ Linux

- Interfaz texto/gráfica. Lo normal es que la interfaz utilizada por Unix/Linux seade tipo texto. Pero poco a poco se han ido incorporando mejoras que permitengestionar el sistema operativo en modo gráfico. Fundamentalmente, la aparición delas interfaces X WINDOWS ha permitido agilizar y mejorar procesos, especialmentepara el administrador.

9

mailxmail - Cursos para compartir lo que sabes

Page 10: Linux - Unix. Sistema operativo multiusuario (primera …imagenes.mailxmail.com/cursos/pdf/3/linux---unix-sistema-operativo... · servidor Unix - Linux. ... en sistemas Unix/ Linux

5. Linux - Unix. El núcleo y el shell

El sistema operativo Unix/Linux a fondo

Para comprender el funcionamiento del sistema Unix/Linux, es necesario entendersu estructura. Este sistema operativo está formado por varios componentesprincipales. Entre ellos, el núcleo, el Shell, el sistema de archivos y los comandos.

A. El núcleo y el shell

El núcleo es la parte del sistema operativo que sirve para interactuar con elhardware. Proporciona una serie de servicios que pueden ser utilizados por losprogramas, sin que éstos tengan que preocuparse de cómo se gestiona el hardware.

En general, el núcleo es el encargado de gestionar la memoria, mantener el sistemade archivos, del manejo de las interrupciones, manejo de errores, realización de losservicios de entrada/salida, asignación de los recursos de la UCP, gestión deperiféricos de entrada/salida, etcétera.

Cada programa se relaciona con la máquina a través del núcleo. Un programarealizará al núcleo las denominadas llamadas al sistema. Con estas el programaindicará, por ejemplo, que le abra un archivo, que escriba en otro, que utilice laimpresora, que cambie la prioridad de ejecución de otro proceso, etcétera.

El núcleo del sistema operativo Unix/Linux, que recibe el nombre de KERNEL, actúadirectamente con los elementos físicos del ordenador, y se carga en memoria alarrancar la máquina. Permanece en ella hasta que ésta se apaga. Recordemos que enDOS, el núcleo estaba formado por dos programas MSDOS.SYS y IO.SYS.

El Shell es el intérprete de mandatos o de comandos con el que cuenta este sistemaoperativo. En DOS es el Command. com el que se encarga de realizar esta función.

El Shell actúa como interfaz de comunicación entre el usuario y el ordenador, ycuando un usuario se conecta con el servidor Unix/Linux, automáticamente searranca un Shell para que pueda trabajar. Cada usuario conectado al servidor tendráun Shell para su uso.

Al contrario que en DOS, en el que el intérprete de comandos es único, enUnix/Linux existen varios. Éstos son los siguientes:

- Shell Bourne (sh). Creado por S. Bourne, es el más utilizado en la actualidad. Elprompt del sistema queda representado por el símbolo «$». Este shell es el estándarde AT&T y el que se monta en casi todos los sistemas Unix/Linux.

- C-Shell (csh). Procedente del sistema BSD, proporciona características tales comocontrol de trabajos, historia de comandos (como el doskey en DOS), capacidades deedición, etc. Ofrece importantes características  para los programadores quetrabajan en lenguaje C. Su prompt de sistema queda representado con el símbolo«%».

- Shell job (jsh). Incorpora algunas características de control al shell estándar del

1 0

mailxmail - Cursos para compartir lo que sabes

Page 11: Linux - Unix. Sistema operativo multiusuario (primera …imagenes.mailxmail.com/cursos/pdf/3/linux---unix-sistema-operativo... · servidor Unix - Linux. ... en sistemas Unix/ Linux

sistema.

- Shell Korn (ksh). Escrito por David Korn, amplia el shell del sistema añadiendohistoria de comandos, edición de la línea de ordenes y características ampliadas deprogramación.

- Bourne Again shell (Bash). Fue creado para usarlo en el proyecto GNU. BASH, porlo tanto, es un shell o intérprete de comandos GNU; éste es compatible con el shellsh. Además, incorpora algunas características útiles de ksh y csh, y otras propias,como la edición de línea de comandos, tamaño ilimitado del histórico de comandos,control de trabajos y procesos, funciones y alias, cálculos aritméticos con númerosenteros, etcétera.

1 1

mailxmail - Cursos para compartir lo que sabes

Page 12: Linux - Unix. Sistema operativo multiusuario (primera …imagenes.mailxmail.com/cursos/pdf/3/linux---unix-sistema-operativo... · servidor Unix - Linux. ... en sistemas Unix/ Linux

6. Linux - Unix. Funciones de shell

B. Funciones de shell

Como ya has visto anteriormente, la interfaz de usuario que sirve de comunicaciónentre éste y el sistema recibe el nombre de shell.

Cuando un usuario emite una orden, se está relacionando con el shell, parte delsistema Unix/Linux a través de la cual se controlan los recursos del sistemaoperativo, proporcionando características que hacen que el sistema sea potente yflexible.

El shell es tanto un intérprete de comandos como un lenguaje de programacióninteractivo. Sobre él se pueden ejecutar comandos con los que se pueden crearprogramas denominados guiones.

Cuando el usuario se conecta al sistema Unix/Linux, se inicia automáticamente unprograma de shell. Éste es el denominado shell de presentación. Este shell se cargade forma automática cuando se accede al fichero /etc/passwd.

Este archivo contiene la información que el sistema necesita conocer de cadausuario. Es dentro de este archivo o fichero, el situado en último campo de cadalínea, donde se encuentra el nombre del shell que quieres ejecutar, quenormalmente es el shell estándar del sistema.

En cuando se inicia el shell de presentación, se busca el fichero .profile dentro deldirectorio activo. Este fichero contiene comandos que sirven para personalizar suentorno de trabajo. Asimismo puede compararse al AUTOEXEC. BAT del DOS.

Realizada esta operación automáticamente, se muestra en pantalla, normalmente, elsímbolo «$», para que el usuario pueda  introducir sus comandos.

En general, todas las órdenes de Unix/Linux son programas que están almacenadosen el sistema de archivos. Se escriben de forma similar a como se hace en DOS, yaque su sintaxis es la siguiente: $ mandato [-modificadores] [argumentos]

1 2

mailxmail - Cursos para compartir lo que sabes

Page 13: Linux - Unix. Sistema operativo multiusuario (primera …imagenes.mailxmail.com/cursos/pdf/3/linux---unix-sistema-operativo... · servidor Unix - Linux. ... en sistemas Unix/ Linux

7. Linux - Unix. Interfaces de usuario

C. Interfaces de usuario

Éstas se definen como la parte del Sistema Unix/Linux que determina cómointeractúa el usuario con él, es decir, de qué forma el usuario introduce comandos ocualquier otra información y cómo el sistema visualiza los mensajes después deprocesar tal información. La interfaz primaria o básica del Unix/Linux es de tipo texto y hasta no hace muchoha sido la única para el sistema.  Actualmente hay interfaces gráficas como el XWindows, Open Look, GNOME o KDE. La interfaz de tipo texto es la que semuestra al cargar el shell por defecto o el deseado. Las básicas son las mismas quelas explicadas en el punto 13.4.A de esta unidad, aunque hay más.

En cuanto a la interfaz gráfica X-Windows, la característica fundamental es queincorpora un modelo cliente-servidor para el modo en que las aplicacionesinteractúan con los dispositivos terminales. Incorpora también un protocolo de red yvarias herramientas software que pueden ser utilizadas para crear aplicacionesbasadas en X Windows.

Un concepto fundamental es la separación de las aplicaciones con respecto alsoftware que maneja la entrada y salida por Terminal. Todas las operacionesrealizadas mediante la entrada o salida estándar (teclado y monitor) son manejadaspor un programa que se dedica exclusivamente a ello (servidor). Las aplicaciones(clientes) envían al servidor información a visualizar, y el servidor envía a lasaplicaciones información referente a la entrada de usuario. Para gestionar estemodelo, se utiliza el protocolo de red X. Este protocolo es un lenguaje estándarutilizado por las aplicaciones clientes para enviar instrucciones a los servidores X, ypor los servidores para enviar la información transformada a los clientes (por ejemplo, el movimiento del ratón).

La interfaz OPEN LOOK ha sido diseñada por AT&T y Sun Microsystems comointerfaz gráfica estándar para el sistema Unix/Linux. Esta interfaz permite ejecutar yvisualizar varias aplicaciones simultáneamente en ventanas separadas sobre unamisma pantalla. En general, todas las operaciones de gestión de archivos se realizande forma gráfica gracias a la interfaz OPEN LOOK.

La interfaz KDE 3.2 para Linux SUSE, ahora con un potente gestor de informaciónpersonal (PIM), incorpora, además de la función de inicio rápido y la reproducciónautomática de los medios introducidos (CD, DVD), KDE 3.2, un gran número denuevas prestaciones y programas. Observa algunos de ellos:

- Kontact. Este programa equiparable a MS Outlook integra herramientas de correoelectrónico, organización, libreta de direcciones y notas.- KWallet. Password safe utilizado por numerosas aplicaciones para administrar deforma segura las distintas contraseñas del usuario.- Kopete. Programa de mensajería instantánea.- KDevelop. Dispone de soporte para más de 15 lenguajes de programación, diseñoconfigurable, libre elección de editor, vista separada de clases para C++, códigocompletado automáticamente, depuradores integrados y comprobación de sintaxis

1 3

mailxmail - Cursos para compartir lo que sabes

Page 14: Linux - Unix. Sistema operativo multiusuario (primera …imagenes.mailxmail.com/cursos/pdf/3/linux---unix-sistema-operativo... · servidor Unix - Linux. ... en sistemas Unix/ Linux

mientras se introduce el código.- Konqueror. La nueva versión del navegador Web.- Quanta Plus. Editor HTML con un nuevo componente de editor WYSIWYG.- Barra lateral universal. Barra lateral de navegación para la representaciónjerárquica de árboles de directorios que puede ser mostrada en el escritorioindependientemente del administrador de archivos Konqueror.

La interfaz GNOME 2.4 ha mejorado la usabilidad y se han incluido ayudas deaccesibilidad para discapacitados, como, por ejemplo, un lector de pantalla consalida de voz o a una línea braille.

1 4

mailxmail - Cursos para compartir lo que sabes

Page 15: Linux - Unix. Sistema operativo multiusuario (primera …imagenes.mailxmail.com/cursos/pdf/3/linux---unix-sistema-operativo... · servidor Unix - Linux. ... en sistemas Unix/ Linux

8. Linux - Unix. Conexión de usuarios remotos a unservidor (primera parte)

Procedimiento de conexión y desconexión

A. Conexión de usuarios remotos a un servidor Unix/Linux

En este epígrafe vas a ver cómo puedes conectarte desde cualquier ordenador a otroordenador con Unix/Linux. En este caso, te podrás conectar como un usuariocualquiera o como el administrador del sistema, es decir, como root.

La diferencia es el tipo de operaciones que podrás realizar en el servidor desde elterminal desde el que te conectas.

En primer lugar, es evidente que el ordenador central o servidor tiene que estarconectado. Esto, aunque parezca obvio, es importante, especialmente en aquelloscasos en los que el servidor no se encuentra en el mismo espacio físico que elusuario. Si es así y el usuario no llega a conectar, no tendrá demasiado claro si elfallo se debe a un problema de su equipo, de la línea de transmisión o sencillamentedel servidor.

El inicio del ordenador que tiene instalado el sistema operativo Unix/Linux en elservidor suele ser automático. Arrancado este ordenador, podrás iniciar o no sesiónen él físicamente. En este caso, la iniciarás,  normalmente, en entorno gráfico.

El primer paso para conectar desde otro ordenador con el servidor Unix/Linux eslanzar desde nuestro ordenador el comando de conexión. Esta orden de conexiónsolamente pretende hacer que el ordenador del usuario y el ordenador central seentiendan.

El protocolo de comunicación, en la actualidad, suele ejecutarse bajo el entornoWindows o Linux, y se puede lanzar con el software denominado TELNET. Telnet esel software que permite la conexión entre terminales mediante el protocolo de comunicaciones TCP/IP. Este software, que en realidad es un servicio más de los queincorpora el propio TCP/IP, es un protocolo de esta familia. Sirve para conectarse acualquier equipo identificado con una dirección IP determinada.

Observa a continuación el proceso de conexión, teniendo en cuenta que elordenador desde el que te vas a conectar es un ordenador en emulación y que elsistema operativo instalado es Windows XP.

En primer lugar, ejecutarás Telnet desde la opción Ejecutar del botón de Inicio.Dependiendo de la versión del sistema operativo desde el que te conectes,aparecerá una u otra pantalla. En versiones de Windows 98, aparece una ventana enla que podrás introducir los parámetros de la conexión en entorno gráfico. Enversiones Windows 2000/XP, automáticamente aparecerá una ventana de comando,tipo DOS, en la que tendrás que introducir, siempre, los datos de la conexión arealizar.

1 5

mailxmail - Cursos para compartir lo que sabes

Page 16: Linux - Unix. Sistema operativo multiusuario (primera …imagenes.mailxmail.com/cursos/pdf/3/linux---unix-sistema-operativo... · servidor Unix - Linux. ... en sistemas Unix/ Linux

9. Linux - Unix. Conexión de usuarios remotos a unservidor (segunda parte)

Si conectamos desde un Terminal con Windows 98, el procedimiento a seguir es elsiguiente:

- Ejecutas Telnet y en la primera pantalla (Figura 13.2), en el menú Conectar,pulsarás la opción Sistema remoto, y la primera vez aparecerá lo siguiente (Figura13.3).

Fig. 13.2. Conexión con Telnet.

Fig. 13.3.Conectar con un equipo remoto.

- En la casilla Nombre del Host, especificarás la dirección IP que tenga el servidorUnix/Linux; por ejemplo, 192.168.0.2.

Las casillas de Puerto y Tipo de terminal las dejarás como están, ya que, pordefecto, Windows interpreta que Telnet se utilizará para conectar con un ordenadorde estas características. Concretamente, el puerto, es mediante el que el ordenadorpuede entenderse con el servidor Unix/Linux, y el tipo de terminal implica de quéforma se va hacer la emulación en tu terminal, es decir, cómo tu ordenadorvisualizará la ventana para trabajar en Unix/Linux.

Cuando realizas la primera conexión de forma efectiva, en sucesivas conexiones noserá necesario realizar esta secuencia de conexión, ya que en la siguiente ocasión,cuando pulses Conectar, saldrá una lista de direcciones TCP/IP válidas con las quealguna vez has conectado con un ordenador remoto. De esta forma, solamente seránecesario hacer clic sobre la dirección IP que quieras.

Si realizas la conexión desde versiones 2000/XP de Windows, lo harás pulsandoInicio, Ejecutar, y dentro introducirás el comando siguiente: Telnet 192.168.0.2. Sien la línea de ejecución tecleas solamente Telnet, a continuación tendrás queintroducir la dirección IP tras el símbolo del sistema, que muestra lo siguiente: Microsof telnet > 192.168.0.2.

También puedes utilizar la herramienta Termlite. Esta herramienta la incorpora el

1 6

mailxmail - Cursos para compartir lo que sabes

Page 17: Linux - Unix. Sistema operativo multiusuario (primera …imagenes.mailxmail.com/cursos/pdf/3/linux---unix-sistema-operativo... · servidor Unix - Linux. ... en sistemas Unix/ Linux

fabricante de Unix SCO (Santa Cruz Operating) en los discos que suministra con elproducto. Ejecutado Telnet y ejecutado el comando de conexión, el usuario recibirála siguiente información suministrada por el servidor: login: o Linux login:,dependiendo de que el sistema con el que estés conectando sea Unix o Linuxrespectivamente.

Introducirás tu identificación de usuario y a continuación se te pedirá queintroduzcas la contraseña o password, obligatoria en la mayoría de los casos entodos los sistemas Unix/Linux. Es importante tener en cuenta que Unix/Linux, al serun sistema case sensitive, diferencia las letras mayúsculas de las minúsculas, esdecir, no es lo mismo USER01 que user01.

La contraseña solamente tiene que ser conocida por el usuario. Al teclearla noaparecerá ningún carácter en pantalla, por seguridad, pero después de suintroducción se tendrá que pulsar de nuevo Return, al igual que cuando introdujisteel nombre de usuario. Si al introducir el ID del usuario o la password te hasequivocado, el sistema no te dejará entrar, enviará un mensaje y volverá de nuevo ala situación de partida.

Después de estos mensajes, el sistema carga un shell para ese usuario y aparece elsímbolo del sistema, que variará  dependiendo del tipo de shell asignado.Normalmente, el símbolo del sistema es el símbolo «$» para usuarios y el símbolo «#» para el  administrador, aunque esto dependerá siempre del shell que se cargueal iniciar sesión. A partir de este momento podrás trabajar sobre el sistemaUnix/Linux con los privilegios que tengas concedidos en el mismo.

1 7

mailxmail - Cursos para compartir lo que sabes

Page 18: Linux - Unix. Sistema operativo multiusuario (primera …imagenes.mailxmail.com/cursos/pdf/3/linux---unix-sistema-operativo... · servidor Unix - Linux. ... en sistemas Unix/ Linux

10. Linux - Unix. Conexión de usuarios sobre elpropio servidor (primera parte)

B. Conexión de usuarios sobre el propio servidor Unix/Linux

Encendido el servidor Unix, aparecerá una pantalla en modo gráfico, en la queintroducirás, de forma similar, el nombre de usuario y contraseña para entrar alsistema. Pulsarás en el botón Login. Tras pulsar sucesivas veces el botón OK,llegarás al escritorio principal de Unix. Obsérvalo en la Figura 13.4.

Fig. 13.4. Escritorio de Unix SCO.

Para cerrar la sesión de trabajo, si estamos conectados en modo texto, el usuariopodrá hacerlo de dos formas distintas.- Teclear exit y luego pulsar Return.- Teclear Ctrl+d.

Después de esto, el sistema mostrará de nuevo: login: y el usuario podrá conectarde nuevo o no.

El cierre de sesión en modo gráfico es seleccionando en el menú File, opción Exit;posteriormente se confirmará el abandono de la sesión de trabajo. Observa la Figura13.5.

Fig. 13.5. Cerrar sesión de usuario en Unix SCO.

Para cerrar definitivamente el equipo, ejecutarás una sesión en modo comando yteclearás: #shutdown -g0.

1 8

mailxmail - Cursos para compartir lo que sabes

Page 19: Linux - Unix. Sistema operativo multiusuario (primera …imagenes.mailxmail.com/cursos/pdf/3/linux---unix-sistema-operativo... · servidor Unix - Linux. ... en sistemas Unix/ Linux

11. Linux - Unix. Conexión de usuarios sobre elpropio servidor (segunda parte)

En la pantalla inicial de Unix. La diferencia se muestra en la pantalla de conexión, yaque, a diferencia de Unix, en Linux podrás seleccionar algunas opciones antes deentrar al sistema. Podrás seleccionar algún usuario de los que aparecen ala izquierda de la pantalla de login, así como el tipo de escritorio, aunque terecomiendo utilizar, por defecto, KDE. Por último, en la opción menú podrásreiniciar el servidor o apagarlo.

Introducidos los datos de conexión de forma adecuada, se mostrará el escritorio deLinux, tal y como puedes ver en la Figura 13.6.

Fig. 13.6. Escritorio del administrador SUSE.

Si inicias sesión como un usuario estándar, el escritorio tomará un aspectodiferente, aunque básicamente será el mismo. Si quieres terminar la sesión deusuario, o cambiar de usuario, sin cerrar el sistema, harás clic en el icono

correspondiente  , o en el icono Iniciar aplicación  .  Terminar 

. En cualquier caso, aparecerá la pantalla de la Figura 13.7,en la que podrás indicar el tipo de operación que quieres realizar.

Fig. 13.7. Terminar sesión de trabajo en Linux.

1 9

mailxmail - Cursos para compartir lo que sabes

Page 20: Linux - Unix. Sistema operativo multiusuario (primera …imagenes.mailxmail.com/cursos/pdf/3/linux---unix-sistema-operativo... · servidor Unix - Linux. ... en sistemas Unix/ Linux

En la figura anterior, puedes observar que las opciones son las de cambiar deusuario, reiniciar el equipo o apagarlo. De este forma, no necesitas, al contrario queen Unix SCO, realizar acciones diferentes para cambiar de vusuario o para cerrar elsistema.

2 0

mailxmail - Cursos para compartir lo que sabes

Page 21: Linux - Unix. Sistema operativo multiusuario (primera …imagenes.mailxmail.com/cursos/pdf/3/linux---unix-sistema-operativo... · servidor Unix - Linux. ... en sistemas Unix/ Linux

12. Linux - Unix. Primera conexión al sistema

C. Primera conexión al sistema Unix/Linux

Si el usuario que se conecta lo hace por primera vez, y si el administrador no hadecidido asignarle una palabra clave, no habrá contraseña, o la contraseña será nula.

Si se da este caso, el usuario podrá asignarse él mismo una clave de accesoutilizando el comando passwd. En este caso, una vez que al usuario le aparezca elprompt del sistema «$», y después de introducir el comando passwd, aparecerán lossiguientes mensajes:

$ passwd

passwd: changin password for user01

Old password:

New password:

Re-enter new password:

Password Changad

Como se puede apreciar, lo primero que se te solicita es la clave antigua. Esevidente que, si esto no fuera así, cualquierusuario podría cambiar las claves de losdemás. Con ello el sistema consigue que sólo el usuario pueda cambiar su propiaclave de acceso.

Después de verificar la clave, teclearás la nueva clave dos veces. De esta forma, secomparan las dos claves para verificar que la introducida originalmente es ladeseada.

Cuando cambias la palabra clave, tienes que seguir una serie de normas. Estasnormas suelen ser definidas por el administrador del sistema, y son las siguientes:

- La palabra clave ha de ser diferente.

- Debe tener al menos seis caracteres.

- Al menos dos caracteres tienen que ser alfabéticos.

- Debe tener al menos un carácter numérico o especial.

- Tiene que ser distinta del nombre de cuenta.

- No se puede utilizar como palabra clave los mismos caracteres asignados comonombre de usuario  ambiados de orden.

- No se puede cambiar la contraseña de mayúsculas a minúsculas.

2 1

mailxmail - Cursos para compartir lo que sabes

Page 22: Linux - Unix. Sistema operativo multiusuario (primera …imagenes.mailxmail.com/cursos/pdf/3/linux---unix-sistema-operativo... · servidor Unix - Linux. ... en sistemas Unix/ Linux

Cuando veas la gestión de usuarios en modo gráfico, verás cómo se cambian lasclaves de acceso.

2 2

mailxmail - Cursos para compartir lo que sabes

Page 23: Linux - Unix. Sistema operativo multiusuario (primera …imagenes.mailxmail.com/cursos/pdf/3/linux---unix-sistema-operativo... · servidor Unix - Linux. ... en sistemas Unix/ Linux

13. Linux - Unix. Primeros conceptos. Teclas ycaracteres especiales

D. Primeros conceptos Unix/Linux

En el punto anterior hemos hablado del nombre de la cuenta del usuario. Estenombre de cuenta es un número que el administrador del sistema asigna a cadausuario que da de alta en el sistema.

Cuando el administrador da de alta un nuevo usuario, además de asignarle elnombre, le asigna un número de identificación de usuario (uid). Además de esto, acada usuario se le incluye en un grupo de trabajo (gid) que también es un número.

Un grupo de trabajo es un entorno creado por el administrador para quedeterminados usuarios puedan hacer uso del sistema en las mismas condiciones. Esen este entorno en el que se les asigna a los diferentes usuarios los derechos deutilización del sistema, es decir, a qué directorios tienen acceso y a cuáles no, quéprogramas pueden ejecutar y cuáles no, etcétera. La información correspondiente acada usuario de su uid y su gid puede ser conocida mediante el tecleo del comando id.id.

$ id uid = 200 (users) gid = 100 (users)groups(users)

Ya sabes cuál es la forma para entrar y salir del sistema, y también qué aspectotoma el indicador del sistema o intérprete de comandos. Cuando se inicia el shellde presentación de cada usuario, se busca un archivo denominado .profile en el directorio asignado al usuario (HOME), que puede verse en el fichero /etc/passwd.

Este fichero, que puede asemejarse al Autoexec.bat en DOS, contiene comandos einstrucciones que el shell ejecutará y que serán necesarias para ejecutardeterminados programas y, en general, para particularizar el entorno de trabajo decada usuario. La presentación en pantalla de los diferentes shell ha sido abordadaanteriormente, aunque convine recordar que lo normal es que al superusuario leaparezca el símbolo # como indicador de sistema y que a los usuarios les aparezcaun $ . También has visto cuál sería la interfaz en modo gráfico.

E. Teclas y caracteres especiales

En general, todos los teclados diseñados para trabajar en Unix/Linux soncompatibles con el código ASCII.

Estos teclados son parecidos o iguales a los de un ordenador personal, pero algunosde ellos (especialmente los terminales que no son autónomos) pueden incorporarteclas que realizan funciones particulares y específicas en el sistema. En general,aunque la ubicación de las teclas es susceptible, los teclados tienen la siguienteestructura:

- Letras mayúsculas y minúsculas. Teclado QWERTY.- Dígitos numéricos. De 0 al 9.- Símbolos especiales. Son los siguientes: @ - # & )_ + = ` [ ] \ : ; '' ' < > ? / | . ,- Teclas especiales. Return, Delete, Backspace y Tab.

2 3

mailxmail - Cursos para compartir lo que sabes

Page 24: Linux - Unix. Sistema operativo multiusuario (primera …imagenes.mailxmail.com/cursos/pdf/3/linux---unix-sistema-operativo... · servidor Unix - Linux. ... en sistemas Unix/ Linux

- Teclas especiales. Return, Delete, Backspace y Tab.- Barra espaciadora. - Caracteres de control. Combinación de CTRL más una letra.- Teclas de función. Usadas en tareas de programación.

2 4

mailxmail - Cursos para compartir lo que sabes

Page 25: Linux - Unix. Sistema operativo multiusuario (primera …imagenes.mailxmail.com/cursos/pdf/3/linux---unix-sistema-operativo... · servidor Unix - Linux. ... en sistemas Unix/ Linux

14. Linux - Unix. Comandos básicos

Comandos básicos de Unix/Linux

El sistema Unix/Linux tiene a disposición de todos sus usuarios una gran cantidadde programas. Estos programas se ejecutan mediante comandos. Asimismo tieneuna sintaxis de comandos bastante estandarizada, de tal forma que puedanaplicarse a casi todos ellos por igual. Generalmente, las comandos en Unix/Linux:

- Se utilizan por sí solas.- Se utilizan acompañados por argumentos.- Algunos permiten opciones.

A. Comandos básicos

Al igual que en DOS, hay comandos que el usuario puede manejar sin provocarproblemas en el funcionamiento del sistema, como los que muestra la Tabla 13.2.

2 5

mailxmail - Cursos para compartir lo que sabes

Page 26: Linux - Unix. Sistema operativo multiusuario (primera …imagenes.mailxmail.com/cursos/pdf/3/linux---unix-sistema-operativo... · servidor Unix - Linux. ... en sistemas Unix/ Linux

Tabla 13.2

2 6

mailxmail - Cursos para compartir lo que sabes

Page 27: Linux - Unix. Sistema operativo multiusuario (primera …imagenes.mailxmail.com/cursos/pdf/3/linux---unix-sistema-operativo... · servidor Unix - Linux. ... en sistemas Unix/ Linux

15. Linux - Unix. Formato de los comandos

B. Formato de los comandos de Unix/Linux

El formato de las comandos Unix/Linux es bastante parecido al de los comandosDOS. Cada orden se separa de las siguientes, ya que en Unix/Linux se puede introducirmás de una orden en la misma línea, mediante un punto y coma (;).

Al igual que en DOS, lo primero que se introduce es el comando, seguido de losargumentos o parámetros del mismo.

Cuando introduces parámetros o un argumento (caracteres como tal), se deja unespacio en blanco.

Observa la forma de introducir comandos en Unix/Linux.

- Comando. Indica al intérprete de comandos o shell la acción a realizar.

- Opciones. Es el modificador del comando. Las opciones se escriben acontinuación del carácter -. Recuerda que en DOS se introducían tras el carácter /.

- Argumentos. Caracteres que se utilizan como entrada del comando. El argumentopuede ser un archivo o un directorio.

Tabla 13.3.

Como puedes ver, la forma de introducir comandos en Unix/Linux es muy parecidaa la forma de hacerlo en DOS. La diferencia fundamental es que aquí sí sonimportante las mayúsculas y las minúsculas.

Normalmente, en Unix/Linux todas las comandos, archivos y directorios se escribenen minúsculas, y sin caracteres especiales. Por lo tanto, no será lo mismo DATE quedate.

2 7

mailxmail - Cursos para compartir lo que sabes

Page 28: Linux - Unix. Sistema operativo multiusuario (primera …imagenes.mailxmail.com/cursos/pdf/3/linux---unix-sistema-operativo... · servidor Unix - Linux. ... en sistemas Unix/ Linux

16. Linux - Unix. Otros comandos básicos

C. Otros comandos básicos

(Véase la Tabla 13.4).

Tabla 13.4.

Nota: Con este capítulo hemos llegado al final del curso. Recuerda que este trabajoes un fragmento del libro "CEO - Sistemas informáticos multiusuario y en red" delautor F. J. Muñoz, publicado por la editorial McGraw-Hill (ISBN: 84-481-9962-6).

2 8

mailxmail - Cursos para compartir lo que sabes