módulo i administración avanzada del sistema operativo

Upload: lily-caiza

Post on 15-Oct-2015

55 views

Category:

Documents


0 download

TRANSCRIPT

  • Ejercicios del Estudiante

    Administracin Avanzada del Sistema Operativo

    Ejercicio 1: Linux, su historia y cultura Nota: Esta unidad no tiene ejercicios. Esta pgina simplemente asegurar que la numeracin de los ejercicios se mantenga sincronizada.

  • Ejercicios del Estudiante

    Administracin Avanzada del Sistema Operativo

    Ejercicio 2: Instalacin del sistema operativo

    De qu se trata este ejercicio Este ejercicio trata de la instalacin del sistema operativo Linux.

    Qu seremos capaces de hacer Al finalizar este ejercicio Ud. tendr la capacidad de hacer lo siguiente:

    Preparar un sistema para la instalacin de Linux Particionar un sistema Instalar Linux

    Materiales requeridos Una estacin por estudiante. Conjunto de medios (CDs o DVDs) de instalacin.

  • Ejercicios del Estudiante

    Administracin Avanzada del Sistema Operativo

    Instrucciones de Ejercicio Nota: Los Los ejercicios en este material de curso han sido diseados y probados en las siguientes distribuciones:

    v Centos 5.2 Si Ud. est usando esta distribucin siga las instrucciones que vienen. Si usa otra distribucin u otra versin, su instructor le podr dar informacin adicional.

    Dependiendo de las circunstancias su instructor le proveer de un conjunto de medios de instalacin en CD o DVD o compartir estos medios en red, de modo que pueda realizar el proceso de instalacin.

    Si Ud. instala a travs de red, el instructor le dar informacin adicional respecto a lo siguiente:

    El mtodo de instalacin: NFS, FTP, HTTP. La direccin IP que ser utilizada por su estacin de trabajo, si se est utilizando DHCP,

    no es necesario.

    El nombre o direccin IP del servidor de instalacin. El path de las imgenes de instalacin en el servidor de instalacin.

    Instalando CentOS 5.2 (Instalacin basada en DVD)

    1. Configurar el BIOS del sistema para que arranque desde el CD ROM.

    2. Insertar el (primer) CD o DVD de instalacin de CentOs 5.2 en el DVD ROM.

    3. Encender o reiniciar el sistema.

    4. Ud. puede observar que el sistema arranca desde el CD.

    5. Para iniciar la instalacin grfica presionamos la tecla Enter. 6. Aparece una opcin para revisar los medios (CD/DVD) de instalacin. Si Ud. Est seguro

    de que estos medios funcionan adecuadamente, puede prescindir (Skip) de la verificacin. 7. En la pantalla inicial de instalacin grfica de Centos 5.2, se da clic en Next. 8. Escoja el lenguaje para el proceso de instalacin (Recomendado: Ingls) y presione Next. 9. Escoja el idioma en el que trabaja su teclado (Espaol) y clic en Next. 10. Al aceptar la configuracin de teclado, obtiene una advertencia en referencia a que la

    informacin que Ud. Tendra en el disco podra ser borrada en el paso que viene que es el de particionamiento. Acepte la advertencia y siga adelante.

    11. En la seccin de particionamiento, en el primer men, seleccione la opcin que le permite crear un esquema personalizado de particionamiento (Custom Layout) y continue.

    12. En la nueva pantalla y de ser posible cree tres particiones una para /boot de 100 MB, una para swap de 2GB, una para el sistema de archivos / que ocupe 10 GB, una para /home de 1 GB, dejando libre al menos 1 GB. Permita a su instructor revisar el esquema de particionamiento antes de guardarlo.

    13. Luego clic en Next. 14. Escoja la instalacin de GRUB para el arranque. Clic en Next. 15. En la seccin de dispositivos de red, configrelos, su instructor le dir si usar DHCP o no.

    Si no, l le proveer de una Direccin IP, Mscara de Red, Red y direccin de Broadcast,

  • Ejercicios del Estudiante

    Administracin Avanzada del Sistema Operativo

    as como el Hostname, Gateway y direcciones de DNS. Ingrese estos valores, revselos y de Clic en Next.

    16. Escoja la opcin correspondiente de Huso Horario de acuerdo a su situacin geogrfica en el mapa que se le presenta. Clic en Next.

    17. Designe una contrasea para el usuario root (sta ser lpic2009), confrmela y clic en Next.

    18. Ahora seleccione los paquetes de instalacin de acuerdo a lo recomendado por su instructor. Adems asegrese de anotar claramente estas indicaciones.

    19. Clic en Next para que de inicio la instalacin del sistema operativo. Este proceso tomar alrededor de 30 minutos, dependiendo de las caractersticas tcnicas de los equipos.

    20. En el momento en que aparece la pantalla de instalacin completa retire el CD/DVD del CD ROM y de clic en Reboot, para reiniciar el sistema.

    21. Ahora es necesario completar algunos pasos post-instalacin, de Clic en Next. Entre los pasos de instalacin se mencionarn herramientas como la de Firewall (iptables) y SELinux, por favor deshabiltelas. As mismo se le solicitar configurar la hora del equipo. Finalmente deber reiniciar el equipo nuevamente.

    FIN DEL EJERCICIO

  • Ejercicios del Estudiante

    Administracin Avanzada del Sistema Operativo

    Ejercicio 3: Utilizacin Bsica del Sistema

    De qu se trata este ejercicio El propsito de este ejercicio es la familiarizacin con el sistema operativo Linux, la sintaxis y algunos comandos bsicos. El ejercicio muestra tambin algunos conceptos en referencia a la caracterstica de multiusuario.

    Qu seremos capaces de hacer Al finalizar este ejercicio Ud. tendr la capacidad de hacer lo siguiente:

    Conmutar entre terminales virtuales Hacer login en un sistema Linux y cambiar su password. Ejecutar comandos bsicos- Usar los comandos write y wall para comunicarse con otros usuarios. Usar las teclas de control del teclado para controlar la salida de la lnea

    de comandos.

    Usar el historial de comandos.

  • Ejercicios del Estudiante

    Administracin Avanzada del Sistema Operativo

    Instrucciones de Ejercicio Haciendo Login en una Terminal virtual En esta seccin va a hacer login en el sistema utilizando las terminales virtuales tanto de texto como grficas.

    1. Si la instalacin no dio problemas, debera ver un prompt de login grfico. Si este no es el caso, pregunte a su instructor para arreglarlo.

    2. Verifique que Ud. tenga 7 terminales virtuales diferentes. Presione cclicamente Alt-Fn, donde n es el nmero de Terminal al que Ud. Desea acceder. Use Ctrl-Alt-Fn cuando Ud. est en una Terminal grfica.

    3. En su primera Terminal virtual (tty1), haga login en el sistema con su propio nombre de usuario que configur cuando se instal el sistema. Si no cre el usuario, consulte a su instructor sobre cmo hacerlo.

    4. En su segunda Terminal virtual (tty2), haga login en el sistema como root. Despus de haberlo hecho, mire el command prompt. Nota algo diferente con el command prompt de las otras terminales virtuales?

    5. En su sptima Terminal virtual (tty7), haga login en el sistema con su propio nombre de usuario y password.

    6. Abra una ventana Terminal. Eche un vistazo al command prompt. Difiere este del command promt tty1? Por qu? Por qu no?

    Comandos Bsicos En esta seccin vamos a ejecutar algunos comandos bsicos, para que se familiarice con la sintaxis de comandos de Linux, y el hecho de que Ud. est en un sistema multiusuario y multitarea.

    Todos los comandos en esta seccin se ejecutan en la Terminal virtual 7 (el promtp de login grfico donde est logueado), usando la ventana Terminal que abri, a menos que se especifique otra instruccin.

    7. Cambie su password. Memorice este password porque nadie podr recuperarlo si lo olvida.

    8. Muestre la fecha del sistema.

    9. Muestre el calendario completo del ao 2006.

    10. Muestre el mes de mayo del ao 2001 y 01. Son los aos 2001 y 01 los mismos?

    11. Genere una lista de todos los usuarios presentes en el sistema.

    12. Muestre su nombre de login.

    13. Muestre la informacin de login de su propia cuenta de usuario y de la de root.

    14. Limpie su pantalla.

    15. Imprima el texto Estoy ocupado en su pantalla. 16. Escriba el mensaje Estoy ocupado a la pantalla de root. Revise si root recibi el mensaje. 17. Escriba el mensaje Estoy ocupado a la pantalla de todos los usuarios. Revise si todos

    recibieron el mensaje.

    Tips de Teclado 18. El bash shell tiene una funcin de historial de comandos. Mire algunos de los comandos

    que ha ingresado. Intente alterar alguno de estos comandos, luego ejecute el comando de

  • Ejercicios del Estudiante

    Administracin Avanzada del Sistema Operativo

    nuevo.

    19. Su Terminal tiene un buffer que lleva la cuenta de la salida de sus comandos. Mire la salida de los comandos previos.

    20. Bash soporta el auto completado de comandos y nombres de archivos con el caracter TAB. Intente utilizar esta caracterstica, tanto en comandos como en nombres de archivos.

    Usando el historial 21. Use el comando history para ver los ltimos 20 comandos que escribi. 22. Ejecute uno de los comandos de la lista del historial.

    23. Ejecute de nuevo el comando echo, esta vez reemplazando ocupado por disponible. 24. Bash soporta tambin la bsqueda dentro del historial. Intente esta caracterstica.

    FIN DEL EJERCICIO

  • Ejercicios del Estudiante

    Administracin Avanzada del Sistema Operativo

    Ejercicio 4: Archivos y Directorios

    De qu se trata este ejercicio Este ejercicio les da a los estudiantes la oportunidad de empezar su trabajo con directorios y los archivos que estos contienen.

    Qu seremos capaces de hacer Al finalizar este ejercicio Ud. tendr la capacidad de hacer lo siguiente:

    Trabajar con directorios Trabajar con archivos Trabajar con archivos y directorios de manera recursiva Trabajar con archivos binarios

  • Ejercicios del Estudiante

    Administracin Avanzada del Sistema Operativo

    Instrucciones de Ejercicio Trabajando con directorios

    1. Si Ud. no est logueado con su nombre de usuario en la tty7, hgalo ahora. Asegrese de tener una ventana Terminal abierta.

    2. Revise el directorio en el que est ubicado. Qu directorio es? _________________

    3. Cmbiese de directorio al directorio raz (/).

    4. Verifique que se encuentra en el directorio raz y ejecute un listado simple y uno largo de los archivos en este directorio.

    5. Liste todos los archivos dentro del directorio actual y liste todos los archivos en el directorio actual y dentro de los directorios que posee.

    Nota: Este comando provee salida extensiva. Una vez que haya visto suficiente, termine el comando con la secuencia adecuada.

    6. Regrese a su directorio home y liste sus contenidos incluyendo los archivos ocultos.

    7. Cree un directorio en su directorio home y que se llame mydir. Luego, ejecute el comando para ver una lista larga dentro de su directorio home y el directorio mydir.

    8. Cmbiese al directorio mydir. Cree dos archivos de longitud cero llamados myfile1 y myfile2.

    9. Ejecute el comando para ver un listado largo de los contenidos del directorio mydir. Cules son los tamaos de myfile1 y myfile2? _____________________

    10. Regrese a su directorio home y use el comando ls -R para ver su rbol de directorios. 11. Intente remover el directorio mydir. Funciona? 12. Vaya al directorio mydir una vez ms y borre los dos archivos en ese directorio. Luego

    regrese a su directorio home y borre el directorio mydir.

    Trabajando con archivos 13. Mire el contenido del archivo /etc/passwd. El archivo /etc/passwd contiene una lista de

    todos los usuarios autorizados a usar el sistema.

    14. Copie el archivo /etc/passwd a su directorio home y renmbrelo a usersfile. 15. Divida el archivo usersfile en archivos ms pequeos, de 200 bytes cada uno.

    16. Haga un listado largo de todos los archivos en su directorio home.

    Trabajando con archivos y directorios recursivamente

    17. Cree un directorio sub1 y un directorio sub2 dentro de sub1. Haga todo esto utilizando un solo comando.

    18. Vaya al directorio sub2 y cree un archivo llamado myfile.

    19. Regrese a su directorio home. Luego haga una copia del rbol de directorio sub1 con el nombre de tree1. Haga una lista recursiva de todos los archivos y directorios en sub1 y en tree1.

    20. Ahora Ud tiene dos rboles de directorios, llamados sub1 y tree1. Mueva el rbol de directorio tree1 dentro del subdirectorio sub1.

    21. Liste los contenidos de su directorio home. Haga un listado recursivo de todos los archivos

  • Ejercicios del Estudiante

    Administracin Avanzada del Sistema Operativo

    y directorios en el directorio sub1.

    Trabajando con archivos binarios 22. Liste el contenido del archivo /bin/ls usando el comando od.

    FIN DEL EJERCICIO

  • Ejercicios del Estudiante

    Administracin Avanzada del Sistema Operativo

    Ejercicio 5: Permisos de Acceso al Sistema de Archivos

    De qu se trata este ejercicio Este ejercicio les da a los estudiantes la oportunidad de trabajar con permisos de archivos y directorios.

    Qu seremos capaces de hacer Al finalizar este ejercicio Ud. tendr la capacidad de aplicar permisos en archivos y directorios.

  • Ejercicios del Estudiante

    Administracin Avanzada del Sistema Operativo

    Instrucciones de Ejercicio Creando cuentas de usuario Con el objetivo de demostrar el uso de permisos en su totalidad, Ud necesita crear unos pocos usuarios adicionales tux1 y tux2, quienes son miembros del grupo penguins. Para esto, necesita ejecutar algunos comandos que no se han cubierto an en el curso y que normalmente no se necesitan ejecutar como usuarios comunes.

    1. En una terminal loguese como root.

    2. Ejecute la siguiente serie de comandos:

    # groupadd penguins # useradd -m -g penguins -c Tux el Pinguino (1) tux1 # useradd -m -g penguins -c Tux el Pinguino (2) tux2 # passwd tux1 New password: pinguino1 Retype new password: pinguino1 # passwd tux2 New password: pinguino2 Retype new password: pinguino2

    3. En otra terminal, loguese como tux1 con el password pinguino1 y en otra loguese como

    tux2 con el password pinguino2.

    Permisos en archivos y directorios 4. Cmbiese a la terminal donde est como el usuario tux1 y observe sus permisos sobre su

    directorio home.

    5. Cmbiese a la terminal donde Ud est como tux2. Intente cambiarse al directorio home de tux1, o leer el contenido del directorio home de tux1. Funciona?

    En un sistema Fedora, CentOS o Reh Hat, ambos comandos fallan, pues los permisos por defecto sobre los directorios home de los usuarios estn seteados a rwx------.

    6. Cmbiese a la terminal donde est como el usuario tux1 y cambie los permisos sobre el directorio home de tux1 de modo que otros usuarios estn permitidos de leer y acceder en l. Luego intente acceder al directorio nuevamente como tux2. Funciona?

    7. Como tux2, intente crear y borrar archivos en el directorio home de tux1. Funciona?

    8. De nuevo regrese a la Terminal donde est como tux1. Cree un directorio bin y copie el archivo /bin/ls en este directorio, renombrndolo a my_ls en el proceso.

    9. Configure los permisos en my_ls a rw-r------, luego intente ejecutarlo, tanto como tux1 y como tux2. Funciona? Por qu no?

    10. Ahora configure los permisos a rwxr-xr-x, entonces intente ejecutar el archivo my_ls una vez ms, tanto como tux1 como tux2. Funciona ahora?

    11. Intente ejecutar my_ls como tux1 y tux2, y como Ud mismo, pero ahora con los permisos: rw-------, rw-rw----, rwx------, rwx--x--- y rwx--x--x. Qu permisos se requieren, los mnimos, para que tux1 pueda ejecutar my_ls? Cules son los permisos mnimos que se requieren para tux2? Qu permisos requiere su propia cuenta de usuario?

    FIN DEL EJERCICIO

  • Ejercicios del Estudiante

    Administracin Avanzada del Sistema Operativo

    Ejercicio 6: Fuentes de Documentacin de Linux

    De qu se trata este ejercicio El propsito de este ejercicio es dar a los estudiantes la oportunidad de explorar y experimentar con los comandos man e info. Los estudiantes tambin leern documentacin FAQ y HOWTO.

    Qu seremos capaces de hacer Al finalizar este ejercicio Ud. ser capaz de:

    Usar el comando man Usar el comando info Localizar y usar otro tipo de documentacin Linux

  • Ejercicios del Estudiante

    Administracin Avanzada del Sistema Operativo

    Instrucciones de Ejercicio Pginas man

    1. Si Ud no est ya logueado en el sistema, hgalo como tux1 en una Terminal virtual. 2. Abra las pginas man para el comando man. Lea el texto que sigue para obtener un mejor

    entendimiento de la funcionalidad del comando man. 3. Busque el string PAGER en la pgina manual del comando man. 4. Use la tecla para finalizar el comando man. 5. Abra la pgina man del comando ls Muvase a travs de las pginas manuales:

    a. Vaya a la ltima pgina

    b. Vaya a la pgina anterior

    c. Vaya a la primera pgina

    Tipee esos comandos mientras observa la pgina man de ls. 6. Cierre el comando man.

    7. Encuentre qu pginas manuales tienen que ver con passwd. Luego vea cada pgina, pasando el nmero de seccin correspondiente.

    Nota: Si el comando man -k o apropos no funcionan, entonces necesita ejecutar el comando makewhatis como root. Normalmente, el comando makewhatis es ejecutado automticamente cada noche, pero ya que su sistema est recin instalado, podra no haberse ejecutado todava.

    Comando info 8. Vea la documentacin de info del comando finger. Est Ud leyendo documentacin info

    ahora?

    9. Muvase a travs de esta pgina usando la barra espaciadora o la tecla .

    10. Lea la ayuda para el comando info. Use la tecla para regresar a la informacin de finger.

    11. Termine el comando info. 12. Lea la documentacin info del comando info. Use el men utilizando las teclas y

    .

    Documentacin adicional

    13. Haga un listado de todos los directorios en el directorio /usr/share/doc. Abra algunos de estos directorios para observar el tipo de informacin que est disponible.

    14. Si los sistemas del aula de clase tienen una conexin a Internet, entonces eche un vistazo a la pgina http://www.tldp.org. Este es el principal site de documentacin de Linux.

    Note que en algunos casos se requiere algn tipo de configuracin adicional de su web browser pues el aula de clase est detrs de algn tipo de firewall basado en Proxy. En este caso, su instructor le dar ayuda adicional.

    FIN DEL EJERCICIO

  • Ejercicios del Estudiante

    Administracin Avanzada del Sistema Operativo .

    Ejercicio 7: Estructura del sistema de archivos de Linux

    De qu se trata este ejercicio El propsito de este ejercicio es dar a los estudiantes una idea clara acerca de la estructura del sistema de archivos comn en la mayora de los sistemas Linux.

    Qu seremos capaces de hacer Al finalizar este ejercicio Ud. ser capaz de:

    Describir la forma en la que el filesystem de Linux est configurado Montar y desmontar sistemas de archivos Crear y manipular dispositivos de disco Localizar archivos y directorios en el sistema de archivos de Linux.

  • Ejercicios del Estudiante

    Administracin Avanzada del Sistema Operativo

    Instrucciones de Ejercicio Descubriendo el filesystem

    1. En una Terminal virtual loguese como root.

    2. Haga un listado de los directorios presentes en la raz de su filesystem y ejecute los pasos 3. y 4. para cada uno de estos directorios.

    3. Ejecute el comando du en cada directorio. El comando du muestra la cantidad de espacio en disco que el directorio y todos sus subdirectorios utilizan (en kilobytes). Qu directorio contiene la mayor cantidad de informacin? Por qu?

    4. Haga cd a cada directorio y liste sus contenidos. Si hay subdirectorios importantes, liste sus contenidos tambin. No intente, sin embargo, listar todo. Intente descubrir qu clase de archivos encuentra en cada directorio.

    Accediendo al CD ROM 5. Observe el contenido del archivo /etc/fstab. En qu ubicacin se montar su CD ROM?

    6. Liste los contenidos de los directorios que va a ser usado como punto de montaje para su CD ROM.

    7. Inserte un CD en su drive de CD ROM y mntelo, luego mire los contenidos del punto de montaje nuevamente.

    Nota: En algunas situaciones, el CD ROM es automticamente montado. Esto debido a que algunas distribuciones estn configuradas para correr el servicio autorun cuando un usuario se loguea en un ambiente grfico. Este servicio imita el comportamiento de MS Windows: Chequea el drive de CD ROM cada segundo, monta el CD si uno es encontrado, e intenta correr el ejecutable autorun si est presente en el CD.

    8. Intente expulsar el CD ROM. Funcional? Desmonte el CD ROM, luego intente expulsarlo de nuevo. Funciona ahora?

    9. En otra Terminal virtual loguse como tux1 si no lo est ya. Intente montar el CD ROM desde ah. Funciona? Por qu? Finalmente desmonte, expulse y remueva el CD.

    Particionamiento 10. En una Terminal virtual, logueado como root, liste todas las particiones que se encuentran

    formando parte de su disco. Identifique el tipo de disco y el nmero de particin, as como su correspondiente punto de montaje en el sistema.

    11. Loguese como root y desmonte la particin donde est alojado el sistema de archivos de home y haga un chequeo del filsystem con la herramienta fsck. Luego monte la particin nuevamente en el punto de montaje correspondiente.

    Localizacin de archivos 12. Como usuario root, haga una bsqueda con el comando find para encontrar todos los

    archivos que contengan en su nombre el string csh, dentro del directorio /usr. 13. Igualmente como usuario root, determine la ubicacin exacta en las estructura de archivos,

    del comando ls.

    14. Ahora localice el patrn csh utilizando el comando locate. Realice si fuera necesario la actualizacin de la base de datos mediante el comando updatedb.

    15. Busque todas las correspondencias de cat utilizando el comando whatis. Asimismo utiliza para ello el comando apropos.

    FIN DEL EJERCICIO

  • Ejercicios del Estudiante

    Administracin Avanzada del Sistema Operativo

    Ejercicio 8: Herramientas para el manejo de Filesystems

    De qu se trata este ejercicio El propsito de este ejercicio es introducir a los estudiantes en las herramientas de manejo de espacio en los sistemas de archivos, a travs del establecimiento de cuotas de disco, el control y monitoreo de las mismas y el uso de hard y symbolic links.

    Qu seremos capaces de hacer Al finalizar este ejercicio Ud. ser capaz de:

    Utilizar los comandos esenciales para la implementacin de cuotas de disco

    Habilitar y monitorear el uso de cuotas de disco en un sistema de usuarios

    Manejar y crear Hard y Symbolic Links

  • Ejercicios del Estudiante

    Administracin Avanzada del Sistema Operativo

    Instrucciones de Ejercicio Creacin de cuotas de disco de usuario

    1. Abra el archivo /etc/fstab y asegrese de que las cuotas de disco estn habilitadas en /home, para usuarios. (opcin usrquota). Desmonte y monte nuevamente el filesystem de modo que los cambios realizados tomen efecto.

    2. Cree el archivo vaco aquota.user dentro del directorio raz del sistema de archivos (/home) (touch /home/aquota.user)

    3. Active el chequeo de cuotas en el sistema de archivos. (quotacheck /home) 4. Active las cuotas de disco en el sistema de archivos. (quotaon) 5. Configure el softlimit de los usuarios tux1 y tux2 en 4 MB y el hardlimit en 5MB. (edquota

    -u tux1) 6. Loguese como usuario tux1 en otra Terminal virtual y cree 5 archivos de 1 MB cada uno.

    Observe lo que sucede.

    Utilice el siguiente comando para la creacin de cada archivo de 1 MB: dd if=/dev/zero of=one bs=1M count=1

    7. An logueado como tux1, revise el estado de la cuota, (quota) 8. En una sesin de root cheque las cuotas de todos los usuarios (repquota /home)

    Hard y Symbolic Links

    9. Dentro del directorio /etc/rc.d/ liste el contenido de cada uno de sus subdirectorios y observe los links existentes. (comando ls -l)

    10. Loguese como tux1 y cree un archivo llamado myfile 11. Cree un symbolic link hacia myfile y que se llame myslink (ln s myfile myslink) 12. Cree un hard link hacia myfile llamado myhlink (ln myfile myhlink) 13. Utilizando el comando ls liste el contenido del directorio donde est trabajando y verifique

    la creacin de los links.

    14. Utilizando el comando stat y como argumento a myfile y myhlink, verifique que estos dos hacen referencia al mismo inode.

    15. Utilizando en comando ls -li myslink verifique que este link posee su propio inode.

    FIN DEL EJERCICIO

  • Ejercicios del Estudiante

    Administracin Avanzada del Sistema Operativo

    Ejercicio 9: Edicin de Archivos

    De qu se trata este ejercicio El propsito de este ejercicio es dar a los estudiantes la oportunidad de crear y editar archivos usando el editor de UNIX ms popular, vi, y para probar otros editores tambin disponibles.

    Qu seremos capaces de hacer Al finalizar este ejercicio Ud. ser capaz de:

    Usar vi para crear y editar archivos. Listar algunos otros editores tambin disponibles en el sistema.

  • Ejercicios del Estudiante

    Administracin Avanzada del Sistema Operativo

    Instrucciones de Ejercicio Trabajando con vi

    1. Loguese como tux1 en una Terminal virtual.

    2. Asegrese de encontrarse en su directorio home. Cree un archivo llamado vitest usando vi. Escriba el siguiente texto y el alfabeto marino en el archivo vitest. Agregar el alfabeto es una manera fcil de llenar un par de pantallas de informacin necesaria para un uso posterior. Esta es una sesin de entrenamiento para el uso de vi.

    A alfa

    B bravo

    C charlie

    D delta

    E eco

    F fox

    G golf

    H hotel

    I indian

    J july

    K kilo

    L lima

    M mike

    N november

    O oskar

    P papa

    Q quebec

    R romeo

    S sierra

    T tango

    U uniforme

    V victor

    W whisky

    X xerox

    Y yanky

    Z zolu

    3. Regrese al modo comando. Guarde y salga del archivo. Note que tan pronto presione los dos puntos (:), estos aparecen bajo la ltima lnea de su rea de entrada. Una vez que el bfer est vaco y el archivo cerrado, Ud ve un mensaje con el nmero de lneas y caracteres en el archivo.

  • Ejercicios del Estudiante

    Administracin Avanzada del Sistema Operativo

    Teclas de movimiento del cursor 4. Abra de nuevo el archivo vitest. Note que la ltima lnea en la pantalla muestra el nombre

    del archivo y el nmero de caracteres.

    5. Utilizando las teclas , , y , practique movindose a travs del archivo. 6. Usando los comandos vi apropiados para moverse a travs del texto:

    a. Muvase una pgina adelante b. Muvase una pgina atrs c. Mueva al cursor a la primera lnea en la pantalla H d. Mueva al cursor a la ltima lnea en el archivo G e. Mueva el cursor a la primera lnea en el archivo :1 f. Mueva el cursor a la lnea 5 del archivo :5 g. Mueva el cursor al final de la lnea $ h. Mueva el cursor al final de la lnea 0

    7. Cambie el archivo vitest de manera que despus de cada letra del alfabeto, un primer

    nombre comn sea agregado y que inicie con esa letra. Asegrese de usar distintos mtodos para conmutar del modo de comandos al modo de edicin (insert).

    El archivo debera verse ms o menos as:

    A alfa Ani

    B bravo Ben

    C charlie Carlos

    8. Practique algo ms con los comandos que se encuentran en la hoja de resumen.

    9. Guarde el archivo pero no salga de vi.

    Bsqueda global y reemplazo 10. Reemplace todos los espacios en el archivo vitest con tabs (:%s / / /g) 11. Guarde su archivo (:wq, :x o ZZ)

    Trabajando con otros editores 12. Su sistema tiene otros editores en modo texto y grfico que estn disponibles. Inicie alguno

    de ellos.

    gedit vitest kedit vitest hexedit vitest

    FIN DEL EJERCICIO

  • Ejercicios del Estudiante

    Administracin Avanzada del Sistema Operativo

    Ejercicio 10: Conceptos Bsicos de Shell

    De qu se trata este ejercicio El propsito de este ejercicio es dar a los estudiantes la oportunidad de conocer las caractersticas bsicas del shell de Linux.

    Qu seremos capaces de hacer Al finalizar este ejercicio Ud. ser capaz de:

    Usar wildcards para expansin de nombres de archivos. Re-direccionar stdin, stdout y stderr. Usar pipes para proveer la salida de un proceso como entrada de

    otro.

    Ejecutar agrupamiento de comandos.

  • Ejercicios del Estudiante

    Administracin Avanzada del Sistema Operativo

    Instrucciones de Ejercicio Wildcards

    1. Loguese como tux1

    2. Vaya al directorio /etc y haga una lista de todos los archivos aqu. 3. Use ls con wildcards para listar nombres de archivos

    - Que terminen en conf. (ls -d *conf) - Que empiecen con d o D (ls -d [dD]*) - Que tengan una o en la quinta posicin (?????o*) - Que contengan la palabra tab (en cualquier combinacin con caracteres

    maysculas y minsculas) (ls -d *[tT][aA][bB]*) - Que terminen con un nmero (ls -d *[0-9]) - Que no terminen en un nmero (ls -d [!0-9])

    4. Qu sucede si ejecuta el comando ls -d ?[!y]*[e-f]? Cul ser el nombre de archivo ms corto que podra corresponder? Ejecute este comando para verificar su respuesta.

    5. Regrese a su directorio home.

    Redireccin 6. Use el comando cat y redireccin para crear un archivo llamado junk que contengan unas

    pocas lneas de texto. Cuando Ud haya escrito unas pocas lneas, termine su entrada al comando y retorne al prompt de shell. Luego vea los contenidos del archivo que ha creado.

    $ cat > junk Escriba algunas lneas de informacin $ cat junk

    7. Agregue algunas lneas ms al archivo junk usando redireccin. Luego vea los contenidos del archivo junk y cheque si todas las lneas que guard en este archivo estn ah. $ cat >> junk Escriba algunas lneas de informacin $ cat junk

    Pipes, Tees y Filtros 8. Cuente el nmero de archivos en su directorio actual. Use un pipe. No cuente los archivos

    manualmente.

    $ ls | wc -l 9. Hacen ls > tempfile; wc -l tempfile; rm tempfile lo mismo que el comando anterior?,

    Por qu? O Por qu no?

    10. Use el comando ls y guarde la salida en un archivo llamado tempfile2 antes de contar los archivos.

    $ ls | tee tempfile2 | wc -l 11. Use el comando sed para alterar la salida del comando ls -l /etc, de modo que se vea

    como si Ud poseyera todos los archivos en /etc. Ejecute esto con y sin la opcin global.

  • Ejercicios del Estudiante

    Administracin Avanzada del Sistema Operativo

    Cul es la diferencia?

    $ ls -l /etc | sed s/root/tux1/ $ ls -l /etc | sed s/root/tux1/g

    12. Use el comando awk para mostrar la primera y novena columna de la salida del comando ls -l /etc. $ ls -l /etc | awk {print $1 $9}

    13. Use el comando tac para mostrar la salida del comando ls en orden reverso. $ ls | tac

    14. Use el comando nl para numerar las lneas del archivo tempfile $ nl tempfile

    Agrupamiento de comandos 15. En la misma lnea de comandos, muestre la fecha actual del sistema y todos los usuarios

    que estn logueados en el sistema y guarde todo esto a un archivo, luego de numerar sus lneas. Cheque su salida.

    $ ( date ; who ) | nl > users $ cat users

    Ambiente de proceso 16. Muestre todas las variables que estn definidas en su ambiente de proceso actual.

    Tambin muestre las variables actualmente exportadas.

    $ set | less $ env | less

    17. Cree una variable x y setee su valor a 10. Revise el valor de la variable. Muestre nuevamente todas sus variables actuales.

    $ x=10 $ echo $x $ set | less $ env | less

    18. Cree un subshell. Cheque el valor que x mantiene en l. Cul es el valor de x? Liste las variables actuales del subshell. Ve alguna entrada para x? $ bash $ echo $x $ set | less

    19. Setee el valor de x a 500 y regrese al proceso padre.Cul es el valor actual de x? Por qu?

    $ x=500 $ exit $ echo $x

    20. Asegrese de que los procesos hijos hereden la variable x. Verifique esto creando un

  • Ejercicios del Estudiante

    Administracin Avanzada del Sistema Operativo

    subshell y chequeando el valor de la variable x. Luego de esto salga del subshell.

    $ export x $ env | less $ bash $ echo $x $ exit

    FIN DEL EJERCICIO

  • Ejercicios del Estudiante

    Administracin Avanzada del Sistema Operativo

    Ejercicio 11: Procesos del Sistema

    De qu se trata este ejercicio Este ejercicio familiariza a los estudiantes con la manipulacin y control de procesos.

    Qu seremos capaces de hacer Al finalizar este ejercicio Ud. ser capaz de:

    Monitorear procesos Cambiar y entender el ambiente de procesos Controlar jobs (trabajos del sistema) Terminar procesos

  • Ejercicios del Estudiante

    Administracin Avanzada del Sistema Operativo

    Instrucciones de Ejercicio Listando Procesos

    1. Haga login como usuario tux1 en una Terminal virtual.

    2. Revise el PID de su ambiente de login y luego cree un subshell digitando el comando bash, Cul es el PID del subshell? Es diferente de su proceso de login? __________________________________________________________________ __________________________________________________________________

    3. Ingrese el comando ls -R / > outfile 2> /dev/null & y luego muestre los procesos que estn corriendo en el sistema. Qu procesos estn corriendo? __________________________________________________________________ __________________________________________________________________

    4. Mientras el comando ls est todava corriendo, ejecute el comando pstree. (Podra ser necesario reiniciar el comando ls).

    5. Haga login como tux2 en otra Terminal virtual y ejecute el comando vi tux2_file. 6. Regrese a la Terminal de tux1 y muestre todos los procesos de su sistema. Si es

    necesario, revise las pginas man e info para encontrar las opciones correctas que muestren todos los procesos corriendo en el sistema. Busque sus propios procesos, as como los procesos de tux2.

    7. Ejecute nuevamente el comando ls -R / > outfile 2> /dev/null & y luego salga de su Terminal, con el comando exit. En una nueva Terminal virtual liste los procesos que estn corriendo. Qu pasa con los procesos si mata a sus procesos padre?

    Control de Jobs

    8. Usando vi u otro editor, cree un archivo llamado myclock en su directorio bin con los siguientes contenidos: while true do date sleep 10 done

    Haga el script ejecutable. 9. Corra el script myclock. 10. Suspenda el job que inici. 11. Liste todos los jobs que Ud. est corriendo en el sistema y reinicie el job anterior

    en el background. 12. Liste todos los usuarios que han hecho login. Traiga de nuevo al job hacia el

    foreground, espere hasta recibir una marca de tiempo y luego salga del job. Terminando un proceso

    13. Ejecute el script myclock nuevamente, esta vez en el background.

  • Ejercicios del Estudiante

    Administracin Avanzada del Sistema Operativo

    14. Liste todos sus procesos y mate el proceso sleep. Qu sucede? 15. Ahora detenga el script de shell myclock.

    FIN DEL EJERCICIO

  • Ejercicios del Estudiante

    Administracin Avanzada del Sistema Operativo

    Ejercicio 12: Utilitarios del Sistema Operativo

    De qu se trata este ejercicio El propsito de este ejercicio es familiarizar a los estudiantes con algunas herramientas tiles disponibles en Linux.

    Qu seremos capaces de hacer Al finalizar este ejercicio Ud. ser capaz de:

    Listar columnas especficas de un archivo Buscar lneas que correspondan a un patrn dentro de archivos de

    texto

    Ordenar las lneas de un archivo Mostrar las primeras o ltimas lneas de un archivo Encontrar la ubicacin de ejecutables Comprimir y descomprimir archivos

  • Ejercicios del Estudiante

    Administracin Avanzada del Sistema Operativo

    Instrucciones de Ejercicio Trabajando con cut

    1. Muestre el contenido del archivo /etc/passwd $ cat /etc/passwd

    2. Muestre nicamente el nombre de usuario y el directorio home de los usuarios listados en /etc/passwd. $ cut f1,6 -d: /etc/passwd

    3. Muestre el nombre y los miembros de todos los grupos listados en /etc/group $ cut -f1,4 -d: /etc/group

    4. Liste nicamente el tipo, tamao y nombre de los archivos en el directorio actual.

    $ ls -l | cut -c1-1,31-45,52-

    Trabajando con grep 5. Encuentre todas las lneas que empiecen con la letra s en el archivo /etc/passwd.

    $ grep ^s /etc/passwd 6. Repita la bsqueda anterior, pero esta vez solamente muestre el nmero de lneas que

    contienen el patrn.

    $ grep c ^s /etc/passwd 7. Encuentre todos los procesos corriendo en el sistema cuyos dueos son tux1 y tux2.

    $ ps aux | egrep tux1|tux2

    Trabajando con sort 8. Muestre los contenidos del archivo /etc/passwd en orden alfabtico.

    $ sort /etc/passwd 9. Muestre los contenidos del archivo /etc/passwd nuevamente, pero ahora ordenados por el

    campo de directorio home.

    $ sort -t: +5 /etc/passwd

    Trabajando con head y tail 10. Muestre las primeras lneas del archivo /etc/passwd

    $ head /etc/passwd 11. Muestre las ltimas 6 lneas del archivo /etc/passwd

    $ tail -6 /etc/passwd 12. El comando tail es tambin muy til para mostrar informacin correspondiente a la salida

    en tiempo real de un comando. Primero, liste los procesos que estn corriendo actualmente en el sistema, note las cabeceras. Luego, muestre los procesos corriendo en su sistema excluyendo la informacin de cabecera.

    $ ps $ ps | tail +2

  • Ejercicios del Estudiante

    Administracin Avanzada del Sistema Operativo

    Trabajando con los comandos type, which y whereis 13. Encuentre donde est almacenado el comando passwd. Localice las pginas manuales

    para este comando.

    $ type passwd $ which passwd $ whereis passwd

    Trabajando con gzip, gunzip y zcat 14. Cree un archivo grande llamado big en su directorio home, por ejemplo capturando la

    salida del comando ls -lR /. Cul es el tamao de big? $ ls -lR / > big 2>&1 $ ls -l big

    15. Haga el archivo dos veces su tamao.

    $ cp big big2 $ cat big2 >> big $ rm big2

    16. Anote el tamao de big _______ Comprima el archivo big. Cul es el nuevo tamao del archivo y cul es su nuevo nombre? _________________

    $ ls -l big $ gzip big $ ls -l big* El nuevo nombre es big.gz

    17. Mire los contenidos del archivo big.gz $ zcat big

    18. Restaure el viejo archivo big. $ gunzip big $ ls l big* El nombre es big nuevamente.

    FIN DEL EJERCICIO

  • Ejercicios del Estudiante

    Administracin Avanzada del Sistema Operativo

    Ejercicio 13: Programacin Bsica de Shell

    De qu se trata este ejercicio Luego de utilizar Linux por un tiempo, Ud encuentra ciertas caractersticas de su ambiente que le gustara adaptar a algunas tareas que ejecuta regularmente y que quisiera automatizar.

    Este ejercicio le introduce a algunas de las ms comunes construcciones utilizadas para ayudarle escribiendo scripts de shell para personalizar y automatizar su ambiente computacional.

    Qu seremos capaces de hacer Al finalizar este ejercicio Ud. ser capaz de:

    Listar construcciones comunes usadas para escribir scripts de shell Crear y ejecutar scripts de shell simples

  • Ejercicios del Estudiante

    Administracin Avanzada del Sistema Operativo

    Instrucciones de Ejercicio Trabajando con parmetros posicionales

    1. Loguese como tux1 en una Terminal virtual.

    2. Cree un script de shell llamado parameters que devuelva los cinco parmetros que siguen, usando variables especiales predefinidas seteadas por el shell, para llenar los espacios en blanco. Ejecute el script usando los argumentos: 10 100 1000.

    $ vi parameters echo El nombre de este script es $0. echo El primer parmetro pasado es el nmero: $1. echo El segundo parmetro pasado es el nmero: $2. echo El tercer parmetro pasado es el nmero: $3. Echo En total fueron $# parmetros pasados. $ chmod +x parameters $ ./parameters 10 100 1000

    Ejecucin Condicional

    3. Usando la ejecucin condicional, cree un script llamado checkfile que confirme si el archivo llamado parameters existe en su directorio. Si existe, use un comando para mostrar su contenido. Ejecute el script. $ vi checkfile [ -f parameters ] && cat parameters $ chmod +x checkfile $ ./checkfile

    4. Modifique el script checkfile y cambie el nombre del archivo de parameters a noname (revise que no tenga un archivo con ese nombre en su directorio). Asimismo, usando ejecucin condicional, si el comando ls no fue exitoso, muestre el mensaje de error, El archivo no fue encontrado. Ejecute el script. $ vi checkfile

    [ -f nofile ] && cat nofile || echo El archivo no fue encontrado $ ./checkfile

    5. Modifique el script checkfile para aceptar un parmetro nico como entrada de la lnea de comandos a los comandos ls y cat. Ejecute el script dos veces, una vez usando el archivo parameters y una vez ms usando el archivo llamado noname. $ vi checkfile [ -f $1] && cat $1 || echo $1 no fue encontrado $ ./checkfile parameters $ ./checkfile noname

    6. Ejecute el script checkfile nuevamente, pero esta vez sin parmetros. Qu sucede? Modifique el script de manera que esto no aparezca nuevamente. $ ./checkfile $ vi checkfile

  • Ejercicios del Estudiante

    Administracin Avanzada del Sistema Operativo

    [ -f $1 ] && cat $1 || echo $1 no fue encontrado $ ./checkfile

    Loops 7. Usando el lazo for, modifique el script checkfile para aceptar mltiples archivos como

    entrada desde la lnea de comandos, en lugar de slo uno. Si los archivos son encontrados, mustrelos. Si no son encontrados muestre un mensaje de error mostrando todos los nombres de los archivos que no fueron encontrados. Mire en su directorio y note unos pocos nombres de archivos vlidos que pueda usar como entrada. Ejecute el script usando nombres de archivos vlidos e invlidos. $ vi checkfile for x in $* do [ -f $x ] && cat $x || echo $x no fue encontrado done $ ls $ ./checkfile filename filename filename (Donde filename es reemplazado por nombres de archivos vlidos e invlidos de su directorio)

    8. Ahora haga lo mismo, pero use un lazo while en combinacin con el comando shift. $ vi checkfile while [ ! -z $1 ] do [ -f $1 ] && cat $1 || echo $1 no fue encontrado shift done

    Aritmtica 9. De la lnea de comandos, muestre el resultado de multiplicar 5 por 6.

    $ echo $((5 * 6)) 10. Ahora cree un script llamado math para multiplicar cualquier par de nmero cuando se

    ingresen como parmetros en la lnea de comandos. Ejecute el script multiplicando 5 por 6. Experimente con otros dos nmeros. $ vi math echo $(( $1 * $2 )) $ chmod +x math $ ./math 5 6

    Ejercicio de integracin (opcional) 11. Use el conocimiento que gan en este curso para escribir un script que acepte un nombre

    directorio como parmetro y calcule el tamao total de los archivos en ese directorio.

  • Ejercicios del Estudiante

    Administracin Avanzada del Sistema Operativo

    $ vi sum if [ -d $1 ] then sum=0 for i in $( ls -l $1 | cut -c32-42 ) do sum=`expr $sum + $i` done echo El tamao total de los archivos en $1 es $sum. fi $ ./sum /tmp

    FIN DEL EJERCICIO

  • Ejercicios del Estudiante

    Administracin Avanzada del Sistema Operativo

    Ejercicio 14: La interfaz grfica en Linux

    De qu se trata este ejercicio Este ejercicio nos da la oportunidad de tomar contacto con los dos ambientes de escritorio principales en Linux: KDE y GNOME.

    Qu seremos capaces de hacer Al finalizar este ejercicio Ud. ser capaz de:

    Iniciar X Trabajar con GNOME Trabajar con KDE Listar y configurar varias aplicaciones en GNOME y KDE

  • Ejercicios del Estudiante

    Administracin Avanzada del Sistema Operativo

    Instrucciones de Ejercicio Iniciando el GUI

    1. Loguese como root en una Terminal virtual.

    2. Edite el archivo /etc/inittab y asegrese que el runlevel por defecto sea 3. 3. Reinicie el sistema. El ambiente grfico inicia?

    4. Loguese como tux1 e inicie X con en comando startx. 5. Finalice el ambiente X, haga logout y loguese como root.

    6. Edite el archivo /etc/inittab nuevamente y configure nuevamente el runlevel 5 por defecto. Reinicie el sistema nuevamente. Inici el ambiente grfico?

    Trabajando con GNOME y KDE

    7. Haga login en el ambiente grfico usando su propio nombre.

    8. Tanto GNOME como KDE tienen sus propias aplicaciones como procesadores de palabras, manejadores de archivos, editores de texto, etc, como una parte estndar del cdigo base. Estas aplicaciones son tpicamente competidores directos de sus aplicaciones correspondientes en una plataforma MS Windows.

    Una instalacin Linux por defecto instala muchas de estas aplicaciones y Ud puede descargar muchas ms de la pgina web de GNOME o KDE.

    9. Descubra dentro de cada ambiente de escritorio algunas de las herramientas que provee, muchas de ellas llevan nombres relacionados con el ambiente, por ejemplo kcalc, kwrite, gedit, gnome-calculator, etc. Utilice y pruebe cada una de estas herramientas tanto en KDE como en GNOME, usando el men de manejadores de pantalla, que aparece cuando hace logout del GUI.

    10. En KDE intente iniciar una aplicacin GNOME y viceversa. Funciona? Intente cortar y pegar entre las aplicaciones GNOME y KDE. Funciona?

    FIN DEL EJERCICIO

  • Ejercicios del Estudiante

    Administracin Avanzada del Sistema Operativo

    Ejercicio 15: Adecuacin del Ambiente de usuario

    De qu se trata este ejercicio Cuando los usuarios hacen login, generalmente prefieren sus ambientes adaptados a cubrir sus necesidades especficas. En este ejercicio, los estudiantes adaptarn su ambiente con algunas funciones muy tiles que son invocadas cada vez que hacen login.

    Qu seremos capaces de hacer Al finalizar este ejercicio Ud. ser capaz de:

    Adaptar los archivos .bash_profile y .bashrc Setear definiciones de alias Alterar valores de umask

  • Ejercicios del Estudiante

    Administracin Avanzada del Sistema Operativo

    Instrucciones de Ejercicio Adaptando el ambiente de shell

    1. Loguese como tux1 en una Terminal virtual.

    2. Edite el archivo apropiado para cambiar su ambiente cada vez que se ha logueado. Asegrese de tener las siguientes funciones cuando haga login.

    - Cambie el prompt primario para mostrar el path completo del directorio actual.

    - Mostrar un mensaje indicando su nombre de login y la fecha en la que hizo login.

    - Defina un alias num que muestre cuntos usuarios estn logueados en ese momento.

    - Setee la variable cheese con el valor gouda. $ vi .bash_profile PS1=$PWD $ echo El usuario $LOGNAME hizo login el $(date) alias num=who | wc -l cheese=gouda Adaptando el ambiente de shell

    3. Haga logout y login nuevamente. Cheque si las funciones que defini en el paso 1 estn activadas.

    - Muestra su prompt el path completo a su directorio actual?

    - Se muestra su mensaje?

    - Puede usar el comando num? - Est la varianle cheese seteada en gouda?

    4. Si todas las preguntas anteriores fueron respondidas con si, contine con el paso 5, si no es as, trate los pasos 2 y 3 nuevamente y ubique los inconvenientes.

    5. Inicie un subshell y responda las siguientes preguntas.

    - Muestra su prompt el path completo a su directorio actual?

    - Se muestra su mensaje?

    - Puede usar el comando num? - Est la varianle cheese seteada en gouda?

    6. Si las configuraciones estn tambin disponibles en subshells, contine con el paso 9, si no, contine con el paso 7.

    7. La mayora de configuraciones, con excepcin de las variables del sistema se aplican solamente al ambiente actual y no se pasan a los subshells (procesos hijos). Hay un archivo de configuracin en el sistema que permite que estas configuraciones estn disponibles tambin en subprocesos. Qu archivo es ste?

    8. Edite los archivos .bash_profile y .bashrc de manera que los parmetros adecuados estn en el archivo de configuracin respectivo. Qu datos deberan estar en .bash_profile y cules en .bashrc?

    9. Haga logout y login nuevamente y verifique que las configuraciones anteriores estn seteadas en su ambiente de login. Revise tambin si estos datos estn seteados en un subshell.

    10. En los pasos previos, Ud alter archivos de configuracin y luego hizo logout y login para

  • Ejercicios del Estudiante

    Administracin Avanzada del Sistema Operativo

    activar las nuevas configuraciones. Qu podra hacer para activar estas configuraciones en un archivo adaptado, sin hacer login y logout?

    11. Retorne nuevamente a su shell de login.

    12. Borre el alias num de su ambiente sin necesidad de editar el archivo .bashrc o .bash_profile. Luego liste la lista de alias seteados en ese instante intente ejecutar el alias num.

    13. Agregue el alias num a su ambiente y confirme si est de regreso nuevamente.

    Adaptando el ambiente X 14. Dentro de la interfaz grfica, abra algunas aplicaciones, y haga logout. Mientras hace logout active la opcin Save Setup. Luego haga login nuevamente. Aparecen sus aplicaciones y configuraciones nuevamente?

    FIN DEL EJERCICIO

  • Ejercicio 16: Configuracin Bsica del Sistema

    De qu se trata este ejercicio Este ejercicio brinda la oportunidad de familiarizarse con la configuracin bsica del sistema que podra necesitarse en una Workstation.

    Qu seremos capaces de hacer Al finalizar este ejercicio Ud. ser capaz de:

    Instalar y desinstalar RPMs Configurar una tarjeta de sonido Configurar una tarjeta de red

  • Instrucciones de Ejercicio

    El manejador de paquetes de Red Hat (RPM)

    1. Loguese como root en su ambiente grfico. Abra una ventana Terminal.

    2. Haga una lista de todos los paquetes que estn instalados en el sistema.

    3. Liste la informacin del paquete bash.

    4. Liste todos los archivos dentro del paquete bash.

    5. Liste todos los paquetes que contenga su medio de instalacin (archivos rpm dentro de su CD)

    6. Liste la informacin del paquete webmin contenido en su CD de datos, antes

    de instalarlo. Verifique que no est instalado.

    7. Instale el paquete webmin.

    8. Verifique que en efecto el paquete webmin est instalado.

    9. Desinstale el paquete webmin y verifique que ya no est disponible en el sistema.

    Configuracin de una tarjeta de sonido (Opcional) 10. Use la herramienta de configuracin de tarjeta de sonido que se incluya en su

    distribucin y configrela. Intente reproducir algo de audio.

    Configuracin de una tarjeta de red (Opcional) 11. Inspeccione los archivos donde la configuracin de red de su sistema est

    almacenada.

    12. Observe la configuracin actual utilizando comandos especficos del sistema.

    13. Intente cambiar la configuracin actual de red y observe los cambios realizados. Vuelva a dejar la configuracin original.

    FIN DEL EJERCICIO

  • Ejercicios del Estudiante

    Administracin Avanzada del Sistema Operativo

    Ejercicio 17: Asegurando una estacin Linux

    De qu se trata este ejercicio Este ejercicio provee la oportunidad de aplicar las tcnicas que pueden ser usadas para asegurar una estacin en Linux.

    Qu seremos capaces de hacer Al finalizar este ejercicio Ud. ser capaz de:

    Hacer una lista de los puertos abiertos Determinar qu servicios son responsables de qu puertos abiertos Deshabilitar servicios innecesarios.

  • Ejercicios del Estudiante

    Administracin Avanzada del Sistema Operativo

    Instrucciones de Ejercicio Determinando qu servicios tienen puertos abiertos

    1. Loguese como root en su ambiente grfico y abra una ventana Terminal.

    2. Haga una lista de todos los puertos abiertos en el sistema. Identifique todos los puertos que estn en un estado LISTEN

    3. Para cada uno de los puertos del paso anterior determine qu PID abri ese puerto. Luego determine cul es el nombre del proceso para ese PID.

    4. Consulte las pginas manuales y la informacin del RPM para ese proceso y determine su Ud necesita ese servicio corriendo o no.

    Deshabilitando servicios innecesarios 5. Deshabilite cualquier servicio innecesario, utilizando el comando chkconfig. 6. Reinicie su sistema y cheque que todos los servicios innecesarios no iniciaron.

    FIN DEL EJERCICIO

  • Ejercicios del Estudiante

    Administracin Avanzada del Sistema Operativo

    Ejercicio 18: Integracin de Linux en un ambiente Windows

    De qu se trata este ejercicio Este ejercicio brinda la oportunidad de familiarizarse con las diferentes opciones cuando se integra Linux en un Ambiente Windows.

    Qu seremos capaces de hacer Al finalizar este ejercicio Ud. ser capaz de:

    Acceder a filesystems Windows Leer documentos con formatos de Windows

  • Ejercicios del Estudiante

    Administracin Avanzada del Sistema Operativo

    Instrucciones de Ejercicio Actualmente algunas distribuciones de Linux como SuSE y Ubuntu vienen con soporte nativo para leer y escribir en sistemas de archivos NTFS. Otras distribuciones como Red Hat, Fedora y CentOS tienen la posibilidad de instalar una herramienta que actualiza las propiedades del kernel para poder leer y escribir en NTFS.

    Accesando a filesystems Windows 1. En una estacin con Linux y Windows, desde el sistema Linux y logueado como root, haga

    una lista de todas las particiones que existen en su sistema con el comando fdisk l /dev/hda (IDE) o fdisk -l /dev/sda (SCSI)

    2. Liste todos los filesystems que estn montados, utilizando el comando mount. Compare esta lista con la salida del comando previo. Esto debera darle una lista de los filesystems de Windows que no estn montados todava.

    3. Consulte con el instructor acerca de la herramienta adecuada para dar a su kernel de Linux el soporte necesario para poder acceder a filesystems Windows (especialmente en referencia a sistemas NTFS)

    4. Cree puntos de montaje bajo /mnt para todos los filesystems Windows que desea montar. Luego monte estos filesystems manualmente, usando el comando mount, Verifique que los filesystems han sido montados exitosamente y liste sus contenidos.

    5. Agregue una lnea al archivo /etc/fstab de manera que se monte automticamente cuando se reinicia el sistema. Reinicie el sistema para verificar que funciona.

    Open Office 6. Inicie Open Office e intente crear y guardar varios tipos de documentos: texto,

    presentaciones, hojas de clculo, etc. Intente guardarlos en formatos compatibles con Microsoft.

    7. Inicie un browser y Google para buscar y obtener varios archivos en formato Microsoft (.doc, .xls, etc), verifique si puede abrirlos, modificarlos y guardarlos.

    FIN DEL EJERCICIO

  • Ejercicios del Estudiante

    Administracin Avanzada del Sistema Operativo

    Ejercicio 19: Planeamiento y Mantenimiento Fsico Nota: Esta unidad no tiene ejercicios. Esta pgina simplemente asegura que la numeracin de los ejercicios se mantenga sincronizada.

  • Ejercicios del Estudiante

    Administracin Avanzada del Sistema Operativo

    Ejercicio 20: Instalacin Avanzada de Linux De qu se trata este ejercicio

    Este ejercicio le permitir instalar el sistema operativo a travs de red.

    Qu seremos capaces de hacer

    Al finalizar este ejercicio, Ud. debera tener experiencia en instalar Linux a travs de la red.

    Materiales Requeridos

    Para completar este ejercicio, Ud. necesitar lo siguiente:

    - Un disco de instalacin de su distribucin.

    - La direccin IP del servidor de instalacin.

    Su instructor le proveer de la ltima de ellas.

  • Ejercicios del Estudiante

    Instrucciones de Ejercicio Instalacin de Servidor Web (Solamente en los equipos servidores)

    1. Asegrese de que exista conexin de red entre las mquinas designadas como servidor y las clientes.

    2. Verificar si est instalado el paquete para servicio web, utilizando el comando rpm -q httpd.

    3. Si est instalado, lo activamos utilizando el comando service httpd start. 4. Probar si el servidor web est respondiendo a peticiones al respecto a travs de la red.

    Digitar en un browser http://ipdelservidor. 5. La raz del servidor web (Apache) es normalmente el path /var/www/html. Copie todos los

    archivos que estn incluidos en el DVD en el directorio /var/www/html usando el comando cp -a. # cp -a /punto/montaje/dvd/* /var/www/html/

    6. Al final Ud. tendr una gran cantidad de archivos dentro de /var/www/html/ con todos y cada uno de los paquetes del DVD de instalacin.

    Instalacin va Red

    7. Debe ser posible acceder va web al directorio base y a los paquetes dentro de l, utilizando el siguiente URL desde cualquier browser dentro de la red: http://192.168.1.91/CentOS/RPMS

    8. Arrancar la mquina en la que se instalar el sistema operativo con el DVD de instalacin y en el prompt boot: colocar: linux askmethod.

    9. El sistema solicitar la configuracin de una direccin IP para esa mquina. Configurar una direccin adecuada al esquema en el que se est trabajando. El instructor recomendar el valor adecuado en esta tarea.

    10. Al asignar la direccin IP, el sistema solicitar el mtodo de instalacin a utilizarse. En este caso se escoge http y se especifica la direccin IP del servidor. Asimismo en la seccin donde se consulta el directorio raz ponemos a / como el correspondiente a la base donde se encuentra el directorio CentOS.

    Administracin Avanzada del Sistema Operativo

  • Ejercicios del Estudiante

    Administracin Avanzada del Sistema Operativo

    11. Damos en Siguiente y comienza el proceso normal de instalacin que ya es conocido. 12. Para este proceso de instalacin tomar las medidas siguientes:

    - Mtodo de Particionamiento Manual o swap: 2 GB o /boot: 100 MB o /: 9 GB o /home: 1 GB o Libre: 2GB

    - En la configuracin del boot loader dejar los parmetros por defecto. - Configurar adecuadamente los parmetros de red. - No configure reglas de firewall y deshabilite SELinux. - Seleccione la zona horaria. - Asigne el password de root como lpic2009. - Seleccione los paquetes que desee instalar. El menor nmero posible.

    13. Una vez concluido este proceso, la instalacin tomar de 15 a 30 minutos, dependiendo

    del nmero de paquetes seleccionados y del ancho de banda disponible a travs de la red. Durante el proceso de instalacin, cree tres usuarios adicionales: tux1, tux2 y tux3, todos ellos con el mismo password del usuario root.

    Verificacin de instalacin va kickstart

    14. Luego de reiniciar el sistema, haga login como root y eche un vistazo al archivo anaconda-ks-cfg en el directorio home de root. Reconoce las opciones que escogi durante el proceso de instalacin?

    15. Identifique cada una de las partes o secciones del archivo, as como los lugares adecuados donde debera agregar informacin, en caso de que deseara personalizar toda una instalacin desatendida utilizando el archivo a travs de la herramienta kickstart.

    FIN DEL EJERCICIO

  • Ejercicios del Estudiante

    Administracin Avanzada del Sistema Operativo

    Ejercicio 21: Proceso de Encendido y Apagado De qu se trata este ejercicio

    Este ejercicio ilustra el proceso de encendido y apagado de un sistema Linux.

    Qu seremos capaces de hacer

    Al finalizar este ejercicio, Ud. debera ser capaz de:

    - Escoger entre una pantalla de login grfica y una de texto, al cambiar los run levels de un sistema.

    - Arrancar un sistema Linux en modo single-user

    - Usar editores de run level

  • Ejercicios del Estudiante

    Administracin Avanzada del Sistema Operativo

    Instrucciones de Ejercicio El bootloader GRUB

    1. Haga login como root 2. Cambie el archivo de configuracin /boot/grub/grub.conf de manera que se requiera un

    password cuando se intente alterar varias de las opciones de arranque. Asegrese de que el password est encriptado. Por conveniencia en clase use el password lpic2008. # grub grub> md5crypt Password: lpic2008 Encrypted: $1$JGuR//$kjOu7Q9kTZk01wFKWQqMb/ grub> quit El valor Encrypted ser siempre diferente, utilice el obtenido en su caso a continuacin. # vi /boot/grub/menu.lst

    Nota: Cuando grub inicia, inicia probando dispositivos para determinar los dispositivos reconocidos en el BIOS. Esto puede tomar algo de tiempo, incluso varios minutos, dependiendo de su hardware. Espere hasta que esto est realizado para ejecutar el comando md5crypt dentro de grub. Agregue la siguiente lnea sobre la primera lnea title del archivo /boot/grub/menu.lst: password --md5 $1$JGuR//$kjOu7Q9kTZk01wFKWQqMb/

    Nuevamente, el password encriptado ser diferente en cada situacin.

    3. Reinicie su mquina. Use el comando shutdown para ejecutar el proceso de reinicio. Luego intente alterar la secuencia de arranque, tanto sin utilizar la contrasea y luego utilizndola. # shutdown -r now Espere a que el sistema se apague, y mire el men del GRUB cuando aparezca. Observe la pantalla de manera cuidadosa para determinar las opciones que estn disponibles. Intente alterar la secuencia de arranque de Linux, por ejemplo agregando un parmetro de kernel como mem=64M. Cargue Linux nuevamente.

    Recuperando mensajes del kernel Los mensajes que son mostrados por el kernel pueden ser una herramienta muy til en la determinacin de problemas. Es por esto que Ud. podra desear recuperarlos, aun luego de que su sistema ha arrancado.

    4. Haga login como root. 5. Observe los mensajes de kernel y el archivo de logs /var/log/messages.

    # dmesg | less # less /var/log/messages

    Configurando el runlevel por defecto El runlevel por defecto puede ser alterado para configurar tu sistema para su situacin. En este ejercicio, configure el runlevel por defecto en 3, de manera que Ud. reciba un prompt de login de texto.

    6. Edite el archivo /etc/inittab, cambie la lnea:

  • Ejercicios del Estudiante

    Administracin Avanzada del Sistema Operativo

    id:5:initdefault: a id:3:initdefault:

    7. Reinicie su sistema, esta vez usando Ctrl-Alt-Delete. 8. Luego de que GRUB aparece, no haga nada. Luego de 5 a 10 segundos, GRUB debera

    automticamente arrancar el sistema operativo por defecto. 9. Haga login como root e inicie el sistema en modo grfico.

    # init 5 10. Haga una lista larga de los archivos dentro de los directorios /etc/rc.d/rc3.d, /etc/rc.d/rc4.d,

    /etc/rc.d/rc5.d y /etc/rc.d/init.d. # ls -l /etc/rc.d/rc3.d # ls -l /etc/rc.d/rc4.d # ls -l /etc/rc.d/rc5.d # ls -l /etc/rc.d/init.d

    11. Cree una lista de servicios con chkconfig, y revise su salida en relacin a la salida de los comandos previos.

    # chkconfig --list 12. Verifique que el servicio portmap est habilitado en un runlevel actual. Deshabilite este

    servicio, luego revise los links simblicos en /etc/rc.d/rc5.d nuevamente. # chkconfig --list portmap # chkconfig portmap off # chkconfig --list portmap # ls -l /etc/rc.d/rc5.d

    13. Cheque si el demonio portmap est actualmente corriendo. Luego reinicie el sistema. # service portmap status # reboot

    14. Habilite el servicio portmap nuevamente, e inicie el servicio de manera manual. # chkconfig portmap on # chkconfig --list portmap # service portmap start

    Usando el Modo Single User El modo Single User es muy conveniente para mantenimiento del sistema. 15. Haga logout, reinicie el sistema con Ctrl-Alt-Delete y arranque el sistema en modo single user # exit

    Si su sistema usa GRUB, presione p e ingrese el password. Luego presione e para editar la entrada del sistema operativo, y presione e una vez ms para editar la lnea de kernel. Luego, escriba single al final y presione Enter. Ahora presione b para arrancar Linux. En sistemas Fedora/RHEL Ud. no tendr que hacer login, Ud. obtendr un prompt de root inmediatamente.

    15. Haga una lista de los procesos que estn corriendo. # ps ax

    16. Reinicie el sistema. # reboot

    17. Documente los cambios realizados en su sistema, especialmente en referencia a las contraseas implementadas.

    FIN DEL EJERCICIO

  • Ejercicios del Estudiante

    Administracin Avanzada del Sistema Operativo

    Ejercicio 22: Herramientas de Administracin del sistema De qu se trata este ejercicio

    Este ejercicio brinda experiencia prctica en el uso de herramientas de administracin del sistema en su distribucin.

    Qu seremos capaces de hacer

    Al finalizar este ejercicio, Ud. debera tener ser capaz de utilizar y configurar la herramienta de administracin del sistema en la distribucin que usa.

  • Ejercicios del Estudiante

    Administracin Avanzada del Sistema Operativo

    Instrucciones de Ejercicio Trabajando con la herramienta de administracin del sistema

    1. Inicie la herramienta de administracin del sistema que vino con su distribucin. 2. Eche un vistazo de la estructura de mens de su herramienta de administracin del

    sistema para obtener una idea de la ubicacin de varios de los tems de configuracin. Descargando e instalando webmin (extra y opcional) Si el tiempo y las circunstancias lo permiten, intente instalar webmin. Su instructor le dir como y dnde obtener la imagen de instalacin. Siga las instrucciones de la lectura para instalar, configurar y ejecutar webmin. FIN DEL EJERCICIO

  • Ejercicios del Estudiante

    Administracin Avanzada del Sistema Operativo

    Ejercicio 23: Herramientas de Empaquetamiento De qu se trata este ejercicio

    Este ejercicio brinda algo de experiencia prctica en el uso de la herramienta de empaquetamiento en su distribucin.

    Qu seremos capaces de hacer

    Al finalizar este ejercicio, Ud. debera tener ser capaz de:

    - Instalar, actualizar y desinstalar paquetes

    - Consultar paquetes

    - Verificar la autenticidad de paquetes

    - Crear paquetes simples

  • Ejercicios del Estudiante

    Administracin Avanzada del Sistema Operativo

    Instrucciones de Ejercicio Recuperando informacin acerca de paquetes instalados

    1. Haga una lista de todos los paquetes que estn instalados en el sistema. # rpm -q -a

    2. Encuentre qu paquete instal el archivo /etc/inittab. rpm -q -f /etc/inittab

    3. Liste la informacin de ese paquete. rpm -q -i -f /etc/inittab

    4. Liste todos los archivos en ese paquete. rpm -q -l -f /etc/inittab

    5. Verifique si todos los archivos en ese paquete son todava los mismos. Qu archivo ha cambiado y cmo? Por qu? rpm -V -f /etc/inittab Si Ud. ha realizado todos los ejercicios hasta ahora, debera observar que /etc/inittab ha cambiado, tanto el checksum MD5 como el tiempo de modificacin, pero no el tamao. Esto es debido a que Ud. cambi el runlevel por defecto.

    Instalando paquetes

    6. Monte el primer disco de sus medios de instalacin y cmbiese al directorio donde se monta el disco. # cd /media/cdrecorder

    7. Agregue la clave pblica de la distribucin a su keyring. Use el comando find para localizar su clave pblica. # rpm --import RPM-GPG-KEY*

    8. Verifique que el paquete fetchmail no est instalado (si lo est desinstlelo). Verifique el paquete en el DVD e instlelo. Luego verifique que est instalado. # rpm -q fetchmail # rpm -K fetchmail-version.rpm # rpm -ihv fetchmail-version.rpm # rpm -qil fetchmail-version.rpm

    9. Desinstale el paquete wireshark. # rpm -e fetchmail

    Usando un frontend para manejo de paquetes

    10. Si es necesario, inicie X. Luego, inicie el frontend para RPM preferido para su distribucin. Use esto para instalar la seccin Games and Entertainment. # system-config-packages

    Creando RPMs

    11. Revise con su instructor si el archivo hello-1.2.tar.gz est disponible en algn lugar de la red para su descarga en el directorio /root. Si est disponible, vaya al siguiente paso. Si no estuviera disponible, Ud. necesita crearlo por su cuenta. En este caso cree un directorio /root/hello-1.2 y cree los siguientes archivos dentro de l. hello-1.2/hello.c #include main() { printf(Hello World!\n); } hello-1.2/README (C) Syderix Copyright 2008

  • Ejercicios del Estudiante

    Administracin Avanzada del Sistema Operativo

    Este programa est licenciado bajo GPL. Este programa imprime el mensaje Hello World! en p antalla.

    hello-1.2/Makefile all: hello hello: hello.c gcc -o hello hello.c install: hello install -d $(DESTDIR)/usr/bin install -s -m 0755 o root g root hello $(DESTDIR)/usr/bin/hello clean: rm f hello Nota: Las lneas que contienen comandos inician con un TAB, no con espacios!

    Luego, regrese a su directorio /root y haga un archivo tar de todos estos archivos, y comprmalo con gzip.

    # cd /root # mkdir hello-1.2 # cd /hello-1.2 # vi hello.c # vi Makefile # vi README # cd .. # tar -czvf hello-1.2.tar.gz hello-1.2/

    12. Copie el archivo hello-1.2.tar.gz hacia /usr/src/redhat/SOURCES # cp hello-1.2.tar.gz /usr/src/redhat/SOURCES

    13. Cree el archive hello.spec como se muestra a continuacin en el directorio correcto. # vi /usr/src/redhat/SPECS/hello.spec # #Archivo SPEC para el programa hello world # Summary: Hello, World Program Name: hello Version: 1.2 Release: 1 License: GPL Group: Application Source: hello-1.2.tar.gz Distribution: Linux Vendor: Syderix Packager: Jose Estrada BuildRoot: /var/tmp/hello-1.2 %description Este programa imprime el texto Hello World en la pantalla. %prep %setup %build make %install make install DESTDIR=${RPM_BUILD_ROOT}

  • Ejercicios del Estudiante

    Administracin Avanzada del Sistema Operativo

    %files %doc README /usr/bin/hello

    14. Inicie la etapa prep de RPM y observe los resultados:

    # rpmbuild -bp /usr/src/redhat/SPECS/hello.spec # ls -lR /usr/src/redhat/BUILD # ls -lR /var/tmp/hello-1.2

    15. Inicie la etapa de compilacin (build) de RPM y observe los resultados. # rpmbuild -bc /usr/src/redhat/SPECS/hello.spec # ls -lR /usr/src/redhat/BUILD # ls -lR /var/tmp/hello-1.2

    16. Inicie la etapa de instalacin RPM y observe los resultados. # rpmbuild -bi /usr/src/redhat/SPECS/hello.spec # rpmbuild -lR /usr/src/redhat/BUILD # ls -lR /var/tmp/hello-1.2 # /var/tmp/hello-1.2/usr/bin/hello

    17. Cree el binario RPM y observe los resultados. # rpmbuild -bb /usr/src/redhat/SPECS/hello.spec # ls -l /usr/src/redhat/RPMS/i386 # rpm -qilp /usr/src/redhat/RPMS/i386/hello-1.2-1.i386.rpm

    18. Cree el RPM fuente y observe los resultados. # rpmbuild -bs /usr/src/redhat/SPECS/hello.spec # ls -l /usr/src/redhat/SRPMS # rpm -qilp /usr/src/redhat/SRPMS/i386/hello-1.2-1.src.rpm

    19. Pruebe si existe un programa hello instalado. Ya que no lo est, instale su nuevo RPM hello usando el comando rpm. Prubelo, desinstlelo, y luego prubelo nuevamente. # hello (Esto debera fallar) # rpm -ihv /usr/src/redhat/RPMS/i386/hello-1.2.i386.rpm # hello (Esto no debera fallar) # rpm -e hello # hello (Esto debera fallar)

    FIN DEL EJERCICIO

  • Ejercicios del Estudiante

    Administracin Avanzada del Sistema Operativo

    Ejercicio 24: Sistema X Window De qu se trata este ejercicio

    Este ejercicio trata sobre el uso del sistema X Window.

    Qu seremos capaces de hacer

    Al finalizar este ejercicio, Ud. debera tener experiencia con:

    - Configurar XFree86, X.org.

    - Iniciar y detener X

    - Manejadores de ventanas

    - Ejecutar aplicaciones X sobre la red

  • Ejercicios del Estudiante

    Administracin Avanzada del Sistema Operativo

    Instrucciones de Ejercicio Configurando Xorg

    1. Si Ud. est en un runlevel que automticamente inicia X, cmbiese a un runlevel que no inicia X. Si Ud. inici X manualmente, detngalo. # init 3

    2. Haga una copia de backup del archivo xorg.conf. # cp /etc/X11/xorg.conf /etc/X11/xorg.conf.bak

    3. Intente configurar la resolucin de su monitor a un valor diferente al actual. # system-config-display

    4. Busque en el archivo /etc/X11/xorg.conf el parmetro respectivo correspondiente al cambio de resolucin que realiz.

    5. Cambie nuevamente la configuracin de su monitor al valor de resolucin anterior. Corriendo Aplicaciones Para que una aplicacin sea ejecutada en un ambiente X, necesita estar lista para ello. La mayora de aplicaciones que inician con x lo estn. Ud puede ejecutarlas directamente. Las aplicaciones que no estn habilitadas para X, pueden ser ejecutadas desde una ventana xterm. Una ventana xterm emula una Terminal ordinaria en un ambiente X.

    6. En X, inicie xterm desde uno de los mens manejadores de ventanas. En Linux, el xterm es algunas veces tambin conocido como xterm, kterm o algo ms terminado en term. Intente ejecutar algunos de estos comandos desde esta ventana.

    7. Hay muchas formas de iniciar aplicaciones con X. Una de ellas es desde los mens de los manejadores de ventanas, que ya hicimos. Otra forma es desde la lnea de comandos desde una ventana xterm. Intntelo, en la ventana xterm, ejecute el comando xterm &. Ahora Ud. ve aparecer una nueva ventana xterm.

    8. Otra forma de iniciar una aplicacin es desde una ventana de Terminal real. Note que X inicio en una Terminal virtual nmero 7, de manera que Ud. puede todava acceder a la nmero 1 hasta la 6. Intente cambiar entre las diferentes terminales.

    9. Cmbiese a una ventana Terminal donde Ud. obtenga un prompt de lnea de comandos ordinario. Si es necesario, haga login como root: Ctrl-Alt-F1 Login:root Password:lpic2009

    10. Ejecute xterm. Ud. debera observar un mensaje de eror: Cant open display. Lo que sucedi es que la aplicacin intent contactar el servidor X, pero no se encontr informacin en el ambiente acerca de cul servidor X contactar. Esta informacin es normalmente almacenada en la variable de ambiente $DISPLAY. # xterm

    11. Realice un echo $DISPLAY en esta ventana. Tambin realice un echo $DISPLAY en una ventana xterm. # echo $DISPLAY # # echo $DISPLAY

    12. Regrese nuevamente a la pantalla X y note que Ud. inici una ventana xterm extra con export DISPLAY=127.0.0.1:0.0. Ahora reinicie la aplicacin xterm. No deberan producirse mensajes de error. # export DISPLAY=:0.0 # xterm &

    13. Regrese a la pantalla X y note que Ud. inici una ventana xterm extra.

  • Ejercicios del Estudiante

    Administracin Avanzada del Sistema Operativo

    Ejecutando Aplicaciones sobre una Red Dado que las aplicaciones utilizan una conexin TCP/IP para comunicarse con el servidor X, Ud. puede tambin ejecutar aplicaciones desde otro servidor.

    14. GDM, el GNOME Display Manager, tiene una caracterstica de seguridad que deshabilita las sesiones X sobre la red. Esta caracterstica puede ser deshabilitada en un sistema Fedora/RedHat. Para deshabilitar esta caracterstica, modifique el archivo /etc/X11/gdm/gdm.conf: Setee la directiva DisallowTCP a false. Luego reinicie gdm, cambiando al runlevel 3 y luego de regreso al runlevel 5. # vi /etc/X11/gdm/gdm.conf DisallowTCP=false

    # init 3 # init 5

    15. Pida a un compaero que abra una ventana terminal para Ud. 16. Configure la variable de display para que apunte a su propia pantalla. El comando para ello

    lucir as: export DISPLAY=1.2.3.4:0.0, donde 1.2.3.4 es su propia direccin IP. # export DISPLAY=1.2.3.4

    17. Ahora intente iniciar un xterm. Ud. debera observar un mensaje de error: could not open display. Esta es una caracterstica de seguridad de X: no acepta automticamente conexiones entrantes. # xterm &

    18. Regrese a su propio sistema e ingrese el comando xhost +. Esto habilitar las conexiones entrantes. # xhost +

    19. Regrese al sistema de su compaero e intente nuevamente el comando xterm. Esta vez debera ser exitoso. # xterm &

    20. En su pantalla grfica Ud. debera ver una nueva xterm. Intente el comando hostname en esta pantalla para verificar que la aplicacin xterm esta ejecutndose en el otro sistema. # hostname

    21. Cierre el xterm y ejecute un xhost. # xhost

    Ejecutar sesiones X sobre una red Ud. puede no solamente ejecutar una nica aplicacin sobre la red, sino tambin una sesin X completa sobre la red. En este caso no es solamente la aplicacin que est ejecutndose en el sistema remoto, sino el manejador de ventana tambin. De hecho, el nico programa que necesita estar ejecutndose localmente es su servidor X. Nota: Las sesiones X sobre una red no han sido muy probadas y varias distribuciones tienen problemas con ellas.

    22. Realice todos los cambios necesarios al archivo de configuracin de su administrador de login favorito de modo que se habiliten logins remotos. Luego reinicie su manejador de login cambindose al runlevel 3 y luego al runlevel 5 nuevamente. Para determinar el display manager que se est ejecutando: # ps ax | grep dm Para xdm: # init 3 # cd /etc/X11/xdm # vi Xaccess

    Descomente la lnea que tiene nicamente un * en ella. Esto est ya hecho en SuSE.

  • Ejercicios del Estudiante

    Administracin Avanzada del Sistema Operativo

    # vi xdm-config Comente (con un !) la ltima lnea que especifica DisplayManager.requestPort:0. # init 5

    Para kdm: # init 3 # cd /etc/X11/xdm # vi kdmrc En la seccin [Xdmcp], cambie Enable=false por Enable=trae # vi Xaccess Descomente la lnea que tiene solo un * en ella.

    Para gdm: # init 3 # cd /etc/X11/gdm # vi gdm.conf En la seccin [xdmcp], cambie Enable=false por Enable=trae # init 5

    23. Inicie un segundo servidor X, esta vez indicando a X que obtenga su login manager del sistema de su compaero.

    # X -query :1 24. Detenga la segunda sesin e inciela nuevamente, pero realice un broadcast indirecto por

    un login manager. Ud. debera recibir un chooser que permita hacer login a cualquier sistema ejecutando un display manager en la red.

    # X -indirect :1 FIN DEL EJERCICIO

  • Ejercicios del Estudiante

    Administracin Avanzada del Sistema Operativo

    Ejercicio 25: Compilacin y configuracin del Kernel

    De qu se trata este ejercicio Este ejercicio le permitir compilar el kernel de Linux.

    Qu seremos capaces de hacer Al finalizar este ejercicio Ud. debera tener experiencia con:

    Instalar las fuentes de kernel Compilar el kernel Instalar el kernel

  • Ejercicios del Estudiante

    Administracin Avanzada del Sistema Operativo

    Instrucciones de Ejercicio Este ejercicio trata de la manera cmo compilar un kernel y obtener un paquete rpm que pueda instalar y compartir con otros. Preparacin Antes de completar este ejercicio, algunos archivos RPM debern ser instalados en su sistema, si no lo estn ya. Para RedHat/CentOS: kernel-version.rpm qt-devel-version.rpm Instalando los fuentes del kernel

    1. Descargue la ltima versin de las fuentes del kernel de Linux de la pgina www.kernel.org, o en su defecto solicite a su instructor el archivo correspondiente.

    2. Copie el archivo (generalmente en formato .tar.bz2) al directorio /usr/src. # cp linux-version.tar.bz2 /usr/src

    3. Cmbiese al directorio /usr/src. # cd /usr/src

    4. Desempaquete las fuentes de Linux y cree un link simblico linux hacia el directorio de las fuentes de kernel. # tar -xvjf linux-2.6.18.3.tar.bz2 # ln -s linux-version linux # cd /usr/src

    5. Modificar el archivo /etc/modprobe.conf, de tal manera que se des-comente la lnea correspondiente al mdulo mptscsi pues de otro modo, obtendremos un error como este: No module mptscsi found for kernel 2.6.18.3-default, aborting.

    # vi /etc/modprobe.conf 6. Para iniciar el proceso de configuracin del nuevo kernel, es buena idea tomar como base

    el kernel actual, de modo que copiamos la configuracin actual al directorio /usr/src/linux. # cd /usr/src/linux # make clean && make mrproper # cp /boot/config-`uname -r` ./.config

    7. Ahora obtenga el men de configuracin del nuevo kernel.

    # make menuconfig

    8. Ubique la opcin Load an Alternate Configuration File y escoja a .config como el archivo de configuracin.

    9. Explore a travs del men de configuracin de kernel y haga los cambios que crea pertinentes. Asegrese de identificar un identificador de versin de kernel en la opcin General Setup ---> () Local version - append to kernel release. Puede utilizar default de

  • Ejercicios del Estudiante

    Administracin Avanzada del Sistema Operativo

    modo que el paquete rpm que generemos se llame kernel-versiondefault-1.i386.rpm. Puede igualmente utilizar cualquier otra cadena que le permita identificar la versin de kernel. Slo asegrese de que todas las que compile tengan nombres diferentes.

    10. Cuando haya hecho las elecciones pertinentes para el nuevo kernel, salga y guarde los cambios realizados.

    11. Compile el nuevo kernel.

    #make rpm Este proceso puede tomar varias horas.

    12. Instale el nuevo kernel a travs del paquete .rpm que se ha creado.

    # cd /usr/src/redhat/RPMS/i386/ # rpm -ihv --nodeps kernel-versiondefault.i386.rpm

    13. Cree el disco RAM del nuevo kernel.

    # mkinitrd /boot/initrd-version-default.img version-default

    Configurando el BootLoader

    14. Configure el bootloader de manera que el nuevo kernel pueda arrancar cuando se reinicie el sistema.

    Primero haga un listado de los archivos contenidos dentro del directorio /boot

    # ls /boot Qu archivos le llaman la atencin respecto del proceso que realizamos con anterioridad.

    -

    -

    Edite el archivo /boot/grub/menu.lst de manera que agregue una nueva entrada para el kernel nuevo. Tome como base la o las entradas actuales.

    #vi /boot/grub/menu.lst 15. Reinicie el sistema

    # reboot 16. Una vez que observe el GRUB al reiniciar el sistema, escoja el nuevo kernel que compil, y verifique que arranque de manera adecuada.

    FIN DEL EJERCICIO

  • Ejercicios del Estudiante

    Administracin Avanzada del Sistema Operativo

    Ejercicio 26: Dispositivos Carcter, PCMCIA y USB

    NOTA Esta unidad no incluye ejercicios pues el hardware requerido para realizar este tipo de ejercicios no estar disponible en la mayora de salas de clase. Esta pgina est aqu para asegurar los nmeros de ejercicio sincronizados

  • Ejercicios del Estudiante

    Administracin Avanzada del Sistema Operativo

    Ejercicio 27: Dispositivos Bloque, RAID y LVM

    De qu se trata este ejercicio Este ejercicio permite trabajar con dispositivos Bloque, RAID y LVM.

    Qu seremos capaces de hacer Al finalizar este ejercicio Ud. tendr experiencia en:

    Discos RAM Software RAID Logical Volume Management

  • Ejercicios del Estudiante

    Administracin Avanzada del Sistema Operativo

    Instrucciones de Ejercicio Nota En esta unidad Ud. crear y utilizar varios dispositivos bloque. Estos dispositivos bloque no son realmente tiles de manera aislada, sino hasta que crea un filesystem en ellos. Para esto, Ud utilizar el comando mke2fs para crear un filesystem, y el comando mount para montarlo. Estos comandos se cubren a profundidad en la siguiente unidad. Trabajando con discos RAM

    1. Verifique el tamao de los discos RAM que utiliza el kernel.

    # dmesg | grep RAM 2. Formatee el disco RAM con el comando mke2fs.

    # mke2fs /dev/ram0 3. Cree un directorio /mnt/ramdisk y monte el disco RAM en ese punto de montaje.

    # mkdir /mnt/ramdisk # mount /dev/ram0 /mnt/ramdisk

    4. Ejecute el comando df para ver cunto espacio est disponible en este disco RAM. # df

    5. Copie algunos archivos en este disco RAM y mntelo nuevamente. Est el archivo ah todava?

    # cp /etc/passwd /mnt/ramdisk/passwd # cat /mnt/ramdisk/passwd

    6. Desmonte el disco RAM y mntelo nuevamente. Est el archivo ah an?

    # umount /mnt/ramdisk # mount /dev/ram0 /mnt/ramdisk # cat /mnt/ramdisk/passwd

    7. Reinicie su sistema y luego intente montar el disco RAM nuevamente. Funciona?

    # reboot Luego de reiniciar

    # mount /dev/ram0 /mnt/ramdisk

    Trabajando con particiones Se crearn cuatro particiones de 150 MB cada una, que se usarn en los ejercicios siguientes. Asegrese de disponer de ese espacio libre.

    8. Inicie el programa fdisk y cree 4 particiones adicionales. El tamao de cada particin debe ser de 150 MB. Guarde la tabla de particiones en el disco.

    Anote los nmeros de particiones creadas, pues estos datos se usarn luego en el transcurso del ejercicio.

    # fdisk /dev/hda Nota: De este punto en adelante se asumir que las particiones que cre son,

  • Ejercicios del Estudiante

    Administracin Avanzada del Sistema Operativo

    respectivamente, /dev/hda9, /dev/hda10, /dev/hda11. Asegrese de que no sobrescriba accidentalmente otras particiones.

    9. Preste atencin particular a la salida del comando fdisk. Dependiendo de las circunstancias, puede mencionar The kernel still uses the old table. The new table will be used at the next reboot. Intente con el commando partprobe para re-leer la tabla de particiones. Si no observa errores, continu con el siguiente paso. Si ve mensajes de error, reinicie el sistema. # partprobe o # reboot

    10. Formatee la primera de las cuatro particiones con el comando mke2fs. Cree un punto de montaje /mnt/partition y monte esta particin en este punto de montaje.

    # mke2fs /dev/hda9 # mkdir /mnt/partition # mount /dev/hda9 /mnt/partition

    11. Ejecute el comando df para observar cunto espacio est disponible en estas particiones. # df

    12. Copie algunos archivos en estas particiones y verifique que se encuentre ah.

    # cp /etc/passwd /mnt/partition/passwd # cat /mnt/partition/passwd

    13. Reinicie su sistema y luego intente montar la particin nuevamente. Funciona?

    # reboot Luego de reiniciar

    # mount /dev/hda9 /mnt/partition 14. Desmonte la particin que mont.

    # umount /mnt/partition

    Preparacin para RAID 15. Utilizando fdisk cambie el tipo de particin de las 4 particiones creadas a 0fxd (Linux RAID

    autodetect). Use partprobe para re-leer la tabla de particiones y si es necesario, reinicie su sistema:

    # fdisk /dev/hda Command (m for help): t Partition number (1-11): 9 Hex code (type L to list codes): fd Command (m for help): t Partition number (1-11): 10 Hex code (type L to list codes): fd Command (m for help): t Partition number (1-11): 11 Hex code (type L to list codes): fd

  • Ejercicios del Estudiante

    Administracin Avanzada del Sistema Operativo

    Command (m for help): t Partition number (1-11): 12 Hex code (type L to list codes): fd Command (m for help): w # partprobe O

    # reboot

    Trabajo para RAID (Fedora/RHEL)

    16. Cree un arreglo RAID usando tres particiones en un arreglo lineal. Use el comando mdadm para inicializar el arreglo, luego cree un filesystem en l. Monte el arreglo en un punto de montaje llamado /mnt/raid. Ejecute el comando df para determinar cuanto espacio tiene esta particin y para ver el status del arreglo RAID. Luego desmonte la particin y detenga el arreglo.

    # mdadm --create -v /dev/md0 -l linear -n3 /dev/hda9 /dev/hda10 /dev/hda11 # mke2fs j /dev/md0 # mkdir /mnt/raid # mount /dev/md0 /mnt/raid # df (escriba el espacio uti