Autor: Santiago Alonso Gómez Curso: / 10

Tamaño: px
Comenzar la demostración a partir de la página:

Download "Autor: Santiago Alonso Gómez Curso: 2.009 / 10"

Transcripción

1

2 Este manual es parte del resultado de una licencia por estudios concedida por la Consejería de Educación para desarrollar el proyecto de investigación educativa titulado MaX: El Sistema Operativo libre para el ciclo de Administración de Sistemas Informáticos en Red. Autor: Santiago Alonso Gómez Curso: / 10

3 Versión inicial: 1.0. Utiliza la versión 5.0 de MaX. Versión 1.1. Utiliza las versiones 5.0 y 6.0 de MaX. Mejoras más significativas: - Inclusión del apartado 4.7 sobre gestión centralizada de usuarios (NFS y NIS). - Ampliación del apartado en la sección de Límites a los usuarios. - Inclusión del Anexo 1 con la instalación de Webmin. - Inclusión del Anexo 2 con información adicional del servicio NIS. - Actualización del tema 1 con la maximización y actualización de VirtualBox. Versión 1.2. Utiliza las versiones 5.0 y 6.0 de MaX. Mejoras más significativas: - Ampliación del apartado 4.7 con la administración del servicio Samba. Versión: 1.3. Utiliza las versiones 5.0 y 6.0 de MaX. Mejoras más significativas: - Prácticas de copia de seguridad con Bácula adaptadas a las máquinas virtuales. - Inclusión del anexo 3 que cuenta como recuperar Grub 2. Versión actual: 1.4. Utiliza las versiónes 5.0, 6.0 y 6.5 de MAX. Mejoras más significativas: - Referencias genéricas a las diferentes versiones de los sistemas operativos utilizados. - Actualización de Grub Legacy a Grub 2. Mejoras programadas para las próximas revisiones (se admiten colaboraciones): - Inclusión de LDAP. (Sugerencias a Colaboración en actualizaciones: Ramón Redondo

4 Índice de contenidos 1 INTRODUCCIÓN Información preliminar Laboratorio Características del equipo de trabajo Instalación de los sistemas operativos Actualización de VirtualBox Actividades INTRODUCCIÓN A LOS SISTEMAS OPERATIVOS Aspectos didácticos Estructura de un sistema informático El componente humano El componente físico El componente lógico Sistemas de codificación...23 Sistemas de numeración...23 Medidas de la información...26 Sistemas de codificación...26 Práctica (editor hexadecimal) Arquitectura de un sistema operativo Funciones de un sistema operativo Tipos de sistemas operativos Según el número de usuarios...32 Práctica (acceso remoto mediante ssh)...33 Práctica (acceso remoto mediante VNC) Según el número de programas o tareas Según el número de procesadores Tipos de aplicaciones Licencias y tipos de licencias Tipos de licencias Ventajas del software libre Versiones Actividades recomendadas INSTALACIÓN DE SOFTWARE LIBRE Y PROPIETARIO Aspectos didácticos Consideraciones previas a la instalación de sistemas operativos libres y propietarios Gestores de arranque Introducción Estructura del disco duro...51 Estructura física...51 Particiones...53 MBR...54 Practica (editar el MBR) Secuencia de arranque...58 Página.- 1

5 3.3.4 El gestor de arranque GNU GRUB...59 Instalación de GRUB...65 Proteger GRUB con contraseña...65 Practicas con GRUB...67 Cambiar los colores del menú GRUB...67 Gestión del menú GRUB...67 Recuperar GRUB El shell de GRUB...69 Recuperar desde GRUB una contraseña olvidada...69 Administración de GRUB desde el entorno gráfico Instalación de sistemas operativos. Requisitos, versiones y licencias MaX Windows Server Instalación/desinstalación de aplicaciones. Requisitos, versiones y licencias...76 Práctica (instalación de Apache)...80 Práctica (instalación de Google Earth)...81 Práctica (comprobación sobre Microsoft Office) Actualización de sistemas operativos y aplicaciones Ficheros de inicio del sistema operativo Niveles de ejecución El proceso init en MaX Gestión de servicios con sysv-rc-conf Registro del sistema Actualización y mantenimiento de controladores de dispositivos Actividades ADMINISTRACIÓN DE SOFTWARE DE BASE I. USUARIOS LOCALES Aspectos didácticos Administración de usuarios locales Diseño de cuentas de usuario MaX v Límites a los usuarios Limitar con cuotas el espacio del disco Windows Server Usuarios predeterminados Seguridad de cuentas de usuario Seguridad de contraseñas Administración de perfiles locales de usuario Gestión centralizada de usuarios Compartir carpetas con NFS Práctica (compartir carpetas con NFS) Compartir carpetas e impresoras con Samba Práctica (Samba: compartir una carpeta modificando /etc/samba/smb.conf) Práctica (Samba: compartir una carpeta usando system-config-samba) Práctica (Samba: compartir una carpeta usando swat) Práctica (Samba: compartir una carpeta usando nautilus-share) Centralización de la autenticación de usuarios. NIS Página.- 2

6 Práctica (instalación de un servidor y un cliente NIS) Actividades ADMINISTRACIÓN DE SOFTWARE DE BASE II. GRUPOS LOCALES Aspectos didácticos Administración de grupos locales Derechos de usuario Derechos en el sistema de archivos Ampliación de derechos Listas de control de acceso Control de ACL 's desde la línea de comandos Directorios con ACL's predeterminados Evaluación de una ACL Gestión de grupos Grupos predeterminados Actividades ADMINISTRACIÓN DE SOFTWARE DE BASE III. CONFIGURACIÓN DE LA RED Aspectos didácticos Fundamentos de conexión a redes Direcciones IP Máscara de (sub)red Práctica (obtención de las características de la red) Práctica (direccionamiento IP en la red de casa) Puerta de enlace, pasarela, gateway o enrutador Práctica (análisis de tramas) Práctica (dos subredes con un MaX enrutando) Configuración de la resolución de nombres Configuración del protocolo TCP/IP en un cliente de red IPv6: la próxima generación de Internet Ventajas de IPv El sistema de direcciones IPv Coexistencia de IPv4 e IPv Configuración de IPv Información adicional sobre IPv Ficheros de configuración de red Conceptos Ficheros de configuración /etc/network/interfaces /etc/resolv.conf /etc/hosts /etc/networks /etc/host.conf /etc/nsswitch.conf /etc/nscd.conf /etc/hostname /etc/sysconfig/hardware/hwcfg-* /etc/sysconfig/network/config, dhcp, wireless Página.- 3

7 /etc/sysconfig/network/routes, ifroute-* Scripts de arranque Actividades ADMINISTRACIÓN DE LA INFORMACIÓN I Aspectos didácticos Sistemas de archivos Ext Ext Conversión de un sistema de archivos Ext2 a Ext Ext ReiserFS Reiser JFS XFS Otros sistemas de archivos soportados Soporte de archivos grandes en Linux Información adicional Estructura de un sistema de archivos Gestión de sistemas de archivos desde el entorno gráfico Gestión de sistemas de archivos mediante comandos Estructura de directorios Herramienta gráfica para administrar directorios y ficheros: Nautilus Árbol de directorios Trabajo con ficheros y carpetas Propietarios y permisos Práctica (permisos sobre los ficheros) Otras operaciones: borrar, seleccionar, copiar, mover, renombrar, etc Ficheros y carpetas ocultos Gestión de directorios mediante comandos Directorio activo Trayectoria Órdenes de gestión de directorios, ficheros y sistemas de archivos Comodines Redireccionamientos Filtros Gestión de enlaces, links o accesos directos Gestión de enlaces desde el entorno gráfico Gestión de enlaces mediante comandos Enlaces duros Enlaces simbólicos Búsqueda de información del sistema Herramientas gráficas Administrador de trabajos de impresión Analizador de uso de disco Buscador de archivos Aplicaciones al inicio Página.- 4

8 Comprobación del sistema Editor de particiones Gestor de paquetes Synaptic Herramientas de red Hora y fecha Monitor del sistema Servicios Visor de archivos de sucesos Búsqueda de información desde la línea de comandos Actividades ADMINISTRACIÓN DE LA INFORMACIÓN II Aspectos didácticos Identificación del software instalado mediante herramientas gráficas y comandos Herramientas gráficas Instrucciones de línea de comandos Gestión de la información del sistema Monitor del sistema Instrucciones que muestran información del sistema Montaje y desmontaje de dispositivos en sistemas operativos. Automatización Herramientas de administración de discos. Particiones y volúmenes. Desfragmentación y chequeo Particiones Volúmenes Práctica (volúmenes lógicos) Desfragmentación y chequeo Actividades VOLÚMENES Y NIVELES RAID Aspectos didácticos Introducción Implementación por hardware y por software Niveles RAID RAID RAID lineal o JBOD (Just a Bunch Of Drivers) RAID 1 (disco espejo o mirroring) RAID RAID RAID RAID RAID RAID 5E y RAID 6E Niveles RAID anidados RAID RAID RAID RAID RAID Página.- 5

9 9.6 Niveles RAID propietarios Paridad doble RAID RAID RAID S o RAID de paridad Matrix RAID Linux MD RAID IBM ServeRAID 1E RAID Z Posibilidades de RAID Lo que RAID puede hacer Lo que RAID no puede hacer Software RAID en MaX. El paquete mdadm Instalación y carga de mdadm Crear un RAID Monitorización del estado de un RAID y sus discos (particiones) Administración de un RAID y de sus discos (particiones) Factores de optimización del sistema de archivos de un RAID Notas sobre el fichero de configuración Actividades COPIAS DE SEGURIDAD Aspectos didácticos Introducción Tipos de copia de seguridad Planificación de las copias de seguridad y recuperaciones Restauración Programas de copia y restauración La instrucción tar Keep Práctica Sbackup Bacula Ficheros de configuración Cuotas de disco. Límites, nivel de advertencia y compresión Actividades ANEXO 1. INSTALACIÓN DE WEBMIN ANEXO 2.- INFORMACIÓN ADICIONAL SOBRE EL SERVICIO NIS ANEXO 3.- GRUB LEGACY (VERSIÓN 0.97) El menú de arranque de GRUB Convención de nombres para discos duros y particiones Ejemplo de fichero /boot/grub/menu.lst Modificar las entradas del menú durante el proceso de arranque Selección del núcleo mediante comodines El archivo /boot/grub/device.map El shell de GRUB Página.- 6

10 Recuperar desde GRUB una contraseña olvidada Definir la contraseña de arranque ANEXO 4.- RECUPERACIÓN DE GRUB 2 Y WINDOWS ANEXO 5.- COPIA Y RESTAURACIÓN CON BACKHARDDI ANEXO 6.- CLONACIÓN DE DISCOS POR MULTICAST CON CLONEZILLA Página.- 7

11 1 INTRODUCCIÓN 1.1 Información preliminar El Ciclo de Grado Superior de Administración de Sistemas Informáticos en Red (ASIR) tiene que desarrollarse haciendo uso de algún sistema operativo y de software relativo a bases de datos, redes, internet, etc. En concreto, el módulo Implantación de sistemas operativos recoge a través de sus objetivos y contenidos la utilización de sistemas operativos libres y sistemas propietarios. El Grupo de Desarrollo de MAX: Madrid_LinuX del Área de Tecnologías de la Información y la Comunicación de la Consejería de Educación de la Comunidad de Madrid está desarrollando un sistema operativo libre, MAX, que puede utilizarse como el sistema operativo libre al que hace referencia el módulo anterior, y como sistema operativo base que soporte el software necesario de los demás módulos del Ciclo. Para la realización de este módulo, el alumno debe tener los siguientes conocimientos previos: Conocer y haber trabajado con alguna versión de Windows de Microsoft. Saber realizar tareas de usuario con un sistema operativo libre. Para adquirir estos conocimientos se ha desarrollado la documentación para usuarios de MaX. Los objetivos y contenidos de esta documentación han sido tomados del B.O.E. de 18 de Noviembre de Laboratorio Para la realización de las prácticas recogidas en esta documentación se va a crear un laboratorio que permita a cada alumno trabajar con diferentes máquinas virtuales y diferentes sistemas operativos a la vez Características del equipo de trabajo El ordenador de trabajo va a contener los siguientes sistemas operativos: MaX anfitrión: Será el S.O. principal o anfitrión que va a contener a los demás sistemas como máquinas virtuales. Necesitará una capacidad en disco de unas 115 GB. de las que 4 serán para la partición de swap, 21 para el propio sistema y las otras 90 para albergar las diferentes máquinas virtuales (se describen a continuación). Página.- 8

12 MaX invitado para prácticas: actuará como máquina virtual dentro del sistema anfitrión. Destinado a la realización de todas las prácticas de la documentación. Ocupará unas 15 GB dentro de las 115 GB de la máquina anfitrión. MaX invitado como copia de seguridad de la máquina virtual anterior. Cuando durante la realización de las prácticas se provoque algún deterioro serio en el sistema correspondiente, éste será recuperado desde la copia. Ocupará unas 15 GB dentro de las 115 GB de la máquina anfitrión. Windows Server invitado para prácticas: actuará como máquina virtual dentro del sistema anfitrión. Destinado a realizar las prácticas de la documentación. Ocupará unas 15 GB dentro de las 115 GB de la máquina anfitrión. Windows Server invitado como copia de seguridad de la máquina virtual anterior. Cuando durante la realización de las prácticas se provoque algún deterioro serio en el sistema correspondiente, éste será recuperado desde la de copia. Ocupará unas 15 GB dentro de las 115 GB de la máquina anfitrión. Windows Escritorio invitado para realizar prácticas. No va a disponer de copia de seguridad porque su función va a ser la de cliente sobre el que se realizarán pocas configuraciones conflictivas. Ocupará unas 15 GB dentro de las 115 GB de la máquina anfitrión. Se reservan 15 GB por si se instala otro sistema operativo. Como se puede comprobar, las máquinas virtuales que van a ser utilizadas como servidores en las prácticas tienen su correspondiente copia de seguridad. De esta forma, si las máquinas virtuales sufren algún bloqueo o configuración que impida su funcionamiento correcto, puede recuperarse desde la copia de seguridad. Por lo tanto, se recomienda que el ordenador donde se realicen las prácticas tenga las siguientes características mínimas: Microprocesador X86 o compatible a 1 Ghz. Lector de DVD. 4 GB de memoria RAM. 115 GB de disco duro libre. Tarjeta de red con conexión a Internet. Página.- 9

13 1.2.2 Instalación de los sistemas operativos En primer lugar debe realizarse la instalación del sistema operativo anfitrión. Los temas 1 (Inicio) y 2 (Instalación) de la documentación del usuario explican exhaustivamente cómo realizar este proceso. Por ser una de las operaciones críticas a realizar debe llevarse a cabo con pleno control del proceso, sin dudas, y en el caso de que existan deben ser resueltas antes de proceder en un sentido u otro. De lo contrario pueden producirse pérdidas de información. Una vez instalado MaX como S.O. anfitrión y configurando la conexión a Internet, se puede proceder a la instalación de VirtualBox, que es el software que va a permitir la instalación de las demás máquinas virtuales, siguiendo los pasos: Iniciar una sesión como usuario madrid (clave = cmadrid). Lanzar la ejecución del gestor de paquetes Synaptic. Se encuentra en el menú Aplicaciones Sistema Administración Gestor de paquetes Synaptic. En el cuadro de texto Búsqueda rápida teclear virtualbox y pulsar el botón Buscar. Instalar los paquetes mostrados por Synaptic seleccionándolos y pulsando sobre el botón Aplicar. Fig 1: Instalación de VirtualBox No es aconsejable utilizar el usuario madrid como usuario normal de trabajo puesto que posee privilegios que pueden permitir la realización de operaciones que pongan en riesgo la integridad del sistema. Puede crearse un usuario con las características: Usuario...: usprueba01 Nombre real: Prueba 01 Perfil...: Usuario de escritorio Contraseña..: usprueba01 Página.- 10

14 además, en la ficha de Privilegios del usuario se le deben añadir: Conectarse a redes Ethernet e inalámbricas y Usar VirtualBox. Para que las máquinas virtuales puedan ser utilizadas por todos los usuarios, puede crearse una carpeta fuera de las carpetas de trabajo de los usuarios y que sea accesible para todos, de la forma: Como usuario madrid se crea la carpeta /home/maquinas ejecutando desde un terminal (menú Aplicaciones Accesorios Terminal) la instrucción: sudo mkdir /home/maquinas Se puede cambiar el propietario y grupo de la carpeta para facilitar su manejo desde el entorno gráfico con: sudo chown madrid:madrid /home/maquinas La carpeta queda accesible a todos los usuarios cambiando sus permisos con: chmod a+wx /home/maquinas A continuación se procede a la instalación de la primera máquina virtual siguiendo los pasos: Se inicia una sesión con el usuario usprueba01. Se lanza VirtualBox a través del menú Aplicaciones Accesorios VirtualBox OSE. Se pulsa sobre el botón Nueva. Fig 2: Creación de máquina virtual Página.- 11

15 Se pulsa Siguiente. En la ventana para la creación de la nueva máquina virtual se introducen los datos: Nombre...: MaX65 Operating System: Linux Version...: Ubuntu Se selecciona como tamaño de la memoria base 1024 Mb. En la ventana de disco duro virtual pulsamos sobre el botón Nuevo. En la ventana del asistente para crear el nuevo disco se pulsa en Siguiente. En la ventana de tipo de almacenamiento del disco duro se selecciona Dinamically expanding storage que hace que la ocupación del disco duro virtual que se crea se vaya incrementando según se necesite en vez de ocupar la capacidad total asignada de forma constante y estática desde el momento de su creación. La localización debe ser : /home/maquinas/max65.vdi y la capacidad 15 GB. La selección de la capacidad se puede hacer moviendo la pestaña o escribiendo en el cuadro de texto. A continuación se pulsa sobre Siguiente y Terminar para finalizar la creación del disco virtual. Se pulsa sobre Siguiente y Terminar para la creación de la máquina virtual. Así queda creada la máquina virtual y en la ventana de VirtualBox ahora ya se muestran activos los botones Configuración e Iniciar. Fig 3: VirtualBox Página.- 12

16 Mediante el botón Configuración o pulsando sobre los rótulos en azul de la media ventana de la derecha, pueden modificarse, entre otros, los valores introducidos durante la creación. Deben modificarse los siguientes aspectos: CD/DVD ROM.- Es conveniente montarlo y activar Passthrough. Así, la unidad de CD/DVD podrá ser utilizada como si estuviese conectada a la máquina virtual (invitada). Attached to: Interface anfitrion.- Para que las máquinas virtuales se conecten a la red como si estuviesen conectadas todas al mismo switch de la máquina anfitrión. Las opciones posibles para este último parámetro son: No conectado.- Se considera que el sistema invitado no dispone de conexión a red. NAT.- VirtualBox se comporta como si fuera un dispositivo capaz de hacer de servidor de DNS, de DHCP y NAT. El sistema invitado deberá configurarse de forma dinámica y será VirtualBox quién le envíe los parámetros de configuración. El sistema invitado saldrá a la red a través del interface del anfitrión aunque sus segmentos de red pueden no coincidir. Interface anfitrión.- La tarjeta de red del sistema invitado es la misma que la del anfitrión pero con una IP diferente, dentro del rango de la red del anfitrión. Red interna.- Permite crear redes internas para las diferentes máquinas virtuales que no utilizarán la tarjeta de red del anfitrión. Para iniciar la instalación del sistema MaX invitado para pruebas basta con introducir el DVD en la lectora y pulsar sobre el botón Iniciar. Durante la instalación deberán tenerse en cuenta las consideraciones: Una vez que se lanza la ejecución de la máquina virtual, dentro del sistema hay dos máquinas corriendo, una con el sistema operativo anfitrión y otra con el invitado. Para pasar el control del ratón (y del teclado) a la máquina virtual basta con pulsar sobre la ventana de VirtualBox y para devolver el control de los mismos a la máquina anfitrión hay que pulsar la tecla <Ctrl> de la derecha. Esta información aparecerá en la ventana de VirtualBox al iniciar una máquina virtual. Durante la instalación del sistema operativo invitado, a la hora de seleccionar la partición y la capacidad de la partición donde se instalará, hay que tener en cuenta que la máquina virtual creada solamente tiene un disco duro de 15 GB. de capacidad y la opción que deberá elegirse es Utilizar todo el disco. Página.- 13

17 Fig 4: Selección de partición Una vez finalizada la instalación debe probarse el funcionamiento. Al iniciar la máquina aparecerá en primer lugar la información acerca de la captura del teclado y el ratón, a continuación el mensaje Press F12 to select boot device y a continuación el mensaje Press 'ESC' to enter the menu Después se producirá la carga del sistema operativo. Si en vez de cargarse el sistema operativo aparecieran mensajes de error como: This kernel requires the following features not present on the CPU: pae Unable to boot please use a kernel appropiate for your CPU debe probarse, cuando aparece el mensaje de pulsar la tecla 'ESC' para seleccionar una opción del menú, a pulsar dicha tecla y elegir la opción MaX 6.5, kernel n.n.nn-nn-generic. Por último, para que esta máquina pueda ser utilizada por los demás usuarios, el usuario usprueba01 debe cambiar los permisos al fichero /home/maquinas/max65.vdi asignando lectura y escritura a los usuarios del grupo y a los otros. Esta operación se realiza pulsando con el botón derecho sobre el fichero, eligiendo la opción Propiedades y en la ficha Permisos se realizan las modificaciones pertinentes. A continuación, para crear el sistema operativo invitado que hará las funciones de copia de seguridad del anteriormente instalado, basta con hacer una copia del fichero MaX65.vdi como MaX65_copia.vdi. Página.- 14

18 La creación de la máquina virtual con Windows 2008 Server se realiza de forma análoga a la de MaX, utilizando los valores: Nombre: W2008Server Operating system: Microsoft Windows Versión: Windows 2008 Tamaño memoria base: 1024 MB. Localización: /home/maquinas/w2008server.vdi Capacidad de disco duro: 15 GB. En cuanto al proceso de instalación del sistema operativo los datos a introducir son: Contraseña del usuario Administrador: A7085dministrador Nombre de equipo: W2008xx (siendo xx el nº del ordenador en el aula) Grupo de trabajo: WORKGROUP Al lanzar la ejecución de W2008 debe considerarse: La pulsación de las teclas <Ctrl> + <Alt> + <Del> solicitadas en el arranque debe hacerse a través de la opción Insertar Ctrl-Alt-Supr que aparece al seleccionar la opción Máquina de la parte superior de la ventana donde está corriendo el sistema operativo. Dependiendo de la resolución elegida para Windows así será el tamaño de la ventana donde se ejecuta. Para hacer la copia de seguridad del sistema instalado se hace una copia del fichero /home/maquinas/w2008server.vdi como /home/maquinas/w2008server_copia.vdi. Es conveniente poner a prueba los sistemas instalados hasta el momento y el resultado debe ser similar al que se muestra en la figura siguiente donde se están ejecutando a la vez, aparte del MaX anfitrión, el MaX de pruebas y el Windows 2008 Server para pruebas. Para que las ventanas donde se ejecutan las máquinas virtuales puedan maximizarse correctamente deben instalarse algunos complementos para máquinas invitadas. Dicha instalación se realiza de la forma: Se inicia una sesión en el sistema operativo de la máquina virtual con un usuario con privilegios administrativos. Se instalan los complementos a través de las opciones Dispositivos Instalar <<Guest Additions>> de la barra de menú situada en la parte superior de la ventana de la propia máquina virtual. Se reinicia el sistema operativo y la máquina virtual. Página.- 15

19 Fig 5: Máquina anfitrión, dos máquinas invitadas y VirtualBox OSE Al cerrar la ventana de la máquina virtual aparecen tres opciones que permiten respectivamente guardar el estado de la máquina para continuar en el mismo punto en la próxima ejecución, enviar una señal de apagado que envía una señal de shutdown al sistema operativo en ejecución y apagar la máquina que equivale a pulsar el botón de apagado del ordenador y que no debe utilizarse salvo que previamente se haya guardado el estado de la máquina y se quiera reiniciar a partir de éste, sin tener en cuenta las últimas modificaciones. La instalación del sistema operativo Windows Escritorio (p.e. Windows 7) invitado se hace de forma similar a los anteriores, usando los valores: Nombre: Windows_7 Operating system: Microsoft Windows Versión: Windows 7 Tamaño memoria base: 1024 MB. Localización: /home/maquinas/windows_7 Capacidad de disco duro: 15 GB. En cuanto al proceso de instalación del sistema operativo los datos a introducir son: Nombre: Tierno Galvan Organización: Instituto Nombre de equipo: W7_xx (siendo xx el número del ordenador en el aula) Página.- 16

20 1.3 Actualización de VirtualBox Las nuevas versiones de VirtualBox incorporan funciones significativas como por ejemplo la posibilidad de utilizar pen drives tanto en las máquinas anfitrión como en las invitadas. Actualmente (finales de 2.011) la versión que se instala desde el Gestor de paquetes Synaptic desde los repositorios preconfigurados es la 2.1.4, pero en se encuentra y puede descargarse la versión Una descripción de cómo realizar la instalación se encuentra en Los pasos para la instalación pueden ser los siguientes: Bajar el fichero correspondiente a la versión (Ubuntu LTS Lucid Lynx ). Añadir con Synaptic el repositorio: deb lucid contrib non-free que quedará añadido en el fichero /etc/apt/sources.list Se descarga desde la página web el fichero que contiene la llave pública y se lleva a la carpeta de trabajo del usuario madrid. Se instala la llave ejecutando desde un terminal la instrucción: sudo apt-key add oracle_vbox.asc Se borra la versión actualmente instalada con: sudo apt-get remove virtualbox* Se instala la nueva versión pulsando con el botón derecho sobre el fichero que la contiene (bajado anteriormente) y eligiendo Abrir con Instalador de paquetes Gdebi. NOTA: Puede ocurrir que las máquinas virtuales creadas con la versión anterior no funcionen correctamente en la nueva pero los discos duros si lo harán. Página.- 17

21 1.4 Actividades 1. Realizar las siguientes operaciones en la máquina invitada con sistema operativo MaX: Comprobar si se conecta a Internet. Comprobar sus valores de configuración del protocolo TCP/IP: dirección ip, máscara de red, puerta de enlace, DNS 1 y DNS 2. Asignar manualmente otros valores de configuración de TCP/IP y comprobar que se conecta a Internet. 2. Hacer ping de la máquina anfitrión a la invitada y viceversa. 3. Comprobar desde la máquina invitada si la anfitrión está funcionando como servidor de páginas web. 4. Identificar el fichero que contiene el disco duro de la máquina virtual. 5. Identificar el fichero de configuración de VirtualBox para el usuario. Buscar dentro del fichero los parámetros que indican donde se encuentran los ficheros relativos a la configuración de la máquina virtual y al disco duro virtual. 6. Cambiar el disco duro virtual de localización y modificar el fichero de configuración de VirtualBox del usuario para que el funcionamiento siga siendo correcto. 7. Identificar el fichero que contiene el estado de ejecución de la máquina virtual. 8. Crear una máquina virtual para otro usuario pero que haga uso del disco virtual creado para el anterior. 9. Configurar y documentar el programa Gdm para que la pantalla de identificación del usuario muestre un icono por cada usuario que permita su selección para iniciar una sesión. Página.- 18

22 2 INTRODUCCIÓN A LOS SISTEMAS OPERATIVOS 2.1 Aspectos didácticos Objetivos: Identificar los elementos funcionales de un sistema informático. Saber codificar la información en los diferentes sistemas de codificación. Conocer los componentes de un sistema operativo, sus funciones y características. Conocer los programas y aplicaciones que se instalan junto con MaX. Distinguir los distintos tipos de licencia del software Documentación. Sobre cualquiera de los apartados de este tema puede encontrarse abundante información en Internet, con muy diferentes grados de profundización. Puede encontrarse desde información elaborada en diferentes universidades hasta resúmenes realizados por usuarios nóveles. Se ha procurado hacer una exposición atendiendo al nivel de exigencia de un alumno de un grado superior de FP. Resumen. En este tema se explican los elementos que componen un sistema informático: un componente humano formado por las personas que intervienen, un componente físico formado por los ordenadores y sus dispositivos y un componente lógico formado por el sistema operativo y las aplicaciones. Se incluyen apartados que explican la codificación de la información por la importancia que en algunos de los temas siguientes adquiere su conocimiento, por ejemplo para conocer el funcionamiento de las direcciones IP y las máscaras de red. Además, explica la arquitectura de un sistema operativo, sus funciones y tipos dependiendo del número de usuarios, programas y procesadores que gestione. También se hace referencia a las diferentes agrupaciones que hace MaX del software según su tipo, y por último, trata los diferentes tipos de licencia que puede tener un software. Temporización: 8 horas. Página.- 19

23 2.2 Estructura de un sistema informático Un Sistema Informático es el conjunto de elementos que permiten realizar un tratamiento automático de la información. El tratamiento de la información consiste en la realización de una secuencia de operaciones con datos, efectuando funciones de entrada, control, procesamiento, almacenamiento y salida de los mismos. En el sentido más amplio, un Sistema Informático está constituido por el conjunto de personas y equipos físicos y lógicos aunque, de una forma más general, se hace referencia al Sistema Informático como el ordenador o conjunto de ordenadores, con su equipo lógico El componente humano El componente humano del Sistema Informático lo forman aquellas personas que de alguna forma intervienen en el tratamiento de la información. Dependiendo de la complejidad del sistema podemos encontrar equipos con personal especializado en la realización de funciones tales como: dirección, diseño, desarrollo, implantación y explotación y otros en los que es una única persona la que se encarga de realizar las operaciones necesarias. Según las funciones que realice, el personal informático puede clasificarse en: Director, Jefe de proyecto, Técnico de Sistemas, Administrador de Base de Datos, Analista funcional u orgánico, Programador, Jefe de explotación, Operador, Grabador, etc El componente físico Es lo que se denomina hardware del Sistema Informático y está formado por los ordenadores, los periféricos y el sistema de comunicaciones. Su función es proporcionar la capacidad de procesar eficientemente la información, facilitar la entrada y salida de datos y posibilitar la comunicación con otros sistemas. El ordenador se divide a su vez en los siguientes componentes: Unidad Central de Proceso (UCP o CPU).- Encargada de realizar todas las operaciones programadas sobre la información introducida. Su característica más importante es la velocidad o frecuencia a la que trabajan, que se mide en megahertzios (Mhz). Consta de los siguientes elementos: Unidad aritmético-logica (UAL).- Se encarga de realizar las operaciones aritméticas y lógicas con los datos. Unidad de control (UC).- Controla la ejecución de las instrucciones generando señales que indican cuando debe iniciarse una operación, cuando debe transferirse un dato, etc. Página.- 20

24 Las dos unidades anteriores forman lo que conocemos como el procesador del ordenador. El procesador contiene además unos registros de memoria que le permiten mantener los últimos datos con los que tiene que operar. Memoria central (MC).- También denominada memoria RAM, se encarga de almacenar los programas y datos con los que está operando el ordenador. El contenido de la memoria RAM desaparece cuando el ordenador se apaga, siendo imprescindible transferir previamente su contenido a otros dispositivos o memorias no volátiles (disco duro, DVD, etc). Unidad de entrada/salida.- Se encarga de la comunicación de la UCP con las unidades periféricas, incluyéndose en éstas las unidades de memoria externas (discos duros, DVD's, etc). Una de las características más importantes de esta unidad es el ancho del bus de datos, es decir, el nº de bits que pueden transmitirse a la vez hacia/desde la UCP. Unidades periféricas.- Son los dispositivos encargados de introducir la información desde el exterior hacia la unidad de entrada/salida o de recoger la información proveniente de la unidad de entrada/salida. Entre los periféricos más habituales tenemos: Disco duro Lector-grabador de DVD Pantalla Teclado Ratón Tarjeta de red Impresora Memoria USB Etc. Hay multitud de clasificaciones diferentes que pueden realizarse sobre estos dispositivos según se consideren características como: si sirve para introducir o recoger información de la unidad de entrada/salida, tipo de transmisión (en una o las dos direcciones de forma alternativa o a la vez), velocidad, etc El componente lógico Es lo que se denomina software del Sistema Informático y está formado por los sistemas operativos, los programas o aplicaciones y los datos utilizados por los programas. El sistema operativo es el software básico necesario para que el ordenador funcione. Al iniciar el ordenador, antes de ejecutar cualquier programa, debe cargarse el sistema operativo. Su función fundamental es la comunicación entre el usuario y los programas con el hardware del ordenador. Controla que los datos del usuario y de los programas se muestren, se graben, se transfieran entre los diferentes dispositivos, etc., de forma correcta. Página.- 21

25 Hay varias clasificaciones de los sistemas operativos dependiendo de la característica que se contemple: según el número de usuarios que lo puedan utilizar a la vez (monousuario o multiusuario), según el número de tareas (mono o multitarea), según el número de procesadores que pueda controlar (mono o multiproceso), etc. Como ejemplos típicos de sistemas operativos tenemos: MaX, Windows 7, etc. Las aplicaciones (conjuntos de programas) y programas son el software que el usuario utiliza para realizar sus propias tareas. Ejemplos típicos pueden ser los procesadores de textos, programas de contabilidad, programas de diseño gráfico, etc. Los programas se comunican con los dispositivos hardware a través del sistema operativo. Por ejemplo, en primer lugar se instala MaX, a continuación se configura la impresora y a partir de ese momento la impresora podrá ser utilizada por todos los programas (procesadores de texto, programas de diseño, ). Una de las clasificaciones más utilizadas para el software de aplicaciones es: Aplicaciones estandard.- Es el software que se adquiere en las tiendas y que posee unas características predeterminadas. Ejemplos típicos son los paquetes de ofimática, programas de contabilidad, etc. Aplicaciones a medida.- Es el software desarrollado para las empresas atendiendo a las necesidades que contrata. Por ejemplo, el software de gestión de bolsa que un banco encarga a una empresa de programación, o la aplicación que una zapatería encarga a un programador para gestionar su contabilidad y su almacén atendiendo a sus necesidades, etc. Con el desarrollo de los sistemas operativos nos encontramos con que las versiones actuales de los mismos vienen acompañadas de una gran cantidad de software de uso general: paquetes de ofimática, grabadores de DVD's, programas de manejo de gráficos, etc. Por último, tenemos los datos que utilizan los programas. Los programas se diseñan para manejar un tipo de datos muy concreto, por ejemplo, para escribir un documento debe utilizarse un procesador de textos, para modificar una fotografía un programa de diseño gráfico, etc. Existen varias formas de clasificar los datos: Atendiendo a su procedencia y destino: Datos de entrada.- son aquellos que se suministran a los programas a través de los dispositivos de entrada. Por ejemplo, los datos introducidos por teclado, una base de datos de un disco duro, etc. Datos intermedios.- son los datos procedentes de un proceso y que se conservan porque van a ser utilizados en otro proceso posterior. Por ejemplo los datos almacenados en un fichero auxiliar que posteriormente serán ordenados y finalmente impresos. Página.- 22

26 Datos de salida.- son el resultado de la ejecución de algún proceso y que se envían a un dispositivo de salida. Por ejemplo, la impresión de recibos de consumo eléctrico. Atendiendo a si varían o no: fijos o variables. Atendiendo a su tipo: Numéricos.- los números del 0 al 9. Alfabéticos.- las letras de la a a la z, mayúsculas y minúsculas. Alfanuméricos.- los que contienen, además de letras y números, otros caracteres (guiones, caracteres de puntuación, ) Sistemas de codificación La forma en que el ordenador almacena el software está condicionada por las características de sus componentes. En concreto, la memoria RAM, las unidades de almacenamiento masivo, etc. se caracterizan por estar formados por una gran cantidad de elementos biestables, es decir, elementos que únicamente pueden encontrarse en dos estados diferentes. Para entenderlo se puede suponer que la memoria RAM, un disco duro, un DVD, una memoria USB, etc., están formados por una gran cantidad de lámparas cuyos únicos estados son: encendida o apagada. A uno de los dos posibles estados del biestable se le asigna el valor 0 y al otro el valor 1. Así, todo el software que interviene en el ordenador (sistema operativo, aplicaciones y datos) se codifica en un sistema binario, a base de ceros y unos. Sistemas de numeración Para abordar el tema de los sistemas de codificación es conveniente conocer ciertos aspectos de los sistemas de numeración. Un sistema de numeración es un conjunto de símbolos y reglas que se utilizan para representar cantidades. La característica fundamental de un sistema de numeración es su base, es decir, el número de símbolos diferentes que utiliza. Nosotros utilizamos un sistema de numeración de base 10, es decir, tiene 10 símbolos diferentes, del 0 al 9. Las cantidades expresadas en el sistema decimal pueden descomponerse de la forma: = 1 * * * * 100 Esta particularidad se produce en todos los sistemas de numeración posicionales, es decir, aquellos en los que el valor de cada símbolo dentro de una cantidad queda determinado por su valor absoluto y por la posición que ocupa dentro del conjunto de símbolos con que se expresa la cantidad. Página.- 23

27 En un sistema de numeración binario (en base 2) solamente pueden utilizarse dos símbolos diferentes: el 0 y el 1. La forma de contar empezando desde el cero sera: 0, 1, 10, 11, 100, 101, 110, 111, 1000, 1001, 1010, 1011, 1100, 1101, 1110, 1111, Para trasladar una cantidad del sistema binario al decimal puede hacerse una descomposición similar a la efectuada con el sistema decimal: (2 = 1 * * * * * * 20 Aplicando: 0*n=0 y 1*n=n para todo número n (2 = = = 50(10 Para trasladar una cantidad de decimal a binario se divide dicha cantidad entre dos y se obtendrá un cociente y un resto. El cociente se vuelve a dividir entre dos y se obtendrá un cociente y un resto. Se repite el proceso hasta que el cociente sea cero. La cantidad en binario se obtiene tomando los restos de las divisiones sucesivas en orden inverso al de su aparición. En la figura se muestra como pasar el 50 de base decimal a binario (50(10 = (2). Fig 6: Paso de decimal a binario En un sistema de numeración hexadecimal (en base 16) se utilizan 16 caracteres diferentes para expresar las cantidades: 0, 1,, 9, A, B, C, D, E y F. La forma de contar empezando desde cero será: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F, 10, 11,... La equivalencia de las letras con sus valores en decimal es: A(16 = 10(10, B(16 = 11(10, C(16 = 12(10, D(16 = 13(10, E(16 = 14(10 y F(16 = 15(10. Para pasar una cantidad de hexadecimal a binario se hace de forma similar a como se hace desde el sistema binario: AF3(16 = 10(10 * 162( (10 * 161(10 + 3(10 * 160(10 = 10 * * = 2.803(10 Página.- 24

28 Para pasar una cantidad de decimal a hexadecimal se utiliza el método de divisiones sucesivas utilizando como divisor el 16, tomando los restos de forma inversa a su aparición y teniendo cuidado en cambiar los restos cuyo valor sea 10, 11, 12, 13, 14 o 15 por sus correspondientes símbolos hexadecimales A, B, C, D, E y F. Fig 7: Decimal a hexadecimal En la figura, las divisiones sucesivas entre 16 proporcionan los restos 3, 15 y 10, que cambiados por los caracteres hexadecimales correspondientes se obtiene 3, F y A y tomándolos de forma inversa a su aparición se obtiene como resultado AF3, es decir, 2.803(10 = AF3(16. La siguiente tabla muestra la correspondencia de valores entre los tres sistemas de numeración anteriores: DECIMAL BINARIO HEXADECIMAL A B C D E F Por último, para pasar de hexadecimal a binario y viceversa, puede utilizarse el sistema decimal como intermediario, es decir, pasando de un sistema al decimal y después desde el decimal al otro sistema, o bien utilizar el método directo que consiste en sustituir cada uno de los caracteres hexadecimales por sus cuatro caracteres binarios correspondientes (y viceversa). Así, si nos fijamos en la tabla, A(16 = 1010(2, F(16 = 1111(2 y 3(16 = 0011(2, luego AF3(16 = (2 Página.- 25

29 Para pasar de binario a hexadecimal se hacen grupos de cuatro en cuatro dígitos, de derecha a izquierda y a continuación se hace el cambio de cada grupo de dígitos binarios por su correspondiente en hexadecimal. Medidas de la información Por las características de los componentes del ordenador, toda la información que éste maneja tiene que ser codificada en un sistema binario, a base de ceros y unos. La información más elemental e indivisible en el sistema binario se llama bit y su valor puede ser un 0 o un 1. Los múltiplos del bit utilizados para hacer referencia a las enormes capacidades que poseen los diferentes dispositivos son: Cuarteto = 4 bits. Byte u octeto = 8 bits. Kilobyte = 1 Kb. = 210 bytes = 1024 bytes. Para operar se suele redondear a 103 bytes. Megabyte = 1 Mb. = 1024 Kb. Gigabyte = 1 Gb. = 1024 Mb. Terabyte = 1 Tb. = 1024 Gb. Por ejemplo, para hacer referencia a la capacidad de la memoria RAM o de los discos duros las unidades más utilizadas son el Gigabyte y el Terabyte, mientras que para los CD's se utiliza el Megabyte. Sistemas de codificación Para codificar la información en formato binario se utilizan diversos métodos, que dependen del tipo de dato a codificar: Para las instrucciones se utilizan códigos preestablecidos, de tal forma que a cada una de ellas le corresponde un número determinado de bytes y una secuencia concreta de ceros y unos. Para codificar datos alfanuméricos el sistema más difundido es el ASCII que consiste en utilizar un byte para codificar cada carácter. Así, el número máximo de caracteres a codificar es de 256, que es el número máximo de combinaciones diferentes de ceros y unos que se pueden formar con 8 bits. Ver figura. Para codificar datos numéricos se utilizan varios sistemas. Entre los más difundidos se encuentran: Binario puro.- se utilizan 32 bits de los cuales el de más a la izquierda se utiliza para representar el signo, 0 si es positivo y 1 si es negativo, y los 31 restantes para representar el valor del número. Página.- 26

30 Decimal desempaquetado.- se utilizan tantos bytes como dígitos tiene el número decimal a codificar. Cada byte tiene los cuatro bits de la izquierda con unos (1111), se denominan bits de zona, y los cuatro de la derecha corresponden a la codificación en binario del dígito decimal correspondiente. El byte de más a la derecha, en vez de tener cuatro unos en los bits de zona, tiene 1100 si el número es positivo y 1101 si el número es negativo. Decimal empaquetado.- cada dígito decimal se codifica en un cuarteto y en el cuarteto de más a la derecha se codifica el signo, con las mismas combinaciones que para el caso anterior. Se utiliza un número entero de bytes aunque cuando el número de dígitos decimales es par el cuarteto de más a la izquierda lleve el valor Existen más métodos que permiten, por ejemplo, la codificación de cantidades en notación científica o coma flotante utilizando 4 bytes (simple precisión) u 8 bytes (doble precisión). Fig 8: Tabla de caracteres ASCII Página.- 27

31 Práctica (editor hexadecimal) Comprobar en qué formato codifica la información el editor de textos gedit haciendo uso del MaX invitado para pruebas. Las pautas a seguir son: Iniciar una sesión como usuario usprueba01. Lanzar la ejecución de VirtualBox OSE. Iniciar la máquina virtual MaX65 y en ella una sesión como usuario madrid. Comprobar si se encuentra instalado el editor hexadecimal Bless e instalarlo si es necesario. Crear el usuario usprueba01 dentro de la máquina virtual. Cerrar la sesión del usuario madrid e iniciar otra con el usuario recién creado. Entrar a la carpeta de trabajo del usuario, a la subcarpeta Documentos y haciendo click con el botón derecho y eligiendo las opciones Crear un documento - Archivo vacío crear un fichero vacío de texto que se llame Practica_001. Una vez creado el fichero lo abrimos con el botón derecho con la aplicación Editor de textos (Abrir con Abrir con otra aplicación... Editor de textos). Se lanzará la ejecución del programa gedit. Introducimos la siguiente información: abcd ABCD 0123.;-) Lo guardamos, cerramos gedit y abrimos el fichero con el editor hexadecimal recién instalado (boton derecho Abrir con Abrir con otra aplicación... - Bless Hex Editor ). La información que se muestra es la de la figura siguiente: Fig 9: Editor hexadecimal Bless Página.- 28

32 La interpretación de la información mostrada es la siguiente: La primera fila contiene el nombre del fichero. Las siguientes filas muestran la información del fichero, cuyas columnas contienen: La posición que ocupa, dentro del fichero, el primer byte cuyo contenido se muestra en la siguiente columna, expresada en hexadecimal, y comenzando por cero. Así, para la primera fila, el primer byte mostrado es el 0, que en hexadecimal también es 0, el 1º de la siguiente fila es el 17, que en hexadecimal es 11, el 1º de la siguiente sera el 34, que en hexadecimal es 22 y así sucesivamente. El contenido del fichero, codificado en hexadecimal, correspondiéndose cada byte con dos caracteres hexadecimales. Puede comprobarse que gedit utiliza para identificar el salto de línea un byte con el contenido 0A. El contenido del fichero según los caracteres del código ASCII. Cada byte se corresponde con un carácter. Las siguientes filas muestran el valor de la información contenida en el fichero según diferentes tipos de codificación numérica y hexadecimal, decimal, octal, binaria y texto ascii. 2.3 Arquitectura de un sistema operativo Sin entrar en detalles, se puede decir que una de las funciones más importantes del sistema operativo es la de hacer de intermediario entre el usuario, las aplicaciones y el hardware: Entre el usuario y las aplicaciones porque tiene que permitir que el usuario instale, ejecute, detenga, programas de aplicación. Entre el usuario y el hardware porque tiene que permitir la intervención del usuario a través del teclado y la pantalla o del dispositivo oportuno. Entre las aplicaciones y el hardware porque las aplicaciones necesitan la entrada o salida de información o la realización de alguna operación sobre algún dispositivo. Considerando el esquema de la figura, el sistema operativo está compuesto por el núcleo, los procesos del S.O., los drivers adaptados a los dispositivos y el interface que permite al usuario operar con las aplicaciones y con el sistema operativo. Página.- 29

33 Fig 10: El sistema operativo Hay dos tipos de interfaces: De linea de comandos: permiten introducir instrucciones para realizar las tareas oportunas. Como ejemplos tenemos los diferentes shell de Linux o el cmd.exe de Windows. Gráficos: permiten operar sobre las aplicaciones y componentes del sistema operativo. Algunos ejemplos pueden ser los programas de escritorio gnome o KDE o el interface gráfico de Windows. A través de estos programas se puede lanzar la ejecución de una aplicación, instalar el driver de un dispositivo, apagar el ordenador, etc. El núcleo del sistema operativo comunica y coordina los procesos, que haciendo uso de la información de los drivers realizan las operaciones requeridas. Cuando apretamos el botón de encendido de un ordenador que tiene instalado MaX se realiza la siguiente secuencia de operaciones: Antes de que se cargue el S.O. se realizan una serie de comprobaciones básicas (memoria, pantalla, teclado, ). Se inicia la carga del sistema operativo leyendo del disco uno o varios ficheros que contienen el núcleo del sistema. Con las instrucciones del núcleo se procede a la carga de una serie de procesos que controlan el conjunto del sistema. Por ejemplo, un proceso controla el reloj del sistema, otro si tiene que leer o grabar en el disco, otro gestiona la memoria RAM, etc. Una vez cargados los procesos oportunos se carga la aplicación que hace de intermediaria entre el usuario y el resto del sistema operativo y las aplicaciones, que en este caso puede ser la aplicación que gestiona el escritorio gnome. Aquí se estabilizaría el sistema a la espera de que ocurra algún evento o se realice alguna operación que provoque la activación de alguno de los procesos cargados. Aquí ha finalizado la carga del sistema operativo. Se puede discutir si la aplicación que controla el escritorio forma parte del sistema operativo o es una aplicación independiente pero aquí vamos a tratarla como integrante del sistema operativo porque es el programa que permite al usuario interactuar con el sistema. Página.- 30

34 Por otra parte, no se puede hacer una lista de cuales son los procesos que se cargan al iniciar el sistema porque aunque existen ciertos procesos básicos que se cargan siempre, otros se cargarán dependiendo de si en la instalación se ha elegido un tipo de instalación de escritorio, de alumno, de profesor, de servidor de terminales, Además, después de la instalación puede configurarse el equipo para que en el inicio lance la ejecución de más procesos. Por ejemplo, se puede configurar un equipo para que sea servidor de DHCP, servidor WEB, etc. La instrucción ps -A muestra los procesos en ejecución. Un ejemplo de funcionamiento y coordinación entre el núcleo y los diferentes procesos puede ser el siguiente: Cuando el usuario hace doble click sobre el icono de Firefox del escritorio, gnome detecta el movimiento del ratón y el doble click y, puesto que conoce los objetos que hay en cada coordenada del escritorio, puede deducir el nombre del programa que el usuario quiere lanzar. Gnome comunica al núcleo del S.O. que ejecute Firefox. El núcleo comunicará al proceso encargado de la carga de los programas que cargue Firefox. El proceso cargador de programas puede constar de cuatro subprocesos: uno encargado de averiguar la cantidad de memoria RAM necesaria, otro encargado de reservar la memoria, otro encargado de leer del disco el programa y llevarlo a la memoria y un cuarto encargado de lanzar la ejecución del programa y de comunicar al núcleo que su orden ya se ha ejecutado. Los procesos que hacen uso de los dispositivos están adaptados conforme a las especificaciones de los drivers de éstos. Por ejemplo, el proceso encargado de la impresión necesita los drivers de la impresora para poder realizar correctamente su función. 2.4 Funciones de un sistema operativo De forma más detallada se puede decir que las funciones que cumple un sistema operativo son las siguientes: Administración del procesador.- distribuyendo los tiempos que el procesador o los procesadores dedican a cada programa en ejecución. Gestión de la memoria RAM.- asignando a cada usuario y a cada programa la memoria suficiente para que realicen su trabajo. Si la memoria RAM es insuficiente, hacen uso y gestionan la memoria virtual. La memoria virtual es un espacio de disco duro que se utiliza como ampliación de la memoria RAM. El uso de estas memorias hace posible la ejecución de algunos programas aunque sea de forma mucho más lenta que cuando se ejecutan en memoria RAM. Gestión de entrada/salida.- permitiendo a los programas el acceso a los dispositivos de entrada/salida de información, a través de los drivers. Página.- 31

35 Gestión de ejecución de aplicaciones.- asignando a cada aplicación los recursos de memoria, tiempos de procesador, acceso a dispositivos, etc. necesarios para que la aplicación se ejecute. Administración de autorizaciones.- encargándose de que cada programa sea ejecutado, cada dispositivo utilizado, cada fichero accedido,... de acuerdo con las autorizaciones del usuario. Gestión de archivos.- permitiendo la lectura/escritura en el sistema de ficheros acorde a las autorizaciones de acceso de los usuarios y aplicaciones. Informar acerca de su propio funcionamiento.- registrando las anomalías, avisos e indicadores que permitan diagnosticar el funcionamiento correcto o anómalo del mismo. MaX almacena en la carpeta /var/log ficheros que registran diferentes eventos sucedidos durante el arranque del sistema o ejecución de alguna aplicación. 2.5 Tipos de sistemas operativos Algunas de las características que se pueden tener en consideración a la hora de clasificar los sistemas operativos son: Número de usuarios. Número de programas o tareas. Número de procesadores. Tiempo de respuesta Según el número de usuarios Monousuario.- el ordenador con todos sus recursos solamente puede ser utilizado por un usuario. Si otro usuario quiere realizar cualquier operación tiene que esperar a que el anterior termine. Un ejemplo típico es el S.O. Windows 7. Multiusuario.- varios usuarios pueden utilizar a la vez el sistema operativo y los recursos de un ordenador: los programas instalados, el disco duro, la impresora, etc. Un ejemplo es MaX, que permite tener abiertas varias pantallas, en cada una de ellas un usuario y utilizando todos el mismo o diferentes programas. También se puede acceder a MaX desde equipos remotos como si se estuviera trabajando de forma local. Página.- 32

36 Práctica (acceso remoto mediante ssh) Desde la máquina anfitrión de MaX abrir una sesión con ssh (secure shell) en la máquina invitada de MaX, ejecutando en ambas el programa gedit con el usuario usprueba01. Las pautas a seguir pueden ser: Comprobar que en ambas máquinas existe el usuario usprueba01. Comprobar cual es la dirección IP de ambas máquinas (instrucción ifconfig). Instalar en la máquina de prácticas invitada el paquete ssh. Abrir una sesión en la máquina invitada con el usuario usprueba01 y con la instrucción gedit lanzar la ejecución de dicho programa. Una forma de conectarnos desde la máquina anfitrión es entrar como usuario usprueba01 y ejecutar la instrucción: ssh -X A continuación el sistema pedirá la clave del usuario y se establecerá la conexión. La opción -X permite ejecutar aplicaciones gráficas, como lo es gedit. Fig 11: Conexión de máquina anfitrión a invitada mediante ssh En el fichero /etc/ssh/sshd.conf se pueden establecer las cuentas permitidas y las denegadas mediante el parámetro DenyUsers.... Página.- 33

37 Fig 12: Incluir la opción "Escritorio remoto" Otra forma de conectarnos es utilizar, en vez de la instrucción ssh, la opción Conectar con el servidor... del menú Aplicaciones Lugares, introduciendo la información que se muestra en la siguiente figura: Fig 13: ssh gráfico Práctica (acceso remoto mediante VNC) Conectarse desde una máquina con Windows Escritorio al escritorio de MaX. Vamos a Página.- 34

38 utilizar dos máquinas virtuales invitadas, una que va a hacer las funciones de servidor de VNC, que es a la que nos vamos a conectar, y otra que hará de cliente de VNC, desde la que nos conectaremos. Las pautas a seguir pueden ser las siguientes: Instalar en la máquina virtual invitada de prácticas el paquete vnc4server. Incluir la opción Escritorio remoto en el grupo Preferencias a través del menú Aplicaciones Sistema Preferencias Menú Principal seleccionar el grupo Preferencias activar la opción Escritorio remoto. La figura siguiente muestra esta operación. Página.- 35

39 Configurar vnc server a través del menú Aplicaciones Sistema Preferencias Escritorio remoto para permitir a otros usuarios usar y controlar el escritorio. Fig 14: Configuración del escritorio remoto Desde la máquina con XP bajar de internet un programa cliente de VNC (por ejemplo de e instalarlo. Página.- 36

40 Ya se puede establecer la conexión ejecutando el programa instalado (VNC cliente). Fig 15: VNC cliente Fig 16: VNC cliente conectado al escritorio de VNC servidor Según el número de programas o tareas Esta clasificación considera el número de programas que se pueden ejecutar a la vez: Monoprogramación o monotarea.- solamente puede ejecutarse una tarea a la vez y las demás deberán esperar a que termine la que se encuentra en ejecución. Cada tarea dispone de todos los recursos del sistema para su desarrollo: procesador, memoria, discos, impresora, Por otra parte, que un sistema operativo sea monotarea no quiere decir que forzosamente tenga que ser monousuario. Un ejemplo típico es el antiguo MS-DOS. Página.- 37

41 Multiprogramación o multitarea.- pueden ejecutarse varias tareas a la vez. La CPU se encarga de repartir los tiempos de utilización del procesador entre los programas en ejecución. Cada programa individualmente tarda más en ejecutarse puesto que tiene que compartir el procesador con los demás programas pero los beneficios de poder utilizar varios programas simultáneamente y los tiempos medios de espera compensan los inconvenientes. La práctica totalidad de los sistemas operativos actuales son de este tipo y estamos acostumbrados a trabajar haciendo uso de varios programas a la vez de forma natural: trabajamos con el procesador de textos a la vez que escuchamos música y consultamos el correo y escaneamos, imprimimos, etc. etc. Por supuesto MaX pertenece a este tipo de S.O Según el número de procesadores Atendiendo al número de procesadores que puede gestionar el sistema operativo, puede catalogarse como: Monoproceso.- el sistema operativo solamente puede gestionar un procesador. Evidentemente, este tipo de sistemas operativos se instalarán en equipos que únicamente dispongan de un procesador. Un ejemplo de S.O. Monoproceso es Windows XP. Multiproceso.- el sistema operativo puede gestionar varios procesadores. Las formas más comunes de gestionar los procesadores son bastante intuitivas: Se asignan procesos al primer procesador hasta que éste se encuentre al cien por cien de su rendimiento. Los procesos siguientes se irán asignando al siguiente procesador y así sucesivamente. Tiene como inconveniente que mientras unos procesadores están trabajando a un ritmo elevado otros pueden estar inutilizados. Cada programa es ejecutado por todos los procesadores de tal forma que en todo momento intervienen todos los procesadores en la ejecución de todos los programas. A este sistema se le denomina multiproceso simétrico. Todos los procesadores trabajan al mismo rendimiento. Cada programa se va asignando a un procesador diferente. Tiene el inconveniente de que los programas más complejos tardarán más en ejecutarse que en un sistema simétrico. MaX y Windows 2008 son ejemplos de sistemas operativos multiproceso. Página.- 38

42 2.6 Tipos de aplicaciones Dependiendo de las características que se quieran contemplar puede hacerse un gran número de clasificaciones diferentes de las aplicaciones. Los propios sistemas operativos hacen su propia clasificación para permitir el acceso a las diferentes aplicaciones englobándolas en grupos predeterminados, que a su vez pueden ser modificados. En concreto, MaX presenta el conjunto de programas y aplicaciones a través del menú Aplicaciones según la siguiente distribución: Fig 17: Aplicaciones La información actualizada se encuentra en la siguiente dirección: Accesorios.- en este apartado se engloban una serie de programas simples, con funciones muy diversas, tales como: Analizador de uso de disco. Calculadora. Editor de textos. Mapa de caracteres. Terminal. Etc. Acceso universal.- engloba los programas que facilitan el uso del ordenador a personas con algún tipo de discapacidad. Por ejemplo: Dasher. Lector de pantalla y magnificador Orca. Página.- 39

43 Educación.- contiene programas susceptibles de utilización dentro del aula en diversas asignaturas. Algunos ejemplos son: Stellarium. Marble. KAlgebra. Kalzium. Kgeography. Etc. Gráficos.- agrupa programas que permiten la edición y manejo de imágenes y gráficos: Editor de imágenes GIMP. Gestor de fotos F-Spot. Image Scan!. OpenOffice.org Dibujos. Programa de escaneo de imágenes Xsane. Etc. Herramientas del sistema.- en este apartado se incluyen pocas aplicaciones durante la instalación. Posteriormente, al instalar programas de copia de seguridad, de mantenimiento de los discos, etc., se incluirán en este apartado. Internet.- aglutina programas que permiten establecer la comunicación con otros equipos de Internet. Los más representativos pueden ser: Navegador web Firefox. Skype (mensajería, voz y video). Cliente de Terminal Server. Xchat (IRC). Etc. Juegos.- engloba programas de entretenimiento. MaX permite el acceso a varias fuentes de información del sistema, entre las que se encuentran la Guía de referencia y el Manual de instalación. Oficina.- aglutina programas y aplicaciones de uso muy generalizado por la mayoría de los usuarios para preparar textos, presentaciones, datos en forma tabulada, bases de datos, etc. Entre los más utilizados están: OpenOffice.org Procesador de textos. OpenOffice.org Hojas de cálculo. Página.- 40

44 OpenOffice.org Presentaciones. OpenOffice.org Bases de datos. OpenOffice.org Dibujos. Etc. Programación.- engloba una variedad de utilidades que pueden utilizarse como herramientas para la creación de programas en diferentes lenguajes. Algunos ejemplos son: KDevelop: C/C++. Editor de textos SciTE. Gambas 2. Kompozer (editor HTML). Etc. Sonido y vídeo.- incluye una gran variedad de programas que permiten el manejo de dispositivos y la edición de ficheros de sonido y de vídeo. Entre otros, están: Audacity. Avidemus. Grabador de discos Brasero. Grabador de sonido. Reproductor de música Rhythmbox. Reproductor de películas. VLC (reproductor multimedia). Etc. Sistema.- engloba gran número de programas que permiten administrar y hacer un seguimiento del funcionamiento del sistema. Así, tenemos: Apariencia. Conexiones de reed. Gestor de energía. Pantalla. Administrador de arraque. Editor de particiones. Gestor de paquetes Sinaptyc. Herramientas de red. Impresoras. Red. Servicios. Usuarios y grupos. Etc. Página.- 41

45 Y otras opciones relacionadas con programas que permiten abrir y cerrar sesiones, reiniciar el equipo, apagar el sistema, etc. 2.7 Licencias y tipos de licencias Una licencia de software es una forma de contrato mediante la que el titular de los derechos de autor establece las condiciones y términos bajo los que el usuario puede utilizar un determinado programa informático. Puede contener cláusulas y limitaciones respecto a la distribución, plazos, lugares de uso, etc. Aunque inicialmente las licencias de software se desarrollaron para limitar el uso de los programas, pueden utilizarse también para garantizar los derechos relativos al software libre. Para que un determinado programa pueda considerarse software libre, es necesario distribuirlo junto a una licencia que garantice que se mantienen ciertas libertades. Entre las distintas licencias de software libre, la más conocida es la GNU GPL (General Public License o licencia pública general). Un aspecto esencial de los programas GPL es la obligación de redistribuir bajo la misma licencia cualquier versión modificada de los mismos, a fin de garantizar que todas las mejoras realizadas reviertan de nuevo a la comunidad libre. Esta característica se conoce a menudo como el "efecto vírico" de la GPL. También se utiliza el término "cubierto por copyleft" (en oposición a copyright) como equivalente a "distribuido bajo GPL". Este tipo de licencias junto a la universalización del acceso a Internet, han conseguido un sorprendente y extraordinariamente eficaz modelo de desarrollo de programas en el que distintos programadores pueden colaborar entre sí en un mismo proyecto sin importar su situación geográfica Tipos de licencias Existen varios tipos de licencias cuyas diferencias principales dependen de su tipo de Copyleft. Al contrario que la legislación internacional de copyright, que intenta impedir que alteraciones y copias sean efectuadas sin la autorización del autor, la mayoría de las licencias usadas en la publicación de software libre permite que los programas sean modificados y redistribuidos. Las licencias que acompañan al software libre hacen uso de la legislación de copyright para impedir la utilización no autorizada, pero estas licencias definen clara y explícitamente las condiciones bajo las cuales pueden realizarse copias, modificaciones y redistribuciones, con el fin de garantizar las libertades de modificar y redistribuir el software registrado. A esta versión de copyright, se le da el nombre de copyleft. Página.- 42

46 Existen distintos tipos de Copyleft: Copyleft fuerte.- las obras derivadas de un programa no pueden ser enlazadas por programas que no sean libres. Esto no prohíbe la acción contraria: que un programa con Copyleft fuerte enlace a un programa privativo. Su objetivo es no dar ventajas a los desarrolladores de software privativo, ya que estos podrían usar los programas creados para indirectamente privar las libertades de los usuarios, es decir, un programador que desarrolle un programa privativo no podrá usar el código de uno libre para facilitarse el trabajo, así no tendrá la facilidad de privar la libertad a los demás con código libre (indirectamente). Copyleft débil.- las obras derivadas de un programa pueden ser enlazadas por programas que no sean libres. Su objetivo es dejar que programas privativos usen el programa cuando ya existan alternativas gratuitas privativas del mismo programa para facilitar la adopción de programas libres. Copyleft completo.- las obras derivadas de un programa deben distribuirse con las mismas condiciones que el programa original. Copyleft parcial.- la parte editada de las obras derivadas de un programa deben distribuirse con las mismas condiciones que el programa original y el resto del programa puede ser distribuido con las condiciones que el autor estime oportunas. Una clasificación del software atendiendo al tipo de licencia que posee, de menor a mayor grado de libertad, es: Software privativo o propietario.- su licencia reserva la mayoría de los derechos de modificación, duplicación y redistribución para el titular de los derechos de propiedad intelectual (el programador o, en ocasiones, el distribuidor). Es el software distribuido bajo una licencia restrictiva que no contempla las libertades del software libre. Generalmente limitan el uso a las especificaciones del contrato y prohíben la redistribución y modificación. Entre las más conocidas tenemos: Windows Vista, Windows 2003 Server, Windows 7, Antivirus de diferentes marcas Programas ofimáticos como Microsoft Office. Programas editores de video, música, Página.- 43

47 Dentro de este software pueden encontrarse diferentes subclases de licencias dependiendo de las acciones que limiten. Por ejemplo, el software gratuito (freeware) que permite la distribución gratuita pero no la modificación. Software semi-libre.- su licencia, si bien suele permitir su libre uso, copia, modificación y redistribución, incluye cláusulas que limitan algunas de las libertades, generalmente la posibilidad de hacer uso comercial del software. Software libre.- aquel que puede ser usado, copiado, estudiado, modificado y redistribuido libremente. El término está relacionado con las libertades permitidas a los usuarios, no con el precio del mismo. De forma más concreta, un software es libre si garantiza las siguientes libertades: Distribución.- se puede instalar donde se desee, cuantas veces se desee, regalar a quien se desee, o incluso comerciar con éste de manera completamente legal. Uso.- se puede usar para lo que se desee, ya sea en casa, en la empresa, para usos militares, etc. Es decir, se puede ejecutar el programa con cualquier propósito (privado, educativo, público, comercial, etc.). Modificación.- se puede modificar como se desee, sin estar obligado a pedir permiso, adaptándolo así a necesidades más específicas. Se puede estudiar y modificar el código fuente del programa. Distribución de versiones modificadas.- si se modifica algo, se puede aportar con éstas mejoras al programa, y si se separa mucho del programa original se puede formar un nuevo proyecto bajo los términos de una licencia libre. Mejorar un programa, y hacer públicas las mejoras, redunda en beneficio de toda la comunidad. La clasificación de licencias según las libertades que ofrecen es una de las más interesantes aunque la mayor parte de los usuarios se conforman con distinguir entre dos tipos: gratuitas y no gratuitas. Existen, además, ciertas matizaciones que es conveniente conocer: Adware.- es software gratuito cuya financiación se consigue a través de la publicidad que contienen. Esta publicidad puede ser realmente invasiva, como una barra de herramientas en el explorador, o pasar prácticamente desapercibida. Esta publicidad, generalmente no deseada, incluida en forma de ventanas, barras de herramientas, etc. se denomina con frecuencia Spyware. Como ejemplos tenemos Messenger Plus Live, BSPlayer, Página.- 44

48 GPL / GNU / OpenSource.- son tipos de licencias muy conocidos en el entorno Linux que consisten básicamente en programas libres de descargar, usar, distribuir e incluso modificar puesto que se distribuye su código fuente. Como ejemplos tenemos diversas distribuciones de Linux y programas como emule y Ares. Demo.- es una demostración del software que permite conocer algunas de sus características. Algunos ejemplos significativos son las demos de los juegos que permiten conocer sus características antes de comprarlos. Shareware.- es una versión recortada de un programa comercial que permite comprobar si cumple con las expectativas. Las limitaciones pueden ser de muy diversa índole: número de ejecuciones, número de usuarios, ventanas de aviso emergentes, A diferencia de una Demo, una versión Shareware puede ser útil, a pesar de sus limitaciones, para un periodo de tiempo determinado, para un número de usuarios, etc. Un ejemplo puede ser Virtual DJ. Trial.- son versiones Shareware con una limitación de uso temporal que comúnmente suele ser de un mes. Este periodo a veces se amplia o reduce considerablemente. La línea que lo separa con respecto a la definición de Shareware es muy estrecha y, de hecho, muchas veces se utiliza una u otra indistintamente para un mismo programa Ventajas del software libre Algunas de las ventajas que ofrece el software libre frente al privativo son: Bajo coste de adquisición.- derivado de la no adquisición de licencias. Innovación tecnológica.- cada usuario puede aportar sus conocimientos y experiencia permitiendo decidir de forma conjunta las líneas de evolución y desarrollo del software, lo que supone un gran avance tecnológico. Independencia del proveedor.- al disponer del código fuente cada usuario puede contribuir al desarrollo del software al margen del proveedor que lo distribuya. Escrutinio público.- cada usuario puede contribuir a la corrección de errores y mejora del producto de forma rápida y eficaz. Adaptación del software.- las empresas que necesitan realizar un trabajo específico pueden personalizar el software a un coste muy razonable. Página.- 45

49 Lenguas.- aunque el software se cree y salga al mercado en una sola lengua la traducción a otras se ve facilitada por la intervención de gran cantidad de usuarios de todas las partes del mundo Versiones Un determinado software puede pasar por diferentes versiones desde que se pone a disposición de los usuarios para su chequeo hasta que se considera fiable, estable o final: Alpha.- versión inicial en desarrollo que se pone a disposición de los usuarios para que sea probada en los diferentes entornos y configuraciones. Beta.- versión en desarrollo más elaborada que la versión Alpha. RC (Real Candidate).- sigue siendo una versión en desarrollo, más elaborada que la versión Beta, que puede convertirse en versión final si se demuestra que son suficientemente estables. Estable o final.- versión suficientemente probada como para considerarse lista para su uso. Salvo que se especifique lo contrario, el software se distribuye bajo esta versión. Build.- identifica la versión de compilación del programa. Cuanto mayor sea el número más reciente es la versión. 2.8 Actividades recomendadas 1. Buscar en Internet los tipos de procesadores que incorporan los ordenadores personales actuales y analizar sus características. 2. Buscar en Internet los tipos y características de las memorias RAM que incorporan los ordenadores personales actuales. 3. Buscar en Internet las características fundamentales de los periféricos más significativos de entrada/salida. 4. Hacer una página web que recoja los tres apartados anteriores. 5. Pasar 3 números de decimal a binario, de decimal a hexadecimal, de binario a decimal, de hexadecimal a decimal, de binario a hexadecimal y de hexadecimal a binario. 6. Codificar los números -834, 1527 y en ASCII, en binario puro, en decimal desempaquetado y en decimal empaquetado. Mostrar la información en hexadecimal haciendo corresponder cada cuarteto a un carácter hexadecimal. 7. Comprobar la capacidad de memoria virtual (swap) asignada para MaX. 8. Teniendo en cuenta las diferentes clasificaciones de los sistemas operativos encuadrar MaX en cada una de ellas. 9. Buscar en internet 3 clasificaciones diferentes de las aplicaciones informáticas. 10. Buscar ejemplos de software para los diferentes tipos de licencias. Página.- 46

50 3 INSTALACIÓN DE SOFTWARE LIBRE Y PROPIETARIO 3.1 Aspectos didácticos Objetivos: Conocer los requerimientos para la instalación de varios S.O. Conocer los ficheros de configuración del gestor de arranque GRUB e identificar sus opciones. Saber instalar y actualizar MaX y Windows Server. Saber instalar y desinstalar aplicaciones en los diferentes S.O. y analizar sus requerimientos físicos, lógicos (S.O.) y de licencia. Documentación. La documentación de este tema se puede ampliar con la ofrecida a través de internet en las páginas oficiales de MaX, Ubuntu y Microsoft. En muchos casos, la ayuda que contienen las distintas utilidades son un manual de las mismas; es el caso de, por ejemplo, Synaptic. En https://help.ubuntu.com/community/grub2 hay información completa acerca de la última versión del gestor de arranque Grub2. También hay manuales en diferentes formatos en En backharddi_local.pdf y en hay información acerca de cómo realizar clonados de particiones y de discos duros en MaX. Resumen. En este tema se exponen las operaciones fundamentales de instalación y mantenimiento de los sistemas operativos y las aplicaciones. Empieza por analizar las consideraciones previas a la instalación del sistema operativo, el programa gestor de arranque que debe utilizarse dependiendo de los S.O. a instalar; continua con las instalaciones, tanto de los S.O. como de las aplicaciones y finaliza con las actualizaciones y mantenimiento de todo el software instalado, incluidos los controladores de dispositivos. Se hace un tratamiento exhaustivo del gestos de arranque GRUB. Temporización: 14 horas. Página.- 47

51 3.2 Consideraciones previas a la instalación de sistemas operativos libres y propietarios Antes de proceder a la instalación de un sistema operativo deben tenerse en cuenta: Los requisitos hardware mínimos exigidos por el sistema operativo.- generalmente, todos los sistemas operativos, en todas sus versiones, ofrecen información acerca de las características hardware mínimas que debe cumplir el equipo en el que se va a instalar. Estas características mínimas suelen hacer referencia a los elementos: Tipo y velocidad del procesador. Capacidad de la memoria RAM. Capacidad del disco duro. Número y tipo de particiones. Características de la tarjeta de vídeo. Dispositivos necesarios (lector de DVD, tarjeta de red, etc.). Características del equipo.- Además de saber si el equipo cumple con los requisitos de hardware exigidos para el funcionamiento del sistema operativo, hay que conocer: Los discos, particiones, tipos y sistemas operativos instalados previamente. Las particiones que conlleva la instalación del nuevo S.O. El diseño final de particiones, con capacidades y tipos, que se pretende conseguir. Licencias.- Es necesario conocer el tipo de licencia requerido para poder utilizar el S.O. conforme a la legislación vigente. Gestores de arranque.- son los programas que se utilizan en equipos con varios S.O. instalados para seleccionar, durante el inicio, el S.O. que debe cargarse. En función de los sistemas operativos instalados previamente, y los que se instalarán en un futuro, deberá conocerse cual será el programa gestor de arranque que se utilizará y si sus características permiten el inicio desde cualquier S.O. MaX incluye en su distribución el gestor de arranque GRUB que permitirá el inicio de cualquier S.O. instalado con anterioridad y del propio MaX. Página.- 48

52 Fig 18: GRUB Los S.O. Windows incluyen un gestor de arranque que únicamente permiten el inicio desde otros sistemas Windows. Este gestor de arranque puede dejar inaccesibles otros sistemas instalados que no sean de Microsoft. En el caso de que en el mismo sistema deban coexistir sistemas operativos de Microsoft y sistemas libres tipo MaX, se recomienda instalar en primer lugar los de Microsoft y al final MaX, puesto que GRUB incluirá opciones para poder arrancar desde cualquiera de ellos. Copias de seguridad.- es imprescindible realizar copia de seguridad de los datos de un disco antes de proceder a instalar en él un S.O. La instalación de sistemas operativos es la operación que con más frecuencia produce desastres en la información que previamente contenía el disco. Un reparticionamiento erróneo o un problema de compatibilidad puede producir la pérdida de la información de una partición. Aplicaciones a instalar.- El tipo de aplicaciones a instalar y sus requerimientos de capacidad determinarán el S.O. y las capacidades de las particiones a utilizar. Por ejemplo, si se prevé la utilización de un programa grabador de DVD's debe tenerse en cuenta que, aunque el programa en sí no necesita prestaciones especiales, la primera fase de la grabación consiste en llevar al disco duro la información del DVD para después poder pasarla, en una segunda fase, a un nuevo DVD; con lo cual, el programa requiere unas 5 GB de espacio libre en disco. Particiones diferentes para el sistema y para los datos. Se aconseja tener en particiones diferentes el S.O. y los datos de los usuarios. Esta disposición facilita la realización de copias de seguridad y, además, en caso de tener que reinstalar el sistema operativo, no es necesario tener que volcar todos los datos a un dispositivo externo y reubicarlos otra vez después de la instalación. El inconveniente es tener que calcular el espacio que se destinará a cada una de las dos particiones. Métodos de instalación soportados.-además de la instalación típica en la que el usuario administrador realiza la instalación desde los DVD's del sistema, existen circunstancias que pueden hacer aconsejable el uso de técnicas de instalación más sofisticadas. Un caso típico es la instalación del S.O. en un gran número de equipos. Página.- 49

53 Algunas de las técnicas más utilizadas son: Utilización de ficheros con la información requerida por el sistema durante la instalación. Este tipo de instalaciones se llaman desatendidas porque no requieren de la presencia física de un usuario durante la instalación. La información requerida durante la instalación es tomada de un fichero preparado con antelación. El usuario únicamente inicia el proceso de instalación, que suele realizarse mediante una instrucción que contiene una opción para especificar el fichero que contiene las respuestas. Instalación desde un servidor. El software del sistema operativo se encuentra en un equipo de la red y el usuario solamente necesitará disponer de un sistema de inicio que establezca la comunicación con el servidor de instalaciones. Evita que los usuarios dañen el soporte donde se encuentra el software original. Duplicación de discos. Como en el caso anterior se necesita disponer de un sistema de inicio del equipo, que se comunicará con un servidor que contendrá una copia de una instalación realizada anteriormente. Esta técnica es muy eficaz cuando los equipos donde se va a realizar la instalación tienen las mismas características de hardware. La diferencia con el método anterior es que aquí no se produce una instalación real, no se descomprime software ni se realizan comprobaciones de dispositivos, etc, solamente se copian ficheros. Versiones Live.- Cuando lo que se necesita es realizar pruebas con el S.O. para comprobar sus características, o se quiere conservar su integridad sin modificaciones, puede hacerse uso de una versión Live en DVD o lápiz USB, que permite el inicio del sistema y su funcionamiento sin realizar instalaciones en el disco duro. La gran ventaja es que el S.O. nunca sufre variaciones por estar instalado en el DVD y los inconvenientes fundamentales son su mayor lentitud y que las configuraciones y modificaciones realizadas sobre los programas y utilidades incluidas en el DVD se pierden al apagar el equipo. Con la instalación en lápiz USB o pendrive, las configuraciones y modificaciones no se perderán. Un ejemplo típico de utilización en el aula es el S.O. MaX que dispone de versiones Live para DVD y pendrive. Máquina virtual.- para casos similares al anterior (realización de pruebas) también puede considerarse la posibilidad de manejar el S.O. en una máquina virtual. Con este método el S.O. se instala en un fichero que puede ser borrado y copiado en cualquier momento con mayor facilidad que tener que trabajar con particiones. Un ejemplo se utiliza en esta documentación como laboratorio de pruebas con varios sistemas operativos. Página.- 50

54 3.3 Gestores de arranque Introducción La función fundamental de los programas gestores de arranque es facilitar la elección del S.O. de inicio del sistema, en aquellos equipos en los que se han instalado varios sistemas operativos o diferentes versiones de núcleo para un mismo S.O. Uno de los gestores de arranque más extendidos, utilizado por prácticamente todas las distribuciones de GNU/Linux, y que será el que aquí se analice con más detalle, es el denominado GNU GRUB. Para comprender mejor el funcionamiento del gestor de arranque es conveniente conocer en profundidad la estructura de un disco duro y el proceso o las fases del arranque Estructura del disco duro Estructura física Fig 19: Estructura física de un disco duro En cuanto a la estructura física, se puede suponer que un disco duro está formado por una serie de discos con un eje de giro común. Cada disco tiene dos caras (heads), cada cara está compuesta por una serie de pistas concéntricas (tracks) y cada pista está dividida en sectores. Las caras están numeradas desde la superior (cero) hasta la inferior, las pistas desde la más interna (la cero) hasta la más externa y los sectores desde una marca en adelante empezando desde el número 1. Un cilindro lo forman las pistas de las dos caras de todos los discos que tienen el mismo número de pista, es decir, el cilindro cero está compuesto por todas las pistas número cero. Página.- 51

55 Algunos datos interesantes relacionados con la estructura del disco son: Un sector físico es la cantidad mínima de información que se lee o se graba en una operación de lectura/escritura del dispositivo. Un disco duro no puede leer ni grabar una parte de un sector. Una partición debe ocupar un número entero de cilindros. Esta es la razón por la que en algunos sistemas operativos, al crear una partición, se crea con una capacidad un poco mayor o menor a la especificada por el usuario, puesto que realiza un ajuste a una capacidad que corresponda a un número exacto de cilindros. La capacidad de los sectores difiere de unos discos a otros. Para identificar un sector pueden utilizarse varias notaciones: CHS (Cylinder-Head-Sector).- consiste en especificar el nº de cilindro, de cabeza y de sector teniendo en cuenta que siempre se empieza a numerar por el cero. LBA (Logical Block Address).- consiste en especificar el nº absoluto de sector, siendo el primero el nº cero. Así, si un disco tiene 25 cilindros, 10 cabezas y 64 sectores por pista, tiene un total de sectores (64 * 10 * 25), que pueden numerarse del 0 al Cada cilindro tendrá 640 sectores y el sector nº 641 será el primer sector de la pista, de la primera cabeza, del segundo cilindro (cilindro = 1, cabeza = 0, sector = 1). Por lo general, las características de la BIOS relativas a los discos duros (cilindros, cabezas y sectores) no coinciden con las características reales que maneja el software (firmware) incorporado a la unidad de disco. El software del disco realiza las traslaciones oportunas de direcciones. Como ejemplo, el portátil con el que se está escribiendo esta documentación tiene un disco duro de 232,88 Gb. que físicamente constará de dos o cuatro cabezas y, sin embargo, el Editor de particiones muestra la siguiente información: Tamaño: Cabezas: Sectores/Pista: Cilindros: Sectores totales: 232,88 GiB (1 sector = 512 bytes) Página.- 52

56 Particiones Existen dos tipos de particiones: Particiones primarias.- se caracterizan porque el sistema puede arrancar desde ellas sin necesidad de ningún programa gestor de arranque. Un disco duro puede tener como máximo 4 particiones primarias. Particiones extendidas.- tienen como características fundamentales: Para arrancar desde ellas se necesita la ayuda de un programa gestor de arranque. En el caso de que exista será única. Puede contener unidades lógicas, cuyo funcionamiento es similar al de las particiones. Un disco duro puede constar de los siguientes elementos lógicos: Sector de arranque del disco.- Situado en la primera pista (pista cero) del disco. Sus funciones fundamentales son: Identificar si el disco ha sido particionado.- operación que se realiza comprobando si el valor hexadecimal de los bytes 511 y 512 del MBR es 55 AA (particionado) o no. Contener la tabla de asignación de particiones.- son los bytes 447 a 510, ambos incluidos. Estos 64 bytes están divididos en 4 elementos (entradas) de 16 bytes cada uno. Cada elemento contiene información de una partición. Por esta razón un disco no puede contener más de cuatro particiones. Cargar en memoria el pequeño programa o conjunto de instrucciones que deben ejecutarse a continuación. Particiones primarias.- están formadas por: Sector de arranque de la partición.- Los primeros 512 bytes de la partición cuya función es cargar en memoria y ejecutar el primer fichero correspondiente al sistema operativo instalado en dicha partición. Si la partición es de datos el sector de arranque estará vacío. Área de datos.- donde cada sistema operativo guarda los ficheros atendiendo a la organización que corresponda. Página.- 53

57 Partición extendida.- destinada a contener las unidades lógicas. Cada unidad lógica creada estará formada por: Una primera entrada de tabla de partición extendida con estructura similar a las entradas de la tabla de particiones del MBR e información relativa al sector de carga de la propia unidad lógica. Una segunda entrada de tabla de partición extendida con información relativa a la siguiente unidad lógica, si existe. Otras dos entradas de tabla de partición extendida que no se utilizan. Dos bytes con el valor hexadecimal 55 AA. El sector de arranque de la partición. El área de datos. MBR Como se ha descrito anteriormente, el MBR (Master Boot Record) lo forman los primeros 512 bytes del disco. Estos 512 bytes están formados por 3 elementos: El código maestro de carga (MBC).- formado por los primeros 446 bytes del MBR y cuyo contenido son varias instrucciones en código máquina encargadas de lanzar la carga y ejecución del cargador de arranque de un sistema operativo concreto o de un gestor de arranque. Es decir, la última instrucción que ejecute el MBR será: Carga y ejecuta las instrucciones del sector x. Las instrucciones anteriores comprueban si los bytes 511 y 512 tienen como contenido hexadecimal el valor 55 AA y determinan el valor para x. La tabla de particiones.- con 4 elementos o entradas de 16 bytes cada uno cuyo contenido es el siguiente: 1 byte.- indica si la partición es la activa o no y sus posibles valores hexadecimales serán: 00 (hexadecimal).- Partición no activa. 80 (hexadecimal).- Partición activa. Página.- 54

58 3 bytes.- Significativos para notación CHS que indican la cabeza, cilindro y sector del primer sector de la partición. Estos 3 bytes se disponen de la siguiente forma: 8 bits...- contienen el nº de cabeza. 10 bits.- para el nº de cilindro. 6 bits...- para el nº de sector. 1 byte.- con el tipo de partición, siendo algunos de los valores más usuales: 0Ch.- FAT 32. 0Eh.- FAT h.- NTFS. 05h.- Extendida. 82h.- swap. 83h.- Linux. Etc. 3 bytes.- Significativos para notación CHS que indican la cabeza, cilindro y sector del ultimo sector de la partición. Estos 3 bytes se disponen de la siguiente forma: 8 bits...- contienen el nº de cabeza. 10 bits.- para el nº de cilindro. 6 bits...- para el nº de sector. 4 bytes.- Significativos para notación LBA que indican el número del primer sector de la partición. Además, se codifica invirtiendo la posición de los bytes: el primero será el menos significativo y el último el más significativo. Veamos algún ejemplo: Para codificar el valor 63, 1. Se pasa el valor decimal a hexadecimal: 63(10 = 3F(16 2. Se utilizan 4 bytes para la codificación: F 3. Se invierte el orden de los bytes: 3F Para codificar el valor Se pasa el valor decimal a hexadecimal: (10 = B(16 2. Se utilizan 4 bytes para la codificación: B 3. Se invierte el orden de los bytes: 5B bytes.- Significativos para notación LBA e indican la capacidad de la partición en sectores. La codificación es igual que en el caso anterior. Página.- 55

59 Las capacidades y características de los discos duros actuales han sobrepasado los máximos que pueden expresarse en la tabla de particiones: 8 bits para nº de cabezas = 256 cabezas (notación CHS) 6 bits para nº de sectores = 64 sectores (notación CHS) 10 bits para nº de cilindros = 1024 cilindros (notación CHS) 32 bits para nº de sectores = sectores (notación LBA). Si los sectores tienen 512 bytes, esta cantidad equivale a algo más de 2 Tb., capacidades que ya empiezan a ser usuales. La firma del disco.- formada por los bytes 511 y 512, que permite comprobar si el disco está particionado correctamente, en cuyo caso el valor de estos dos bytes será 55h AAh (la letra h indica en notación hexadecimal). La función del MBR es muy simple, al igual que las instrucciones que contiene. Cualquier programa, sistema operativo, virus, puede grabar la información que le permita tomar el control del disco duro. Existe un MBR estándar, reconocido por la práctica totalidad de sistemas operativos que puede ser restaurado para solventar algunas situaciones de pérdida de información. Un esquema de las instrucciones del MBR estándar es: 1. Comprobar si la firma del disco es 55AA. Si no lo es se emite el mensaje de error que corresponda. 2. Comprobar cual es la partición activa. Comprueba qué elemento de la tabla tiene en el primer byte el valor 80h. 3. Comprobar si la notación utilizada es CHS o LBA comparando los bytes 6º, 7º y 8º del elemento de la tabla correspondiente a la partición activa con el valor FEFFFFh. 4. x = nº de sector. Si la notación es CHS en la variable x se carga el contenido de los bytes 2º, 3º y 4º. Si la notación es LBA se carga el contenido de los bytes 9º, 10º, 11º y 12º. 5. Cargar y ejecutar las instrucciones del sector x. Con esta instrucción se cargará el sector de arranque de la partición activa. Algunos sistemas operativos restauran este MBR con la instrucción FDISK /MBR. Página.- 56

60 Practica (editar el MBR) Analizar el contenido del MBR del ordenador comprobando: Que la firma del disco es correcta (55h AAh). Que las cuatro entradas de la tabla de particiones contienen la información conocida sobre las particiones, determinando: Cuál es la partición activa. Dónde empieza y termina cada partición. La capacidad de cada partición. El tipo de sistema de ficheros de cada partición. Para analizar el MBR pueden utilizarse dos métodos: 1. Copiar los 512 bytes del MBR a un fichero y editar el contenido del fichero con un editor hexadecimal. Este método es más seguro porque si se realizan modificaciones sobre el fichero no afectarán al arranque del equipo. Los 512 bytes del MBR se pueden copiar al fichero fichero_mbr con la instrucción: sudo dd if=/dev/sda of=fichero_mbr bs=512 count=1 A continuación se puede editar fichero_mbr con el editor hexadecimal Bless. 2. Editar directamente los primeros 512 bytes del disco con un editor hexadecimal. Se recomienda copiar previamente en un fichero el MBR y trabajar con sumo cuidado para no alterar el original. El MBR original se puede restaurar desde el fichero_mbr con la instrucción: sudo dd if=fichero_mbr of=/dev/sda bs=1 count=512 Para restaurar solamente la tabla de particiones la instrucción sería: sudo dd if=fichero_mbr of=/dev/sda bs=1 count=64 skip=446 seek=446 Finalmente, para editar el primer sector del disco duro puede utilizarse el programa hexedit mediante la instrucción: sudo hexedit /dev/sda considerando que /dev/sda es el nombre del dispositivo correspondiente al disco duro. Página.- 57

61 3.3.3 Secuencia de arranque La secuencia de arranque del equipo difiere según que el dispositivo de inicio sea uno u otro. Se va a considerar el arranque desde el disco duro por ser de los de mayor grado de complejidad derivada de la existencia de particiones o volúmenes, inexistentes en otros dispositivos. El resumen de las etapas del proceso de arranque desde el disco duro es el siguiente: 1. Una vez que el usuario enciende el ordenador, la BIOS (Basic Input Output System) inicia la pantalla y el teclado y comprueba la memoria RAM. A continuación se lee la hora, la fecha y los datos de los periféricos más importantes de los valores que se encuentran en la CMOS (CMOS Setup). Entre los datos leídos se encuentra el orden de arranque de los periféricos, es decir, el orden en que se probará si se puede arrancar desde el periférico. La última operación que realiza la BIOS es la carga en memoria del MBR. 2. Se ejecutan las instrucciones del MBR cuyo resultado final es la carga en memoria de las instrucciones que deben ejecutarse a continuación. Luego, la única función del MBR es cargar el programa o instrucciones que deben realizarse a continuación y cederle el control. Si se trata del MBR estándar, cargará en memoria el contenido del sector de arranque de la partición activa, que será el cargador de arranque del sistema operativo que se encuentre en la partición. Si se trata del MBR gestionado por GRUB 2, el contenido del MBR se conoce como boot.img, no tiene en cuenta la tabla de particiones y su única función es cargar el núcleo de grub, también llamado core.img. 3. Es conveniente diferenciar dos tipos de gestor de arranque: Si el gestor de arranque no es multiarranque, es decir, solamente se encarga de lanzar la ejecución de un único sistema operativo, su función es cargar en memoria el fichero que inicia la carga del sistema operativo y cederle el control. Más que un gestor de arranque sería un cargador de arranque. Un ejemplo típico es un equipo que tiene un sistema operativo Windows Server 2008 que ocupa todo el disco duro. En este caso, el sector de arranque de la única partición contiene las instrucciones que realizan la carga del primer fichero del núcleo de Windows que tomará el control. Si el gestor de arranque es multiarranque (permite el inicio de varios S.O.) mostrará un menú de opciones que permita al usuario elegir el S.O. a iniciar. Una vez elegida la opción transferirá el control al sector de arranque de una partición o a un fichero que será el primero en cargarse del S.O. Página.- 58

62 Un ejemplo típico de este caso es el equipo que contiene en su disco duro un S.O. Windows y otro Linux, gestionando el inicio con GRUB. Grub mostrará las opciones y en el caso de seleccionar la partición de Windows, transferirá el control al sector de arranque de la partición que contiene Windows, que a su vez cargará el primer fichero del S.O., y en el caso de que se seleccione Linux se transferirá el control a los primeros ficheros del S.O. Linux (vmlinuz-versión e initrd-img-versión). 4. Se cargan los ficheros correspondientes al núcleo del sistema operativo y continua la carga de los demás procesos del sistema operativo hasta quedar listo para el inicio de sesión por parte del usuario. 5. Por lo general, el sistema operativo solicita un nombre de usuario y contraseña. Si ambos son correctos permite la entrada y si alguno de los dos no es válido se solicita la identificación completa El gestor de arranque GNU GRUB Según lo expuesto anteriormente, las etapas de la secuencia de arranque relativas al gestor de arranque son las número 2 y 3, desde que la BIOS carga en memoria el MBR hasta que el gestor de arranque carga el primer fichero del sistema operativo y le cede el control del sistema. Una de las funciones más importantes del gestor de arranque es mostrar al usuario los diferentes sistemas operativos del equipo y permitirle que seleccione en cual arrancar. Existen varios programas gestores de arranque siendo uno de los más conocidos el denominado GNU GRUB (Grand Unified Bootloader), que se instala de forma automática con la mayor parte de los S.O. Linux, presentando opciones que permiten el inicio de todo tipo de sistemas operativos que se detecten en el disco duro. En el caso de que se vayan a instalar sistemas operativos de Microsoft y Linux en el mismo equipo, se recomienda instalar en primer lugar los de Microsoft y posteriormente los Linux, respetando además el orden de antigüedad de los mismos. La primera versión que apareció se denominó GRUB Legacy y la que se instala actualmente (a parir de MaX 6.0 y Ubuntu 9.10) es GRUB 2. En un anexo de este manual hay una descripción detallada de GRUB Legacy. GRUB 2 no supone una ampliación o modificación de GRUB Legacy sino que es un código completamente reescrito que aporta mayor flexibilidad y funcionalidad. En la dirección https://help.ubuntu.com/community/grub2 se encuentra la documentación oficial de este software. Para comprobar la versión instalada de GRUB puede utilizarse la instrucción: grub-install -v Página.- 59

63 que mostrará una línea de información parecida a: grub-install (GRUB) ubuntu3.4 Para saber en qué dispositivo y el UUID del mismo donde se encuentra instalado GRUB 2, pueden ejecutarse las instrucciones: El dispositivo: El UUID: sudo grub-probe -t device /boot/grub sudo grub-probe -t fs_uuid /boot/grub Por defecto, el menú de opciones mostrado por GRUB tendrá como primera opción la correspondiente al sistema que realiza su carga. Las carpetas y ficheros más importantes de GRUB 2 son: La carpeta /etc/grub.d.- contiene los scripts fundamentales de GRUB 2 que son utilizados para crear el fichero /etc/grub/grub.cfg. La carpeta /boot/grub.- contiene los módulos utilizados por GRUB 2. El fichero /boot/grub/grub.cfg.- contiene el menú de opciones de arranque. El fichero /etc/default/grub.- contiene configuraciones básicas que normalmente realiza el usuario y que también es utilizado para crear /boot/grub/grub.cfg. La configuración del gestor se lleva acabo en el fichero /boot/grub/grub.cfg que se construye a partir de la información contenida en otros ficheros, así como con las entradas del directorio /boot y los MBR's de otros discos; estos dos últimos lugares contienen información sobre los sistemas operativos instalados en el ordenador. La forma de proceder de GRUB 2 es la siguiente: 1. En primer lugar lee el archivo /etc/default/grub, que contiene la configuración básica. 2. Ejecuta los scripts de /etc/grub.d que tengan permiso de ejecución, por orden ascendente del nombre. 3. A partir de la información obtenida en los dos pasos anteriores genera el fichero de configuración /etc/grub/grub.cfg que se cargará para mostrar el menú de arranque. Para modificar algún aspecto u opción del arranque de grub no se debe editar el fichero /boot/grub/grub.cfg puesto que éste se genera automáticamente. Los ficheros que pueden ser modificados son /etc/default/grub y los scripts de /etc/grub.d. Para que estas modificaciones queden reflejadas instantáneamente en el fichero /boot/grub/grub.cfg hay que ejecutar la instrucción: update-grub2 Página.- 60

64 A continuación se muestra una ligera descripción del contenido del fichero /etc/default/grub y de la carpeta /etc/grub.d: El archivo /etc/default/grub Este archivo puede ser editado por un usuario con privilegios de administrador. Aunque los parámetros más comunes están recogidos en este fichero, existen otros adicionales que podrían incluirse que hacen referencia por ejemplo al fondo de pantalla, tema, etc. Las variables predefinidas que pueden usarse se encuentran en el fichero /usr/sbin/grub-mkconfig y pueden mostrarse con la instrucción: grep export GRUB_DEFAULT -A50 /usr/sbin/grub-mkconfig grep GRUB_ Además de las variables predefinidas el usuario puede incluir sus propias variables que podrá utilizar en los scripts de /boot/grub.d. Para editar el fichero puede utilizarse el editor Gedit, el comando gksu que es el equivalente gráfico de sudo y & que permite que se utilice el terminal para regrabar GRUB 2 una vez que el usuario guarda el fichero: gksu gedit /etc/default/grub & Y una vez realizados los cambios oportunos: sudo update-grub En la dirección https://help.ubuntu.com/community/grub2/setup#file_structure se encuentra una explicación bastante exhaustiva de los parámetros más utilizados. A continuación hacemos un resumen: GRUB_DEFAULT={ n n>m cadena saved }.- permite especificar el número de la opción de arranque por defecto, la opción y subopción, la descripción del sistema o el último sistema utilizado. Si se expecifica un número debe tenerse en cuenta que la primera opción (o subopción) es la 0. GRUB_SAVEDEFAULT={true false }.- con el valor true establece como valor predeterminado el elegido en el arranque anterior. Necesita la especificación del valor saved para el parámetro anterior. GRUB_HIDDEN_TIMEOUT=n.- establece el tiempo de espera con el menú oculto. GRUB_HIDDEN_TIMEOUT_QUIET={ true false }.- Oculta (true) o muestra (false) un contador de marcha atrás. GRUB_TIMEOUT=n.- Establece el tiempo que se muestra el menú de opciones. Página.- 61

65 GRUB_DISTRIBUTOR= lsb_release -i -s 2 > /dev/null echo Debian.- recupera el nombre descriptivo de la entrada de menú. GRUB_CMDLINE_LINUX_DEFAULT= quiet splash.- quiet sirve para agrupar las entradas similares y splash para que se muestre una imagen de carga en vez de los mensajes de arranque del kernell. GRUB_TERMINAL=console.- permite desactivar el terminal gráfico. GRUB_DISABLE_LINUX_UUID= true.- permite el uso de nombres de dispositivo /dev/sdxy en vez de UUID's. GRUB_GFXMODE=640X480.- permite especificar la resolución de la pantalla y deben utilizar valores soportados por la tarjeta gráfica. Puede visualizarse la resolucion aceptada por GRUB 2 mediante el comando vbeinfo en la línea de comandos de GRUB 2, a la que se accede pulsando la letra c cuando se está mostrando el menú. Si no se especifica se tomará de /etc/grub.d/00_header. GRUB_DISABLE_LINUX_RECOVERY=true.- anula la opción de recuperación del menú. GRUB_INIT_TUNE= emite un pitido al mostrar el menú. GRUB_BACKGROUND.- establece el nombre de la imagen de fondo. GRUB_DISABLE_OS_PROBER=true.- desactiva la detección de otros sistemas operativos para incluir en el menú cuando se ejecuta la instrucción update-grub. La carpeta /etc/grub.d Los scripts de esta carpeta se leen durante la ejecución de la instrucción update-grub y sus instrucciones se incorporan al fichero /boot/grub/grub.cfg. Debe tenerse en cuenta: El orden de ejecución de los scripts es el orden ascendente de sus nombres, empezando por los que empiezan con números. Así determinarán el orden de aparición de las diferentes opciones del menú de inicio. Para agregar entradas al menú pueden añadirse al fichero 40_custom o en un fichero nuevo. Teniendo en cuenta el nombre, las entradas de 40_custom aparecerán al final del menú. Solamente los ficheros ejecutables pueden generar salidas para /boot/grub/grub.cfg durante la ejecución de update-grub. Página.- 62

66 A continuación se muestra una descripción de los scripts de la carpeta: 00_header.- contiene asignaciones a variables de configuración como localización de ficheros del sistema, configuraciones de vídeo, etc. Por lo general los usuarios no necesitan tocar este fichero. 05_debian_theme.- establece la imagen de fondo, el color del texto, etc. 10_linux.- identifica los núcleos del dispositivo raíz para el sistema operativo en uso (/boot) y crea entradas (opciones) para ellos. En las últimas versiones solamente se visualiza una entrada para la última versión de núcleo. Para reducir el número de núcleos visualizados pueden borrarse las versiones más antiguas del directorio /boot o utilizar algún programa de optimización de GRUB 2. 20_memtest86+.- Busca el fichero /boot/memtest86+.bin e incluye la opción correspondiente en el menú. Puede ser desactivado anulando su permiso de ejecución: sudo chmod -x /etc/grub.d/20_memtest86+ sudo update-grub 30_os-prober.- utiliza os-prober para buscar Linux y otros sistemas operativos y lleva el resultado al menú de GRUB 2. Incluye opciones para reconocer Linux, Windows, OSX y Hurd. Las variables de este fichero determinan la forma en que se mostrarán los nombres pudiendo ser modificadas por los usuarios. Para deshabilitar este script puede introducirse una entrada en el fichero /etc/default/grub o anular su permiso de ejecución. 40_custom.- es una plantilla para añadir entradas que se insertarán a /boot/grub/grub.cfg al ejecutar update-grub. Las líneas que se añadan a este fichero seincorporarán a grub.cfg sin cambios. En el caso de que se incluyan ficheros ejecutables en el directorio, sus nombres deben permitir que en primer lugar se ejecuten 00_header y 05_debian_theme. Se recuerda que en hay manuales completos de GRUB 2. Ficheros con imágenes de GRUB GRUB está formado por varias imágenes: una variedad de imágenes de arranque para iniciar BOOT de varias formas, una imagen del núcleo y una serie de módulos que se combinarán con el núcleo para formar una imagen core (funcional): boot.img.- primera parte del arranque de GRUB. Se instalará en el MBR del disco o en el sector de arranque de una partición y ocupará 512 bytes. Su función es cargar el Página.- 63

67 primer sector de la imagen core. Dado su tamaño, boot.img no tiene capacidad para entender estructuras de sistemas de ficheros y grub-setup introducirá el código con la localización del primer sector de la imagen core dentro de boot.img cuando se instala GRUB. diskboot.img.- es el primer sector de la imagen core y su función es leer el resto de la misma, llevarla a memoria e iniciar el kernel. Éste utiliza aún un formato de lista de bloques para localizar el resto de la imagen core. cdboot.img.- similar a diskboot.img pero para arrancar desde CD. pxeboot.img.- para iniciar desde la red. lnxboot.img.- utilizada por el gestor LILO. kernell.img.- contiene recursos básicos: estructuras para manejo de dispositivos y ficheros, variables de entorno, intérprete de comandos para el modo recuperación, etc. Se compila junto con todas las imágenes core. core.img.- es la imagen funcional de GRUB que se compila dinámicamente desde la imagen del kernell junto con una lista de módulos por el programa grub-mkimage. Contiene módulos suficientes para acceder a /boot/grub y cargar cualquier fichero. Su estructura modular le permite un tamaño suficientemente pequeño como para acomodarse en las áreas del disco donde debe ser instalado, que frecuentemente son menores de 32 Kb. *.mod.- todo lo demás de GRUB se encuentra en módulos que se cargan dinámicamente. Si son esenciales se cargan automáticamente y pueden cargarse manualmente con el comando insmod. A la vista de estas imágenes, un sistema con un S.O. Windows y otro Linux puede seguir las siguientes etapas: 1. boot.img.- se instala en el MBR conteniendo un puntero que apunta al sector de arranque de la partición de Linux, donde se instala diskboot.img. 2. diskboot.img.- instalado en el sector de arranque de la partición de Linux y contiene los números de sector donde se encuentra el resto del arranque de GRUB (core.img) antes de acceder a los ficheros del sistema de ficheros. 3. kernel.img.- corresponde a los siguientes sectores que contienen el código y módulos suficientes para poder acceder al primer fichero del sistema de ficheros de Linux. diskboot.img más el kernel.img y los módulos que éste utiliza forman core.img. 4. Se ejecutan los ficheros de /etc/grub.d. Página.- 64

68 5. Si se elige para arrancar la opción correspondiente a Linux se cargan los ficheros /boot/vmlinuz y /boot/initrd.img de la versión instalada. Si GRUB se instala en la pista cero de un disco, en vez de dentro de una partición, diskboot.img, kernel.img y los módulos correspondientes (core.img completo) se instalan en los 62 sectores (31 Kb) situados a continuación del MBR. OJO!, los ficheros de las tres primeras etapas, situados en /boot/grub/ son copias (imágenes) del código correspondiente situado en los lugares originales que corresponde (MBR, sector de arranque, etc.). Instalación de GRUB Para instalar GRUB en un dispositivo puede usarse la utilidad grub-install que estará disponible si ha sido instalada previamente. La sintaxis de la instrucción es: grub-install dispositivo por ejemplo grub-install /dev/sda. En un dispositivo con un sistema de particionado MBR (no GPT) la instalación de GRUB puede realizarse en dos lugares diferentes: 1. En la pista cero del dispositivo, entre el MBR y la primera partición, que generalmente dispone de al menos 31 Kb (62 sectores). 2. Dentro de una partición, guardando una lista de los sectores que ocupa en el sector de arranque de la misma. Ambas opciones tienen sus inconvenientes. No hay una forma para reservar un espacio determinado entre el MBR y la primera partición y existe software propietario que utiliza dicho espacio para controlar aspectos relativos a la licencia. Además, algunos sistemas pueden estar particionados sin dejar espacio suficiente en este área. Por otra parte, si se instala dentro de un sistema de ficheros, GRUB será vulnerable a que sus bloques sean cambiados de lugar por programas tales como compresores, implementaciones agresivas de fsck, etc. La recomendación general es situar GRUB antes de la primera partición, salvo que se necesiten requerimientos especiales. Los discos modernos suelen dejar amplios márgenes de espacio alrededor de las particiones, siendo común que exista 1 Mb libre antes de la primera partición. Proteger GRUB con contraseña Puede resultar interesante proteger la configuración de grub para que solamente los usuarios deseados puedan actuar durante el arranque de la máquina sobre una configuración tan delicada, teniendo en cuenta que una mala manipulación de la misma puede llevar a que el ordenador no arranque. Página.- 65

69 Para ello realizaremos los siguientes pasos: 1. Generar una contraseña encriptada con la orden: sudo grub-mkpasswd-pbkdf2 2. Introducir la contraseña deseada a encriptar dos veces. 3. Nos devolverá la contraseña encriptada (ocupa varias líneas) y la copiaremos. 4. En el fichero /boot/grub/grub.cfg, indicamos el nombre del usuario al que se permite el acceso a grub con el comando: set superusers= usuario No es necesario crear este usuario en el sistema (santiago en el ejemplo). 5. En el fichero /boot/grub/grub.cfg, deberemos pegar el resultado obtenido en el apartado 3 correspondiente a la contraseña encriptada (desde grub.pbkdf2.sha a...) en la orden password_pbkdf2 santiago contraseña_encriptada El fichero /boot/grub/grub.cfg queda como muestra la figura siguiente: Fig 20: Fichero /boot/grub/grub.cfg Si se desea proteger la entrada de alguna opción del menú, se deberá agregar la opción --users nombre_usuario en la entrada de menú correspondiente, tal y como se muestra en la figura siguiente para el usuario santiago. Página.- 66

70 Fig 21: Fichero /boot/grub/grub.cfg Al reiniciar y comprobar los cambios notaremos que el sistema tarda un tiempo considerable en hacer las comprobaciones de seguridad. Practicas con GRUB Cambiar los colores del menú GRUB Para modificar los colores del texto se edita el archivo /etc/grub.d/05_debian_theme, se buscan las líneas: set color_normal=black/black set color_highlight=magenta/black Donde en "set color_normal" el primer "black" es el color del texto sin seleccionar y en "set color_highlight", "magenta" es el color del texto seleccionado y "black" es el color del fondo en la línea de texto seleccionado. Los colores que se pueden utilizar entre otros son: rojo: red verde: green azul: blue amarillo: yellow cian: cyan magenta: magenta blanco: white negro: black Después de modificar el archivo hay que actualizar grub.cfg. Enlace de interés: Gestión del menú GRUB 1. Modificar el fichero /etc/default/grub para: Cambiar la opción de arranque por defecto. Que el tiempo de espera del menú sean 20 segundos. Página.- 67

71 Cambiar el título de alguna opción del menú. #GRUB_DISTRIBUTOR=lsb_release -i -s 2> /dev/null echo Debian GRUB_DISTRIBUTOR= UBUNTU ASIR_1 Que no aparezca la opción de recovery mode. Que no aparezca la opción que permite realizar el test de memoria. Modificar los colores de fondo del menú. Modificar el orden de las entradas del menú. sudo mv /etc/grub.d/10_linux /etc/grub.d/50_linux Poner una contraseña a la opción de recuperación. Recuperar GRUB 2 Se puede necesitar recuperar el gestor de arranque por diferentes motivos. Los más usuales son los siguientes: 1. Haber manipulado incorrectamente alguno de los ficheros. 2. Haber instalado un S.O. Windows después de un S.O. Linux. El S.O.Windows sobreescribe el MBR (dónde reside GRUB), e instala su propio gestor de arranque en él, sin incluir ninguna entrada para acceder al S.O. Linux. Si no se ha perdido la entrada a Linux, sino que simplemente falta la entrada a otros sistemas operativos, se puede intentar recuperar esta entrada ejecutando el ya conocido update-grub2 o actuando manualmente sobre el fichero 30_osprober o 40_custom. Si se ha perdido el acceso a GRUB se puede proceder de la forma: 1. Iniciar el equipo con el DVD Live de Linux. 2. Ejecutar la instrucción sudo fdisk -l para comprobar los nombres de dispositivo de las diferentes particiones. Supongamos que la correspondiente a Linux es /dev/sda6. 3. Ejecutar sudo mount /dev/sda6 /mnt para tener acceso a la partición de MaX. 4. Ejecutar sudo mount --bind /dev /mnt/dev. 5. Ejecutar sudo mount --bind /proc /mnt/proc 6. Ejecutar sudo chroot /mnt para acceder como usuario root al antiguo sistema de ficheros. 7. Ejecutar grub-install --recheck /dev/sda ( sda no sda6 ). 8. Reiniciar el equipo. Para actualizar grub2 ejecutar sudo update-grub2. 9. Si no funciona puede probarse a instalar grub2 con sudo aptitude install grub2. El fichero con las opciones de grub es /boot/grub/grub.cfg. Otra posibilidad de recuperación es usar la herramienta supergrub2disk, el enlace es: Página.- 68

72 El shell de GRUB (Será desarrollado próximamente) Recuperar desde GRUB una contraseña olvidada (Procedimiento solamente probado para GRUB Legacy) Para restablecer una contraseña olvidada para un usuario, desde el shell de GRUB, pueden seguirse los siguientes pasos: 1. Encender el equipo y, cuando aparezcan las diferentes opciones del menú de arranque, seleccionar MaX 6.5, kernel generic o la que corresponda. Puede ser necesario pulsar <Esc> para que aparezcan las opciones. 2. Pulsar e para editar. 3. Seleccionar la línea del kernel (kernel /boot/vmlinuz generic root=uuid...) y pulsar e. 4. Ir a la línea del final y cambiar ro quiet splas por rw init=/bin/bash y pulsar <Intro>. Hay que tener en cuenta que el teclado cargado es el americano y que los caracteres = y / están en las teclas que contienen los caracteres y -_ respectivamente. 5. Pulsar <Intro> y después b para arrancar (boot) el sistema. 6. El sistema se iniciará con el usuario root y sin contraseña. 7. Para poner una contraseña al usuario madrid habrá que ejecutar la instrucción: passwd madrid La instrucción solicitará la contraseña por duplicado. 8. Una vez introducida la contraseña reiniciar el equipo. Administración de GRUB desde el entorno gráfico Hay una variedad de programas que permiten manejar la configuración de GRUB con el entorno gráfico. La función de estos programas es facilitar la elección de las diferentes opciones disponibles, aparte de documentar cada una de ellas. MaX 5.0 instala por defecto el programa startupmanager, al que se accede a través del menú Aplicaciones Sistema Administración Administrador de arranque. Página.- 69

73 Fig 22: Administrador de arranque Mediante las correspondientes fichas permite realizar la configuración completa de GRUB: Opciones de arranque.- permite configurar: El tiempo que permanece el menú en la pantalla antes de arrancar con la opción por defecto. El sistema operativo que arrancará por defecto si no se selecciona otro. La resolución y número de colores de la pantalla. Etc. Aspecto.- permite configurar: Los colores del menú del cargador de arranque. La imagen que se mostrará como fondo del menú de arranque. La imagen que se mostrará desde que se selecciona una opción hasta que se muestra el escritorio del usuario. Seguridad.- permite proteger el menú de arranque con una contraseña. Página.- 70

74 Avanzado.- permite: Limitar el número de kernels a mantener en el menú. Crear opciones para chequear la memoria y para arrancar en modo recuperación. Etc. 3.4 Instalación de sistemas operativos. Requisitos, versiones y licencias. De entre la gran variedad de sistemas operativos, vamos a seleccionar para el desarrollo de este apartado dos de ellos: MaX y Windows 2008 Server. Por lo general, para proceder a la instalación de cualquier sistema operativo es necesario configurar el equipo para que utilice como primer dispositivo de arranque el lector de DVD. Solamente en el caso de que la instalación se realice desde una ubicación remota, se utilizará otro dispositivo de arranque, que además permita establecer la comunicación con el equipo remoto MaX Existe información muy completa acerca de la instalación de MaX en el Manual de Instalación que queda instalado en el escritorio, y en la Documentación para usuarios desarrollada en el bloque I. La versión más reciente de MaX es la 5.0, que ha sido puesta a disposición de los usuarios a finales de Puede bajarse de internet desde ftp://max.educa.madrid.org/isos, donde pueden encontrarse las variantes: Fig 23: Variantes de MaX v.5.0 CD Live i386.- versión reducida que permite la ejecución desde CD. DVD Live amd 64.- versión completa que permite la ejecución e instalación en equipos con procesador amd de 64 bits. Página.- 71

75 DVD Live i386.- versión completa que permite la ejecución e instalación en equipos con procesador intel de 32 bits. NanoMaX i386.- versión reducida adaptada para su ejecución desde pen drive. En el Manual de Instalación se contemplan los requisitos mínimos y los recomendados para cualquiera de las versiones a instalar: Requisitos mínimos: Procesador X86 o compatible a 1 Ghz. Lector de DVD. 256 MB de meoria RAM. 8 GB de disco duro. Tarjeta de red. Requisitos recomendados: Procesador X86 o compatible a 1 Ghz. Lector de DVD. 512 MB de memoria RAM. 10 GB de disco duro más el necesitado por el usuario. Tarjeta de red. Al iniciar el sistema con el DVD de MaX se muestran las opciones: Arrancar MaX 5.0 desde DVD (opción por defecto).- permite correr la versión DVD Live. Esta versión presentará un icono en el escritorio que permitirá la instalación de MaX en el disco duro. Instalar MaX 5.0 (solo muestra el instalador).- permite la instalación de MaX. Test de memoria.- permite comprobar el funcionamiento de la memoria RAM. Arrancar desde el primer disco duro.- se utiliza cuando por equivocación el equipo ha arrancado desde el DVD de MaX. Una vez iniciada la instalación, en el paso 2 de 5 el usuario debe elegir entre una de las siguientes versiones de MaX 5.0 a instalar: Escritorio.- incluye todas las aplicaciones educativas. No se recomienda si el equipo va a hacer la función de servidor. Página.- 72

76 Alumno.- incluye todas las aplicaciones educativas y la parte cliente de la aplicación max-tcos, que permite el control del ordenador desde el del profesor. Ideal para uso del alumno en el aula. Profesor.- incluye todas las aplicaciones educativas y la parte servidor de la aplicación max-tcos, que permitirá el control de los equipos de los alumnos. Ideal para uso del profesor en el aula. Servidor de terminales TCOS y clonado BackHarddi.- incluye todas las aplicaciones de la distribución, las aplicaciones típicas de un servidor (DHCP, Web, FTP, Webmin, NFS, ), la parte servidor de max-tcos, la parte servidor del clonado de discos duros, etc. Ideal para servidores. Fig 24: Tipo de instalación El Manual de Instalación contiene de forma pormenorizada las particularidades de la instalación de cualquiera de los diferentes tipos. En cuanto a las licencias, MaX es un sistema operativo diseñado por la Comunidad de Madrid para atender las necesidades de sus centros educativos, y que se ha construido a partir de Ubuntu, una distribución del sistema operativo libre y gratuito GNU-Linux. Todo su código fuente puede ser utilizado, modificado y redistribuido libremente por cualquiera bajo los términos de la Licencia Pública General de GNU (GPL). Su documentación tiene licencia GPLD, es decir, puede ser utilizada, copiada, modificada y distribuida citando su procedencia. Página.- 73

77 3.4.2 Windows Server 2008 Las versiones de prueba de este sistema operativo están disponibles en internet, en la dirección La licencia de prueba permite su utilización gratuita durante 60 días, ampliable hasta un máximo de 240 días, suficiente para realizar las pruebas oportunas a lo largo de un curso académico. A través de las diferentes fichas y opciones de esa misma página web se tiene acceso a información muy completa. Por ejemplo, en página accesible desde la anterior, en el apartado Windows Server 2008 Server Roles, a través de los enlaces existentes, se accede a guías de instalación y configuración de los servicios de servidor más utilizados. La ampliación de la licencia de prueba puede hacerse a través de la página Los requisitos hardware para la instalación y uso de Windows Server 2008 pueden consultarse en: Requisitos mínimos: Procesador x86 a 1 GHz o x64 a 1.4 Ghz. Memoria RAM de 512 MB. Disco duro con 10 GB libres. Tarjeta gráfica super VGA (800 x 600). Requisitos recomendados: Procesador a 2 GHz o más rápido. Memoria RAM de 2 GB o mayor. Disco duro con 40 GB libres o más. Tarjeta gráfica super VGA (800 x 600) o de mayor resolución. Estos requerimientos pueden variar dependiendo de la versión (Standard, Enterprise o Datacenter), la configuración y las aplicaciones y funciones a instalar. Las diferentes versiones de Windows Server 2008 que Microsoft a sacado al mercado son: Windows Server 2008 Standard.- puede manejar hasta un máximo de 4 GB de RAM en sistemas de 32 bits y hasta 32 GB en sistemas de 64 bits. La licencia permite la ejecución de este S.O. en una máquina física y una instancia en dicha máquina sobre una máquina virtual. Página.- 74

78 Es un sistema operativo robusto que incorpora capacidades de virtualización y Web mejoradas, con potentes herramientas para un mayor control sobre los servidores y para optimizar las tareas de configuración y administración. Dispone de altas prestaciones de seguridad para la protección de datos y de la red, constituyendo una buena opción para cualquier tipo de empresa. Windows Server 2008 Enterprise.- puede manejar hasta 64 GB de RAM en sistemas de 32 bits y hasta 2 TB en sistemas de 64 bits. La licencia permite la ejecución de este S.O. en una máquina física y hasta un máximo de 4 instancias a máquinas virtuales. Además de las características de la versión Standard, dispone de funciones como el servicio de clúster y la adición de procesadores en caliente, mejora la seguridad y permite reducir costes mediante la consolidación de aplicaciones, utilizando derechos de licencia para virtualización. Es una buena opción para una empresa de tipo medio con una infraestructura escalable y dinámica. Un clúster es un grupo de equipos que trabajan de manera conjunta para ejecutar un grupo de aplicaciones comunes y ofrecer la imagen de un único sistema al cliente y a la aplicación. Los equipos están conectados físicamente mediante cables y programados mediante software para clústeres. Estas conexiones permiten que los equipos utilicen la conmutación por error y el equilibrio de carga, que no resultan posibles en equipos individuales. Además puede aumentarse la capacidad de cálculo del clúster añadiendo nuevos equipos o procesadores (escalabilidad). Windows Server 2008 Datacenter.- puede manejar hasta 64 GB de RAM en sistemas de 32 bits y hasta 2 TB en sistemas de 64 bits. La licencia permite la ejecución de este S.O. en una máquina física y en un número ilimitado de instancias a máquinas virtuales. Es una plataforma de nivel corporativo para aplicaciones de alto rendimiento y virtualización a gran escala sobre servidores de todo tipo. La disponibilidad del sistema se ve incrementada gracias a las posibilidades de configuración en clúster y particionamiento dinámico del hardware. Permite reducir los costes de infraestructura mediante la consolidación de aplicaciones facilitada por derechos de licencia de virtualización ilimitados. Escala desde 2 a 64 procesadores. Windows Server 2008 Datacenter supone la plataforma ideal para soluciones de virtualización y alto nivel de escalabilidad en entornos de grandes organizaciones. Windows Web Server diseñado como servidor Web especializado exclusivamente. Es una plataforma sólida de funcionalidades Web basada en las tecnologías de última generación que introduce Windows Server Se integra con los entornos IIS 7.0, ASP.NET y Microsoft.NET Framework, todos ellos rediseñados en profundidad, por lo que Windows Web Server 2008 permite a cualquier organización publicar y difundir páginas, sitios, aplicaciones y servicios Web en un tiempo mínimo. Página.- 75

79 Windows Server 2008 for Itanium-Based System.- edición optimizada para entornos a gran escala de bases de datos, aplicaciones de línea de negocio o de otro tipo, donde se requiere una alta disponibilidad y la capacidad de escalar hasta a 64 procesadores para responder a las necesidades de las organizaciones y de las soluciones de misión crítica. En la actualidad existe una revisión de cada una de estas versiones que ha sido denominada como R2. Los detalles sobre el uso de licencias para cada una de las versiones pueden consultarse en Las versiones de servidores de Microsoft anteriores al Server 2008, por orden de aparición han sido Windows NT Server, Windows 2000 Server y Windows Server 2003, esta última con varias revisiones (SP1 y SP2). 3.5 Instalación/desinstalación de aplicaciones. Requisitos, versiones y licencias. La instalación de una aplicación en un equipo consiste en la realización de las operaciones necesarias para posibilitar a los usuarios el lanzamiento de la ejecución de dicha aplicación de forma sencilla. Por ejemplo, cuando se instala una aplicación en MaX, generalmente se incluye una opción en uno de los submenús del menú Aplicaciones que posibilita la ejecución de la aplicación instalada. Algo similar ocurre en Windows, que se crea una opción en el submenú Todos los programas del menú Inicio. A veces, además, durante la instalación se crea un icono en el escritorio que permite la ejecución, y otras, el lanzamiento se realiza mediante la ejecución de una instrucción en la línea de comandos de un terminal. La desinstalación es el proceso inverso, consiste en realizar las operaciones que permitan eliminar los datos y programas pertenecientes a la aplicación y en hacer las modificaciones oportunas en los ficheros de configuración del sistema que los devuelva a su estado previo a la instalación. Normalmente la desinstalación permite eliminar los ficheros que pertenecen única y exclusivamente a la aplicación en cuestión, pero no pueden eliminar todas las líneas incluidas o deshacer los cambios efectuados en los ficheros de configuración del sistema porque podrían afectar a la ejecución de otras aplicaciones. Las desinstalaciones van dejando restos en los ficheros de configuración, líneas o cambios innecesarios que pueden afectar al rendimiento de los sistemas operativos y que hacen que los sistemas operativos sometidos a gran número de instalaciones y desinstalaciones deban ser reinstalados periódicamente. Página.- 76

80 La forma de realizar una instalación depende fundamentalmente del tipo de aplicación. Los tres casos más usuales son: Aplicaciones a medida.- son aquellas aplicaciones diseñadas y realizadas por un programador o equipo de programadores para informatizar las operaciones determinadas por un cliente concreto. Por ejemplo, cuando un banco encarga la informatización de cierta tarea a un equipo de programadores. La instalación la realiza el equipo de programadores modificando, creando y cargando los ficheros necesarios. Aplicaciones de uso general.- son aquellas aplicaciones que cualquier usuario puede comprar en una tienda de software y que pueden utilizar porque resuelven sus necesidades en un porcentaje muy elevado. Ejemplos típicos los tenemos en los paquetes de Ofimática, Contabilidades, Aplicaciones de diseño gráfico, etc. Estas aplicaciones contienen los ficheros adecuados que permiten la instalación automatizada sin apenas la intervención del usuario o contienen un fichero de instrucciones, del tipo readme.txt, que permite efectuar la instalación a personas con ciertos conocimientos informáticos. Aplicaciones incluidas en la lista de paquetes del sistema operativo.- Algunos sistemas operativos contienen listas de software que puede ser instalado haciendo una simple selección. Tanto MaX como Windows 2008 permiten este tipo de instalaciones. En concreto MaX contiene un gestor de paquetes, Synaptic, que permite estas instalaciones y desinstalaciones. En términos generales, un paquete es una aplicación, una librería o cualquier tipo de componente que puede ser instalado en un sistema. Es muy normal que exista dependencia entre paquetes en el sentido de que para que un paquete funcione correctamente necesite que también se encuentren instalados otros. Synaptic resuelve las dependencias informando de las mismas al usuario para que decida si desea o no proseguir con la instalación. Esta característica facilita enormemente al usuario el proceso de instalación. Los paquetes a instalar pueden encontrarse en un soporte accesible al usuario (CD, DVD, ) o en algún servidor en Internet. Las diferentes distribuciones de sistemas operativos cuentan con servidores, accesibles a través de Internet, que contienen recopilaciones de paquetes actualizados y listos para que los usuarios puedan descargarlos; son los llamados repositorios. Los repositorios contienen una cantidad inmensa de paquetes de forma que prácticamente no sea necesario utilizar software de otros orígenes, que puede generar problemas de instalación y funcionamiento. La ventana que permite configurar los repositorios tiene como título Orígenes del software y está accesible desde el Gestor de paquetes Synaptic, opciones Configuración Repositorios, o bien desde el menú Aplicaciones Sistema Administración Gestor de actualizaciones Botón Configuración. Página.- 77

81 Fig 25: Repositorios En la ficha Otro software aparecen los repositorios incluidos de forma predeterminada: la unidad de CD/DVD, uno relativo a Ubuntu y dos a MaX, aunque solamente se encuentra activado el principal de MaX, donde se encuentran las versiones más recientes de esta distribución. A la derecha de los nombres de los repositorios se incluyen algunas descripciones del tipo: main (principal), código fuente (que permite bajar el código fuente de las aplicaciones y adaptarlo a las necesidades), etc. Los botones Añadir, Editar y Quitar permiten añadir, mostrar información y eliminar, respectivamente, repositorios. Entre la información que se muestra se encuentra el tipo de repositorio, que indica si contiene las aplicaciones en formato binario, ya compiladas y listas para su instalación, o en código fuente, que pueden ser modificadas y después deberán compilarse para que se puedan ejecutar. Para cada repositorio, a través de la ficha Software de Ubuntu, pueden seleccionarse diferentes categorías de paquetes: Software libre soportado por la empresa Canonical (main).- contiene software muy actualizado en cuanto a seguridad, escritorios y servidores. Software libre mantenido por la comunidad (universe).- contiene aplicaciones con licencias propietarias soportadas por la empresa Canonical. Las actualizaciones de seguridad tienen que estar sujetas a las licencias de sus creadores originales. Controladores privativos para dispositivos (restricted).- contiene más de aplicaciones no soportadas por la empresa Canonical pero si por la comunidad del Software Libre. Software restringido por copyright o cuestiones legales (multiverse).- contiene aplicaciones que, dependiendo de la legislación de cada país, pueden o no ser legales, con lo cual su distribución puede resultar problemática. Página.- 78

82 Fig 26: Categorías de los paquetes Se aconseja tener activadas las cuatro categorías para disponer de una mayor variedad de aplicaciones. El sistema mantiene un listado de las aplicaciones disponibles para instalar. Cuando se instala un nuevo repositorio el sistema pregunta si se desea actualizar dicho listado y debe responderse afirmativamente. La ficha Actualizaciones permite configurar qué paquetes para actualizar deben considerarse y con qué periodicidad debe comprobarse la existencia de paquetes actualizados. Pulsando con el botón derecho sobre uno de los paquetes mostrados en la ventana de Synaptic se muestran las posibles operaciones a realizar con el mismo e información detallada acerca del paquete (dependencias, ficheros,...). La opción Ayuda de Synaptic incorpora un manual con información muy completa de las diferentes opciones del programa. Para ver las aplicaciones libres existentes se puede: Buscar, iniciando la sesión con un usuario administrador, a través del menú Aplicaciones Añadir y quitar Buscar en Synaptic por descripción o por secciones. Buscar en la página web GenomeFiles Buscar en la página web Freshmeat Buscar en la página Alternativas libres Página.- 79

83 Otra opción que permite la instalación y eliminación de aplicaciones es la que se encuentra en el menú Aplicaciones Añadir y quitar cuando se inicia una sesión como un usuario con privilegios de administrador (madrid). Fig 27: Añadir y quitar aplicaciones La ventana dispone de un botón ayuda que contiene un pequeño manual de la aplicación. Práctica (instalación de Apache) Comprobar en la máquina virtual de MaX v.5.0 si se encuentra instalado el paquete Apache e instalarlo si aún no lo está. Los pasos a seguir pueden ser los siguientes: Iniciar la máquina virtual MaX50. Iniciar la sesión con el usuario madrid. Iniciar el gestor de paquetes Synaptic. Comprobar si se encuentra instalado el paquete apache2 e instalarlo si es necesario. Comprobar su funcionamiento una vez instalado abriendo un explorador y especificando como dirección: localhost. Si funciona correctamente aparecerá una página con el texto: It works!. Página.- 80

84 Práctica (instalación de Google Earth). Instalar el programa Google Earth en la máquina virtual de MaX. Los pasos a seguir para la instalación y funcionamiento correcto pueden ser: Instalar con Synaptic los paquetes directamente relacionados con el funcionamiento de Google Earth. Bajar de internet el programa correspondiente (por ejemplo GoogleEarthLinux.bin). Dar permisos de ejecución al fichero. Ejecutar el fichero en el directorio alojado mediante la instrucción:./googleearthlinux.bin Lanzar la ejecución del programa comprobando su funcionamiento. Fig 28: Google Earth corriendo en máquina virtual Página.- 81

85 Práctica (comprobación sobre Microsoft Office) Comprobar en Windows 2008 el precio de la aplicación Microsoft Office. Las pautas a seguir pueden ser las siguientes: Entrar en: Panel de control Programas y características. Entrar en la tarea: Obtener nuevos programas en línea en Windows Marketplace. De forma muy similar a como ocurre con los sistemas operativos, los programas de aplicación tienen sus propias exigencias para poder funcionar de forma eficiente. Estas exigencias o requisitos suelen estar relacionados con tres condicionantes fundamentales: Sistemas operativos.- la información técnica que acompaña a las aplicaciones suele especificar con qué sistemas operativos son compatibles y si es necesario que se encuentre instalado o configurado con alguna particularidad alguno de los componentes de los mismos. Así, se pueden encontrar aplicaciones que únicamente corren en determinados sistemas operativos sin posibilidad de que puedan utilizarse con otros, y aplicaciones con versiones diferentes para una variedad más amplia de sistemas operativos. Fig 29: Página de descarga de Office 2010 Página.- 82

86 Fig 30: Página de descarga de OpenOffice En las figuras anteriores pueden verse como dos de las aplicaciones más utilizadas (Microsoft Office y OpenOffice) contemplan, una el requerimiento de cierto software instalado, y la otra versiones diferentes para sistemas operativos diferentes. Hardware.- este tipo de requerimiento a veces solamente hace referencia a la necesidad de disponibilidad de espacio libre en disco puesto que los requerimientos de memoria RAM, velocidad de proceso, etc. se presuponen cubiertos por el mero hecho de cumplir con los requisitos exigidos por el sistema operativo instalado. Licencias.- para hacer uso de cualquier aplicación es necesario conocer las condiciones de la licencia adquirida. El desconocimiento de los términos, condiciones de uso y particularidades de la licencia puede acarrear problemas tales como: Imposibilidad de una instalación completa y correcta. La aplicación no funciona después de la instalación. La aplicación deja de funcionar después de cierto periodo de tiempo. Pérdida de información. Funciones desactivadas. La aplicación funciona únicamente para un cierto número de usuarios. La aplicación no funciona en red. Etc, etc, etc. La práctica totalidad de las aplicaciones está sujeta a modificaciones que permiten su adaptación al nuevo hardware, a los nuevos sistemas operativos, a las nuevas necesidades creadas, o a mejoras exigidas por los usuarios o para hacer frente a la competencia. Estas modificaciones dan lugar a las diferentes versiones del software. Ejemplos típicos son: Todos los programas y aplicaciones que hacen uso de la pantalla se han ido adaptando a los avances en cuanto a resolución y número de colores soportados. En concreto, los juegos han realizado avances espectaculares. Página.- 83

87 Dada la evolución en el incremento de las capacidades de los discos duros, los programas que manejan bases de datos se han adaptado para permitir la inclusión de gran cantidad de información como puede ser la firma o fotografía de los clientes, su dirección de correo electrónico, etc. La necesidad de realizar operaciones mercantiles a distancia y seguras ha obligado a dotar a las aplicaciones de sistemas de seguridad que permitan la realización de transacciones fiables. Cada firma de software utiliza su propio método para comercializar y/o distribuir las diferentes versiones que produce. Los contratos de licencia pueden establecer si el usuario tiene derecho a recibir de forma gratuita las revisiones o mejoras del software que se produzcan durante un periodo determinado. Así mismo, los sistemas operativos y aplicaciones pueden incluir procesos relacionados con su actualización y licencia tales como: Actualización automática.- algunos S.O. y aplicaciones comprueban de forma automática y periódica (diaria, semanal, configurable, ) si existen actualizaciones y en caso afirmativo las descargan e instalan. Un caso típico son los antivirus que se actualizan muy frecuentemente. Avisos de existencia de actualizaciones.- los S.O. y programas comprueban la existencia de actualizaciones y emiten un mensaje para que el usuario proceda según convenga. Avisos de caducidad de licencia.- algunas aplicaciones emiten algún mensaje cuando la licencia está a punto de expirar o ha finalizado para que el usuario realice la renovación si lo considera oportuno. Avisos de incumplimiento de licencia.- cuando intentan hacer uso de un S.O. o aplicación más usuarios de los permitidos o se encuentran en ejecución más copias de las permitidas. Etc. Página.- 84

88 3.6 Actualización de sistemas operativos y aplicaciones Los sistemas operativos y aplicaciones suelen contener procesos que permiten la actualización constante de los mismos. MaX dispone de un Gestor de actualizaciones (update-manager) que detecta los paquetes instalados que disponen de alguna actualización y da opción a instalarlas. Además, a través del botón Configuración admite ciertos parámetros de configuración distribuidos por diferentes fichas: Fig 31: Gestor de actualizaciones de MaX Software de Ubuntu.- permite seleccionar el tipo de software a descargar de internet y desde qué servidor. Otro software.- permite especificar los repositorios desde los que se podrán obtener actualizaciones. Actualizaciones.- permite seleccionar el tipo de actualizaciones que debe tener en cuenta, configurar las actualizaciones automáticas en cuanto a la periodicidad de comprobación y a cómo proceder y qué actualizaciones de las versiones de la distribución del S.O. mostrar. Página.- 85

89 Fig 32: Configuración del Gestor de actualizaciones Autenticación.- permite especificar los proveedores de software en los que se confía. Estadísticas.- permite enviar cierta información acerca de los paquetes que se utilizan para que pueda ser considerada por los desarrolladores del S.O. Para realizar el control de las versiones de los paquetes y aplicaciones a actualizar, los sistemas operativos registran listados del software que tienen instalado y su versión. Por otra parte, los servidores de software contienen listados de las últimas versiones de software disponibles. Los programas gestores de actualizaciones comparan ambos listados con la frecuencia configurada y proceden como corresponda si detectan diferencias. Windows Server 2008 dispone del icono Windows Update en el Panel de Control que permite el control de las actualizaciones del S.O. Su configuración y consulta se realiza mediante las opciones: Cambiar configuración. Ver historial de actualizaciones. Restaurar actualizaciones ocultas. En muchos casos, y de forma similar a como lo hacen los S.O., son las propias aplicaciones las que incluyen procedimientos para detectar la existencia de nuevas versiones de ellas mismas, la caducidad de su licencia, etc. y proceder según su propia configuración. Página.- 86

90 Fig 33: Windows Update 3.7 Ficheros de inicio del sistema operativo En el apartado se explica el proceso previo a la carga de ficheros del sistema operativo y cómo el gestor de arranque determina la partición y el sistema operativo desde el que se iniciará el sistema. Una vez que la segunda etapa del gestor de arranque (stage 2) haya determinado que núcleo (kernel) arrancar, localizará el binario del núcleo correspondiente en el directorio /boot. La llamada al núcleo tiene el siguiente formato: /boot/vmlinuz-<versión del núcleo>, donde <versión del núcleo> corresponde a la especificada en las configuraciones del gestor de arranque (ej. /boot/vmlinuz generic). El gestor de arranque cargará en memoria tanto el núcleo como una imagen inicial de RAM apropiada (initial RAM disk), conocida como initrd (ej. /boot/initrd.img generic). El initrd es usado por el kernel para cargar los controladores necesarios para arrancar el sistema. Fig 34: Contenido de /boot Página.- 87

91 Se lanza la ejecución del núcleo que configura la memoria del ordenador y los diferentes dispositivos hardware conectados al sistema (procesadores, subsistemas de entrada/salida y dispositivos de almacenamiento); finalmente buscará initrd en una ubicación predeterminada en memoria y lo descomprimirá dando como resultado la creación de un pequeño sistema de archivos temporal cuyo contenido es el fichero linuxrc. La función de linuxrc, que debe finalizar su ejecución correctamente, es cargar los módulos del núcleo que permitan montar al sistema de archivos raíz real (el del disco o dispositivo que corresponda). Dependiendo de la configuración del sistema, linuxrc es responsable de las siguientes tareas: Cargar los módulos del kernel.- según la configuración del hardware, es necesario disponer de controladores especiales para acceder a ciertos componentes de hardware presentes en el equipo (principalmente, el disco duro). Para poder acceder al sistema de archivos raíz final, el kernel necesita cargar los controladores de sistema de archivo apropiados. Gestionar RAID y LVM.- si el equipo alberga el sistema de archivos raíz bajo RAID o LVM, linuxrc configura LVM o RAID para permitir el acceso posterior al sistema de archivos raíz. Gestionar la configuración de red.- si se ha configurado el sistema para utilizar un sistema de archivos raíz montado en red (a través de NFS), linuxrc debe asegurarse de que se encuentren cargados los controladores de red y de que éstos permiten el acceso al sistema de archivos raíz. Algunos de los mensajes que el núcleo produce durante el arranque pueden ser revisados en el fichero /var/log/mesg o mediante el programa dmesg. Tan pronto como el sistema de archivos raíz real ha sido montado con éxito, linuxrc se detiene y el kernel inicia el programa init. init es el proceso creado por el núcleo que se encarga de iniciar, supervisar y detener todos los demás procesos del sistema. Existen diferentes mecanismos de arranque y parada de servicios y cómo el init los gestiona: El tradicional System V Init (sysvinit).- donde /sbin/init configuración /etc/inittab y arranca los servicios. lee el fichero de Upstart.- donde el init gestiona los servicios básandose en eventos. El init maneja los servicios definidos en la carpeta /etc/event.d. Init Upstart pretende ser el sustituto de init sysvinit. Página.- 88

92 Ejecutar una serie fijada de scripts, uno tras otro, en un determinado orden ha funcionado razonablemente bien hasta ahora. No obstante, conforme Linux ha ido mejorando y adaptándose a los sistemas modernos (posiblemente el manejo de dispositivos desmontables es mejor en Linux que en Windows) este enfoque ha empezado a plantear problemas. La antigua solución sólo funciona si garantizamos que en determinados instantes de la secuencia de arranque están disponibles ciertos recursos, por ello para que los scripts de init funcionen se deben ejecutar en puntos concretos de dicha secuencia. Normalmente se ordenan teniendo en cuenta: Los discos duros deben haberse encontrado, iniciado y haber detectado sus particiones antes de que intentemos montarlas desde /etc/fstab. Los dispositivos de red deben haberse detectado e iniciado antes de que activemos los servicios de red. Los ordenadores actuales se han vuelto mucho más flexibles: Los dispositivos pueden conectarse y desconectarse en cualquier momento, como por ejemplo los dispositivos con conexión a USB. Los buses de almacenamiento aceptan un número variable de dispositivos, por lo que hay que explorar el bus. Esta operación no debe ser bloqueante. Para reducir el consumo eléctrico, las unidades de disco duro pueden dejar de girar hasta que se explore el bus, por lo que tardarán un tiempo mayor en aparecer. Los dispositivos de red pueden conectarse y desconectarse en cualquier instante. Puede que el firmware requiera ser escrito después de detectar el dispositivo, pero antes de que sea utilizable por el sistema. Montar una partición de /etc/fstab puede requerir que estén disponibles programas del directorio /usr que no pueden utilizarse hasta que se configure la red si /usr está en un sistema de ficheros de red. Hasta ahora se ha podido modificar el sistema para que gran parte de esto sea posible, pero el resultado es un conglomerado de parches en los scripts de inicio. Se necesitaba un sistema init que pudiera reordenar dinámicamente la secuencia de inicio basándose en la configuración y el hardware disponible en cada situación. Este nuevo init es Upstart, que esta siendo desarrollado dentro de Ubuntu por Scout James Remnant, pero que esta pensado para cualquier distribución. Página.- 89

93 Upstart es un nuevo init basado en eventos, donde los servicios son arrancados o parados porque ocurre un evento para el cual están preparados o escuchando. Los eventos generados por el sistema pueden iniciar una tarea y parar las que ya se están ejecutando. Los eventos pueden ser, entre otros: El sistema se ha iniciado. El sistema de ficheros raíz ya permite acceso de escritura. Un dispositivo de bloque se ha añadido al sistema. Se ha montado un nuevo sistema de ficheros. Otra tarea se ha iniciado o ha terminado. Un fichero ha sido modificado. Hay ficheros en una cola del sistema. Se ha detectado un dispositivo de red. El enrutamiento predeterminado ha sido añadido o eliminado. De hecho, cumpliendo ciertas restricciones, cualquier proceso del sistema puede enviar eventos al proceso init por lo que no hay ningún límite. Cada tarea puede permanecer en uno u otro estado (espera, ejecución, ) dependiendo de los eventos que se produzcan. Por ejemplo, la impresión de un documento puede estar en espera hasta que se conecta una impresora al puerto USB. Los eventos generados por el demonio init, o enviados por otros procesos, pueden provocar que las tareas se inicien o detengan. También pueden recibirse peticiones manuales para iniciar o parar una tarea. La comunicación entre el proceso init y otros procesos es bidireccional, por lo que se puede solicitar el estado en el que se encuentran las otras tareas e incluso pueden recibirse los cambios de estado que se produzcan. Los scripts para upstart trabajan de forma similar a los tradicionales ficheros rc, exceptuando que ahora operan de manera autónoma basados en eventos asíncronos. Upstart mantiene, por tanto, una capa de compatibilidad con el sistema sysvinit Niveles de ejecución En Linux, un demonio (daemon), que responde al acrónimo de Disk And Execution Monitor, es un tipo especial de proceso informático que se ejecuta en segundo plano para dar algún tipo de servicio. Ejemplos de demonio, son los servidores de correo, servidores de impresora, sistemas de conexión con redes, etc. Este tipo de programas se ejecutan continuamente. Los sistemas GNU/Linux suelen arrancar una serie de daemons en su secuencia de inicio como cualquier otro proceso normal. Las tareas que puede desempeñar un demonio pueden ser muy variadas: responder a peticiones de red, control de actividad de hardware y software, configurar hardware, ejecutar tareas periódicas o preprogramadas (como el demonio cron), etc. Página.- 90

94 Los demonios en ejecución en un determinado momento marcan los servicios que el sistema operativo está ofreciendo y/o recibiendo en ese momento. El hecho de que puedan coexistir bastantes procesos diferentes provoca que su organización deba plantearse de forma adecuada. Un nivel de ejecución o runlevel consiste en la ejecución de unos determinados procesos o demonios que proporcionan unos servicios concretos. En la instalación de un servidor es habitual diseñar una configuración para que en determinados momentos se puedan ofrecer determinados servicios y en otros no. Para permitir este tipo de funcionamiento, el sistema operativo nos proporciona diferentes niveles de ejecución que podremos adaptar a nuestras necesidades. Si bien se puede configurar el número de niveles de ejecución que se quiera y la funcionalidad de cada uno de ellos, generalmente los sistemas Linux nos proporcionan 7 niveles diferentes (numerados del 0 al 6) para permitir que el ordenador trabaje con diferentes configuraciones de arranque (diferentes servicios). La siguiente tabla muestra los diferentes niveles de ejecución y su funcionalidad. Niveles de ejecución Funcionalidad 0 Parada del sistema (system halt). S Modo monousuario desde el prompt del arranque. 1 Modo monousuario. 2 Modo multiusuario local, sin red remota. 3 Modo multiusuario con red. 4 No usado. 5 Modo multiusuario con red y con entorno gráfico. 6 Reiniciar el sistema. En MaX (también en Debian y en Ubuntu) los niveles de ejecución del 2 al 5 son equivalentes al nivel 5. Los diferentes niveles pueden ser configurados según las necesidades de cada instalación. Por defecto, el sistema se incia en el nivel de ejecución2, lo que se puede comprobar ejecutando el comando runlevel, que mostrará 2 números, el primero muestra el nivel previo en el que se encontraba, que si no se ha cambiado de nivel mostrará una N, y el segundo corresponde al nivel actual. Se puede cambiar a otro nivel de ejecución introduciendo sólo init (o telinit) con el número correspondiente. Naturalmente, el cambio a otro nivel sólo puede ser gestionado por el administrador de sistema. Por ejemplo, con el comando init 1 o shutdown now se logra entrar en el modo monousuario, el cual se ocupa del mantenimiento y administración del sistema. Después de que el administrador del sistema haya acabado su trabajo, se puede utilizar init 2 para arrancar el sistema en el nivel de ejecución normal. Con init 0 o shutdown -h now se puede parar el sistema y con init 6 o shutdown -r now o reboot reiniciarlo. Página.- 91

95 El modo como se organizan los procesos en cada nivel de ejecución es muy simple: cada nivel de ejecución tiene un directorio situado en /etc/rcn.d, donde N es el número del nivel de ejecución. En los directorios /etc/rcn.d realmente se encuentran enlaces simbólicos a los ficheros shell scripts, con el mismo nombre descriptivo, de los procesos (demonios) que están en el directorio /etc/init.d. Con el mismo nombre del enlace se identifica la acción que se va a realizar. Algunas características de los ficheros que se encuentran dentro de /etc/rcn.d son: Son enlaces simbólicos cuyo nombre empieza por K o S, seguido de un número de dos digitos, entre 00 y 99, y un nombre descriptivo. Se ejecutan en orden alfabético, primero los que empiezan por K y después los que empiezan por S. El orden es importante, ya que algunos daemons necesitan que otros estén en ejecución entes de ser iniciados. Los ficheros K (de kill) sirven para detener demonios o matar procesos. Los ficheros S (de start) sirven para lanzar demonios o ejecutar funciones de inicialización. Si el nombre no empieza por K o S, el sistema lo ignora. De esta manera, para cada nivel de ejecución, se especifica qué demonios tienen que estar activos y qué demonios no tienen que estar activos. Cada script gestiona una tarea o servicio, que se inicia cuando el script se ejecuta con el argumento start y se detiene cuando se usa el argumento stop. De esta forma en cada runlevel pueden detenerse los servicios que no se necesiten y activarse aquellos que interesen. Este sistema también facilita el arranque y parada de servicios, ejecutando estos scripts manualmente con el argumento apropiado. En general, no hay que preocuparse por la configuración del arranque, ya que el sistema de instalación se ocupa automáticamente de actualizar la configuración en función de los paquetes instalados El proceso init en MaX Una vez que el núcleo del sistema (kernel) se ha cargado en memoria, se ejecuta el programa init, que se convierte en el proceso número 1 y se encarga de ejecutar el resto de programas que hacen que el sistema funcione. Hasta hace poco tiempo la operación de init se configuraba en el fichero /etc/inittab. Editando este fichero se podía seguir paso a paso el proceso de arranque y parada del sistema. Página.- 92

96 Actualmente, éste fichero no existe aunque se mantiene un nivel de compatibilidad con el mismo. init se limita a ejecutar una serie de scripts que activan ordenadamente los diferentes servicios que hacen funcionar el sistema. En /etc/event.d se encuentran los ficheros de configuración de init upstart que, se puede decir, funcionan como si del fichero /etc/inittab se tratase. Este directorio contiene los ficheros que se muestran en la figura. Fig 35: Contenido de /etc/event.d Ficheros ttyn.- que llaman a la creación de las terminales con getty. Ficheros rcn.- que ajustan el nivel de ejecución llamando a /etc/init.d/rc para ejecutar los scripts del nivel de arranque correspondiente. Otros ficheros como control-alt-delete que envía mediante dicha combinación de teclas al reinicio ordenado del equipo, o rc-default que define el nivel de inicio por defecto. En primer lugar, init ordena la ejecución del script /etc/event.d/rc-default que determina fundamentalmente dos procesos: La ejecución de todos los scripts situados en /etc/rcs.d, independientemente del nivel por defecto con el que se inicie el sistema. La misión de estos scripts es realizar las tareas que siempre son necesarias: inicializar el teclado, los puertos serie, etc. Más concretamente, rc-default ordena la ejecución del script /etc/event.d/rcs, que a su vez contiene la orden exec /etc/init.d/rcs, es decir, ejecuta el script rcs que se encuentra en el directorio /etc/init.d. El script /etc/init.d/rcs realizará una llamada mediante el comando rc S para que se ejecuten en orden alfabético los scripts que se encuentren bajo el directorio /etc/rcs.d/. Las tareas realizas por estos scripts son las básicas, comunes a en todos los niveles, para arrancar el sistema. Como se puede comprobar, todos los scripts de /etc/rcs.d comienzan por S, tendrán start como argumento y siguen la nomenclatura anteriormente comentada. Cada script tiene su función particular y en realidad, son enlaces simbólicos a los verdaderos scripts situados en el directorio /etc/init.d. De esta forma es más fácil añadir, eliminar y ordenar los componentes. Página.- 93

97 La ejecución de los scripts correspondientes al nivel de ejecución por defecto, con el que se debe iniciar el sistema. En MaX el nivel de inicio por defecto es el 2. Se puede comprobar que el contenido de los directorios /etc/rc2.d, /etc/rc3.d, /etc/rc4.d y /etc/rc5.d es el mismo lo que implica que los niveles de ejecución 2, 3, 4 y 5 lanzan los mismos servicios. Una vez ejecutados los scripts de /etc/rcs.d, el script rc-default ordena la ejecución del nivel con el que se debe iniciar por defecto el sistema mediante el comando telinit 2. Se ejecutarán, así, los scripts correspondientes al nivel de ejecución 2, que son los que se encuentran en /etc/rc2.d Gestión de servicios con sysv-rc-conf La aplicación sysv-rc-conf, no instalada por defecto, permite conocer los servicios activos, mostrarlos, detenerlos, etc. Puede instalarse desde Synaptic. Para ejecutarla puede utilizarse sudo sysv-rc-conf. La interfaz de la aplicación es sencilla, se ejecuta por consola y está bien diseñada, puesto que muestra en orden alfabético, en la primera columna, todos los servicios de que dispone el sistema, y, en las siguientes columnas, el estatus del servicio dependiendo del nivel de ejecución. Lo útil de la aplicación es que además de aparecer un listado de todo lo que existe, permite la gestión en caliente de todos ellos. Fig 36: sysv-rc-conf El manejo es sencillo, nos moveremos a través de los servicios usando las teclas de direccionamiento y activamos y desactivamos simplemente presionando la tecla espaciadora o bien pulsando con el ratón sobre el runlevel de la aplicación. De esta manera se puede configurar qué servicios se han de ejecutar en cada runlevel. Página.- 94

98 3.8 Registro del sistema Algunos sistemas operativos disponen de un registro del sistema donde se centraliza la configuración de los diferentes servicios y/o aplicaciones, como es el caso de los sistemas Windows. En Linux estas configuraciones no están centralizadas, cada servicio tiene su propio fichero de configuración. La centralización de configuraciones tiene la ventaja de que con un único programa puede realizarse el mantenimiento del registro, pero el inconveniente de que su deterioro puede afectar de forma sustancial a la totalidad del sistema. 3.9 Actualización y mantenimiento de controladores de dispositivos Los fabricantes ponen a disposición del usuario los equipos y dispositivos junto con los controladores o drivers específicos. Generalmente, estos controladores no se actualizan, salvo que por error presenten algún problema, en cuyo caso deberán seguirse las indicaciones del fabricante. Por otra parte, la práctica totalidad de fabricantes dispone de una web con soporte técnico donde el cliente puede realizar las consultas oportunas o descargar los controladores que correspondan al S.O. instalado. Casos más generalizados son la instalación de un nuevo dispositivo (cámara de fotos, cámara de vídeo, escaner, etc.) o la sustitución de uno por otro más moderno (impresora, pantalla, etc.). En estos casos el S.O. suele detectar el cambio y solicita la ubicación del controlador o directamente lo descarga de internet. Si el S.O. no detecta el cambio deberán seguirse las indicaciones del fabricante. Página.- 95

99 3.10 Actividades 1. Comprobar cuales de las consideraciones previas del apartado 3.2 pueden aplicarse a los sistemas operativos MaX y Windows Server Buscar en internet los requerimientos hardware de las diferentes versiones de Windows Server Comprobar con un editor hexadecimal si el contenido de la tabla de particiones del MBR del disco duro del ordenador del aula se ajusta a la teoría. 4. Modificar el texto que aparece en las diferentes opciones que muestra el gestor de arranque GRUB. 5. Desde la shell de grub cambiar la contraseña del usuario madrid. A continuación deshacer el cambio. 6. Proteger con la contraseña quegueno una de las opciones de arranque de menu.lst. Posteriormente utilizar la misma clave pero encriptada. 7. Utilizando startupmanager modificar el tiempo de espera del menú y los colores del fondo y del menú. 8. Comprobar la información existente en https://help.ubuntu.com/community/grub2. Buscar cómo re-instalar grub después de una instalación de Windows. 9. En el DVD de Windows 2008 (fichero readme.rtf) y en internet hay información acerca de como realizar una instalación desatendida. Buscarla, analizarla y realizar una instalación desatendida. 10. Realizar una instalación de MaX en el pen drive. 11. Realizar el clonado de un disco duro usando el programa Backharddi de MaX. 12. Buscar en las páginas web de Microsoft una guía o laboratorio de configuración del servidor de DHCP. 13. Buscar en internet información acerca de como instalar el programa Ares en MaX, e instalarlo. 14. Instalar alguno de los programas alternativos a Microsoft Messenger: emesene, amsn, lmme, Realizar con Synaptic la búsqueda de los diferentes editores hexadecimales disponibles. Instalar y utilizar alguno de ellos. 16. Comprobar si se encuentra instalado el paquete samba y mostrar su descripción. 17. Cambiar algún aspecto en la configuración de los programas gestores de actualizaciones de MaX 5.0 y Windows Server. 18. Actualizar alguno de los paquetes incluidos en MaX 5.0 y en Windows Server. 19. Comprobar la existencia de los diferentes ficheros de inicio del sistema y analizar su contenido. 20. Instalar dos dispositivos como pueden ser: impresora, escaner, cámara de fotos, cámara de video, y comprobar el correcto funcionamiento. Página.- 96

100 4 ADMINISTRACIÓN DE SOFTWARE DE BASE I. USUARIOS LOCALES 4.1 Aspectos didácticos Objetivos: Saber la función de las cuentas de usuario. Describir los tipos de usuarios en MaX y en Windows Server Describir las diferencias entre las cuentas locales y globales. Diseñar una estrategia para la creación de cuentas. Crear nuevas cuentas de usuario, modificarlas y eliminarlas. Aplicar procedimientos para la creación de gran cantidad de cuentas de usuario. Conocer los aspectos configurables del entorno o perfil de un usuario. Saber gestionar usuarios y carpetas de forma centralizada usando NFS y SMB. Documentación. Además de la información del tema, pueden consultarse las Ayudas de MaX, Ubuntu y Windows. La web de Samba contiene información muy completa del servicio. Resumen. En este tema se tratan los elementos más importantes relativos a la creación y mantenimiento de cuentas de usuario: sus características, su diseño considerando aspectos relativos al nombre, contraseña, restricciones relativas al horario de conexión, número de logins, uso de espacio de disco, etc. También se detalla la creación de cuentas en el sistema operativo Windows 2008 Server y los usuarios predeterminados de ambos sistemas. También se aborda la seguridad de las cuentas, la seguridad de las contraseñas y los perfiles de los usuarios. Al final del tema se detalla la gestión de recursos y usuarios de forma centralizada mediante los servicios NFS, SMB y NIS. Temporización: 10 horas. Página.- 97

101 4.2 Administración de usuarios locales La característica fundamental de los sistemas operativos multiusuario es que distintos usuarios pueden trabajar de forma independiente en el mismo sistema. Cada usuario tiene una cuenta de usuario que consiste en un nombre de usuario y una contraseña personal para entrar al sistema. Además, de forma generalizada para la práctica totalidad de los sistemas operativos, cada usuario puede tener asignado: Un directorio personal de trabajo para almacenar sus archivos. Una configuración de su entorno de trabajo o perfil que incluye características como: Configuración del escritorio. Impresoras disponibles. Conexiones a recursos compartidos. Etc. Derechos o privilegios que lo autorizan a realizar ciertas operaciones en un equipo como pueden ser: realizar copias de seguridad, apagar el equipo, administrar cuentas de usuario y grupo, etc. Permisos (reglas asociadas a un elemento u objeto, generalmente ficheros o carpetas) que regulan si tienen acceso a un objeto y de qué manera. Cada sistema operativo dispone de una serie de derechos que puede asignar o no a los usuarios. Los permisos son propiedades de los objetos que pueden empezar a asignarse cuando se crea el objeto. Un ejemplo de derecho lo tenemos en la vida cotidiana si imaginamos una familia que tiene establecida una norma acerca de la hora a la que tienen que llegar los hijos a casa dependiendo de su edad. Un ejemplo de permiso sería si la familia compra un ciclomotor y asigna quién puede conducirlo y quien puede ir de acompañante. Un aspecto fundamental en la administración de cuentas de usuario y de grupo, que simplifica enormemente la organización y el trabajo del administrador, es la posibilidad de centralizar las cuentas en determinados equipos. Un ejemplo para constatar la diferencia puede ser el caso de un aula donde el profesor crea en cada ordenador una o varias cuentas para los alumnos de un determinado grupo y el caso donde el profesor crea un usuario para cada alumno en el ordenador del profesor y los alumnos inician la sesión desde cualquier equipo del aula haciendo uso de las cuentas creadas en el ordenador del profesor. En el primer caso estamos hablando de cuentas de usuario locales, que solamente pueden utilizarse trabajando en el equipo donde están creadas y en el segundo de cuentas globales, que se crean en un equipo pero pueden ser utilizadas desde otros. Página.- 98

102 4.2.1 Diseño de cuentas de usuario Es muy importante que el administrador de cuentas siga unas directrices en cuanto a la administración de cuentas y tenga organizada la información de las personas que van a disponer de una cuenta de usuario. Estas directrices deben contemplar: Una convención de nombres.- para asegurar que los nombres de las cuentas de usuario serán únicos y seguirán una lógica establecida que facilite su memorización o búsqueda posterior. Además, se deberá tener en cuenta: La longitud mínima y máxima de los nombres de cuenta, así como los caracteres especiales permitidos y que pueden utilizarse para ayudar a identificar a los usuarios. La posibilidad de que existan nombres personas duplicados debe estar contemplado para asignarles nombres de cuentas de usuario diferentes. El nombre de la cuenta debe aportar la mayor cantidad de información posible. Así podrá incluir caracteres que hagan referencia a su puesto de trabajo, a su temporalidad, etc. Por ejemplo, para los alumnos de 1º A de bachillerato se pueden crear los usuarios de la forma: us_bach1a_nº de alumno, o bien, bach1a_apellido_1ª letra del nombre,... Los requisitos de las contraseñas.- que permitan proteger convenientemente el equipo. Algunas recomendaciones son: Asignar siempre una contraseña al usuario administrador, e incluso, cambiar el nombre de la cuenta del usuario administrador. Determinar si los usuarios pueden o no cambiar su contraseña. Por lo general son los propios usuarios los encargados de administrar su contraseña pero se dan muchos casos en los que esta práctica no es conveniente. Determinar si una cuenta de usuario debe caducar o no, dependiendo de la temporalidad del usuario. Informar a los usuarios sobre el correcto uso de las contraseñas: evitar asociaciones obvias que contemplen el nombre del usuario, de familiares o fechas significativas, utilizar un nº mínimo de caracteres alto, intercalar minúsculas, mayúsculas, números y caracteres especiales, etc. El horario de uso del ordenador y de conexión a la red.- como método de protección y seguridad de los datos, estableciendo el horario de inicio de sesión y de uso cuando los usuarios requieran el acceso dentro de unos períodos de tiempo específicos, por ejemplo, cuando existan turnos diferentes de usuarios. Página.- 99

103 Ubicación de las carpetas de trabajo.- que son las carpetas privadas de los usuarios donde podrán almacenar sus archivos. Se utilizan como carpetas predeterminadas para gran número de operaciones del S.O. y de los diferentes programas. Pueden estar almacenadas en el equipo local o en un servidor de la red y para determinar su ubicación deben considerarse: Realización de copias de seguridad y restauración.- que puede simplificarse si las carpetas personales se encuentran centralizadas en un servidor. Espacio que ocupan.- que puede determinar la posibilidad de utilizar o no un servidor. También debe considerarse si el S.O. tiene posibilidad de limitar el espacio máximo que puede ocupar una carpeta. Uso de dispositivos removibles.- que permita a los propios usuarios responsabilizarse de sus datos. Rendimiento de la red.- dado que, dependiendo del tipo de ficheros utilizados y el lugar donde se ubiquen, puede incrementarse considerablemente el tráfico en la misma MaX v.5.0 Para realizar la administración de usuarios, MaX dispone del programa users-admin, accesible desde el entorno gráfico a través del menú Aplicaciones Sistema - Administración Usuarios y grupos, o desde un terminal a través del comando users-admin. En ambos casos se necesitan privilegios de administrador y saber la contraseña del administrador para poder ejecutar el programa. Entonces, desde un terminal se puede entrar con cualquier usuario y ejecutar: su root Esta instrucción pedirá la contraseña de root. Si no funciona correctamente puede ser porque al usuario root aún no se le haya asignado ninguna contraseña. users-admin o entrar con el usuario madrid y ejecutar: sudo users-admin. Si se intenta cargar users-admin sin los privilegios adecuados el sistema emitirá un mensaje de error similar al de la figura. Dependiendo de la forma de invocar al programa, puede iniciarse bloqueado y habrá que pulsar el botón Desbloquear e introducir la contraseña del usuario madrid, o de otro al que se le haya otorgado privilegios de administrador, para desbloquearlo. A continuación se mostrará cada usuario en una fila, con su nombre real, el nombre de la cuenta (logín) y su directorio de trabajo. Página.- 100

104 Fig 37: Programa users-admin Fig 38: Error al cargar users-admin El gestor de usuarios y grupos contiene botones que permiten añadir, modificar y borrar usuarios o grupos. Los datos que se pueden introducir al añadir usuarios o modificar posteriormente a través del botón Propiedades están repartidos en varias fichas: Cuenta.- donde se especifican los datos: Usuario.- es el nombre de la cuenta que se solicita para hacer logín. Nombre real.- permite especificar el nombre real del usuario. Perfil.- permite asignar unas autorizaciones según se elija uno de los perfiles predeterminados: Administrador (podrá realizar tareas de administración del sistema), Usuario del escritorio (podrá realizar las tareas típicas de cualquier usuario) y Usuario sin privilegios (tiene muy restringidas las operaciones que puede realizar). Contraseña.- se puede establecer una contraseña manualmente, que se introducirá por duplicado, o bien hacer que el sistema genere una contraseña de forma aleatoria para el usuario. Contacto.- para establecer la ubicación en la oficina, el teléfono del trabajo y el del domicilio. Página.- 101

105 Privilegios del usuario.- que permite establecer los derechos de los usuarios siguientes: Acceder automáticamente a dispositivos de almacenamiento externo. Administrar el sistema. Capturar vídeo de TV o de webcams y usar aceleración 3D. Compartir archivos con la red local. Conectar a Internet con un modem. Conectarse a redes ethernet e inalámbricas. Configurar impresoras. Enviar y recibir faxes. Monitorizar los registros del sistema. Montar sistemas de archivo en espacio de usuario (FUSE). Usar dispositivos de sonido. Usar módems. Usar unidades de CD-ROM. Usar unidades de cinta. Usar VirtualBox. Además, a través del menú Aplicaciones Sistema Administración Autorizaciones se pueden establecer las diversas autorizaciones disponibles en el sistema para los usuarios. Avanzado.- para establecer los parámetros: Directorio personal. Intérprete de comandos. Grupo principal al que pertenece el usuario. ID del usuario o número identificativo del mismo. Límites a los usuarios Existe la posibilidad de limitar recursos a los usuarios o grupos, por ejemplo, el máximo numero de logins que puede realizar simultáneamente un usuario, el máximo tiempo de CPU, el máximo numero de procesos etc. Estos límites se controlan en MaX a través del fichero /etc/security/limits.conf. Cada línea de este fichero describe un límite para un usuario en la forma: <dominio> <tipo> <elemento> Página <valor>

106 donde: <dominio> puede ser: Un nombre de usuario. Un nombre de grupo, con la El carácter comodín *, como entrada por defecto. El carácter comodín %, puede también utilizarse como sintaxis %grupo, para el límite del elemento maxlogin (nº máximo de logins simultáneos). NOTA: los límites asignados a los grupos o con caracteres comodines no se aplican al usuario root. Para aplicar un límite al usuario root, el dominio debe ser el nombre de usuario literal root. <tipo> puede ser solamente dos valores: soft para aplicar un límite blando (de aviso). hard para aplicar un límite duro (infranqueable). <elemento> puede ser uno de los siguientes valores: core.- limita la ocupación de los ficheros core. Se expresa en Kb. Los ficheros core contienen una imagen de memoria de un programa que ha dado un fallo. Son utilizados por los programadores para analizar y solucionar fallos. data.- máxima ocupación de datos (Kb). fsize.- máximo tamaño de fichero (Kb). memlock.- máximo espacio de direcciones de bloqueo de memoria (locked-inmemory) (Kb). nofile.- número máximo de ficheros abiertos. rss.- (resident set size) máxima ocupación de RAM por la parte residente de un proceso (Kb). stack.- máxima ocupación de la pila o stack (Kb). cpu.- máximo tiempo de CPU (min.). nproc.- máximo número de procesos. as.- límite de espacio de direccionamiento (Kb). maxlogins.- máximo numero de logins para el usuario. maxsyslogins.- máximo número de logins en el sistema. priority.- prioridad de ejecución de los procesos para el usuario. locks.- máximo número de bloqueos de fichero que puede mantener el usuario. sigpending.- máximo número de señales pendientes. msgqueue.- máxima memoria utilizada por colas de mensajes POSIX (bytes). nice.- máxima prioridad de procesos. Rango de valores permitidos: [-20, 19]. rtprio.- máxima prioridad de tiempo real. chroot.- cambia el directorio raiz al especificado. Página.- 103

107 <valor> es la cantidad asignada al elemento en cuestión. Un ejemplo de fichero puede ser: # #<dominio> # * @profesores ftp <tipo> <elemento> <valor> soft hard hard hard soft hard hard - core core rss nproc nproc nproc nproc chroot maxlogins /ftp 4 #Fin del fichero También es posible limitar los tiempos de acceso a los usuarios mediante el servicio timeoutd. Este servicio no se instala por defecto y una vez instalado dispone del fichero de configuración /etc/timeouts, cuyas líneas, aparte de las que se encuentran en blanco o que corresponden a comentarios (empiezan por #), deben tener una de las dos siguientes sintaxis: periodo:tty's:usuarios:grupos:max_inactividad:max_sesión:max_dia:alerta periodo:tty's:usuarios:grupos:estado_login En la página de manual timeouts(8) se explica el significado de cada uno de los campos de estas líneas. Algunos ejemplos son: 1. Para que usprueba01 pueda estar 20 minutos inactivo, 240 minutos por sesión, 480 minutos por día en ttys3 y recibir una alerta cuando le queden 10 minutos: Al:ttyS3:usprueba01:*:20:240:480:10 2. Para que todos los usuarios puedan utilizar 120 minutos por sesión y 240 min/día: Al:ttyS3:*:*:20:120:240:5 3. Para que usprueba02 tenga acceso ilimitado: Al:*:usprueba02:*:0:0:0:0 Página.- 104

108 4. Para que usprueba01 no pueda hacer login durante el fin de semana: SaSu:*:usprueba01:*:NOLOGIN 5. Para que sólo el ususario root pueda acceder desde las consolas tty1 a tty6: Al:tty1,tty2,tty3,tty4,tty5,tty6:root:*:LOGIN Al:tty1,tty2,tty3,tty4,tty5,tty6:*:*:NOLOGIN 6. Para que solo el usuario root pueda acceder entre las 15:00 y las 16:00h de cada día: Al :*:root:*:LOGIN Al :*:*:*:NOLOGIN Una vez que se ha preparado el fichero /etc/timeouts es necesario reiniciar el servidor timeoutd: /etc/init.d/timeoutd restart Stopped /usr/sbin/timeoutd (pid 2412). Starting /usr/sbin/timeoutd... Es importante destacar que este proceso no actúa durante el proceso de login lo que da lugar a que, aunque un usuario tenga prohibido el acceso a una máquina en un momento determinado, inicialmente puede entrar y sólo, una vez que se ejecute el proceso timeoutd, será expulsado del sistema. Para conseguir que durante el proceso de login se revisen las condiciones de timeouts se debe incluir las siguientes lineas en el fichero /etc/profile: # Comprueba restricciones de timeoutd (ver timeoutd, timeouts(5)) /usr/sbin/timeoutd whoami basename \ tty\ exit Con esta línea incluso aunque el servicio timeoutd esté parado si en el fichero /etc/timeouts se prohibe el acceso a un usuario éste no podrá entrar en el sistema. Limitar con cuotas el espacio del disco El sistema de quotas provee un mecanismo de control y uso del espacio de disco duro disponible en un sistema. Se pueden establecer limites en la cantidad de espacio y el número de ficheros de que puede disponer un usuario o grupo. En las quotas hay cuatro números para cada límite: la cantidad actual ocupada; el límite soft (quota propiamente dicha); el límite hard (espacio sobre quota), y el tiempo que resta antes de eliminar el exceso entre soft y hard. Mientras que el límite soft puede ser superado temporalmente, el límite hard nunca puede rebasarse. Página.- 105

109 Para implementar el sistema de quotas es necesario instalar algún paquete de control de dicho sistema. En MaX hay un paquete denominado quota que instala todo lo necesario para implementar todo el sistema. Una vez instalado tenemos que realizar una serie de pasos para activar el mecanismo de quotas. Estos pasos son: Configuración del kernel.- antes de instalar el sistema de quotas debe disponerse de un kernel con la opción de quota system habilitada. Esto se consigue en el proceso de compilación de un nuevo kernel respondiendo yes a la pregunta de Disk QUOTA support. Los kernels precompilados que se distribuyen con Debian (paquetes kernelimage) ya tienen esta opción habilitada. Elección del sistema de ficheros sobre el que se aplican las quotas.- una vez dispuesto el kernel, hay que seleccionar que sistema de ficheros necesitan tener aplicadas las quotas. Lo normal es que solo el sistema donde están las cuentas de usuarios tengan quotas, aunque es recomendable que tenga quotas todo sistema de ficheros donde los usuarios puedan escribir. Para habilitar las quotas en un sistema de ficheros hay que editar el fichero /etc/fstab e incluir las opciones usrquota y grpquota: # /etc/fstab: static file system information. # file system mount point type options dump pas /dev/hda6 / ext4 defaults,errors=remount-ro,usrquota,grpquota 0 Habilitar las quotas.- para instalar los ficheros de quotas se debe ejecutar el comando: quotacheck -avug Scanning /dev/hda5 [/] done Checked 4943 directories and files Using quotafile /quota.user Updating in-core user quotas Using quotafile /quota.group Updating in-core group quotas La primera vez que se ejecuta este comando sirve para crear los ficheros de quotas: quota.user y quota.group. Especificar quotas para usuarios o grupos.- para editar la quota de un usuario o grupo se usa el programa edquota con la opción -u para editar las quotas de usuarios y con la opcion -g para editar las opciones de grupo. Sólo hay que editar los números que están detrás de soft y hard. El período de gracia que hay entre el límite soft y el hard puede cambiarse con: edquota -t Página.- 106

110 La mayoría de las veces los usuarios tienen la misma quota. Una forma rápida de editar la quota de todos los usuarios es colocarse en el directorio donde tienen sus directorios raiz cada usuario. Editar la quota de uno de estos usuarios con los valores apropiados y, posteriormente, ejecutar: edquota -p usuarioprototipo * Para verificar las quotas que tiene un usuario se utiliza el comando quota -v. El superusuario puede ver las quotas de todos los usuarios con el comando: repquota / Desabilitar quotas para usuarios o grupos.- para deshabilitar las quotas de un usuario o grupo solo hay que editar las quotas y poner los limites a 0. Así un usuario puede usar tantos bloques e inodos como quiera. La administración de quotas puede realizarse con Webmin teniendo en cuenta que en primer lugar se instala el paquete quota, a continuación se activan las cuotas a través de la opción System - Disk and Network filesystem, se reinicia el equipo y finalmente se asignan cuotas a los usuarios a través de System Disk quotas, botones Edit User/Group Quotas Windows Server 2008 Hay varias formas de realizar la administración de cuentas de usuario locales. Las dos más utilizadas son: una, a través del icono Cuentas de usuario del Panel de control (Inicio Panel de control Cuentas de usuario) y la otra, a través de las Herramientas administrativas (Inicio Herramientas administrativas Administración de equipos Usuarios y grupos locales carpeta Usuarios). Fig 39: Administración de cuentas a través del panel de control Página.- 107

111 Fig 40: Crear nueva cuenta Fig 41: Administración de cuentas con las Herramientas administrativas Centrándonos en la herramienta administrativa, el botón Acción y la opción Acciones adicionales muestran operaciones diferentes dependiendo de si hay, o no, seleccionada alguna cuenta de usuario. Igualmente ocurre al pulsar con el botón derecho en la columna central donde se visualizan las cuentas de los usuarios; se mostrarán unas operaciones u otras dependiendo de si el click se hace sobre una cuenta de usuario o en un espacio libre. Página.- 108

112 lgunas de las posibles acciones u operaciones son: Usuario nuevo (aparece si no hay ninguno seleccionado). Fig 42: Usuario nuevo Los datos solicitados son: El nombre de la cuenta. El nombre completo del usuario. Una descripción del usuario. La contraseña, que se introducirá por duplicado para evitar errores. Si el usuario debe cambiar la contraseña en el siguiente inicio de sesión. Es una práctica habitual crear las cuentas sin clave, o con una clave determinada, y que los usuarios establezcan una propia al inicio de la siguiente sesión. Si el usuario puede cambiar la contraseña. Suele prohibirse cuando son varias las personas que utilizan la misma cuenta. Si la contraseña expira. En sistemas donde se requiere un alto nivel de seguridad o confidencialidad de la información de los usuarios, se establece un periodo de validez de las contraseñas y, una vez expirado, el usuario tiene que cambiar la contraseña. Esto se debe a que con el tiempo los usuarios terminan conociendo las claves de los otros por ser muy común que surjan ocasiones donde un usuario le dice su clave a otro para que pueda realizar cierta operación. Si se habilita o deshabilita la cuenta. Una cuenta se puede deshabilitar manualmente mediante este cuadro de verificación para, por ejemplo, obligar al usuario a que se ponga en contacto con el administrador o automáticamente, si por ejemplo, el usuario intenta entrar más de n veces introduciendo una contraseña incorrecta. Página.- 109

113 El cuadro de verificación también permite habilitar cuentas deshabilitadas. Establecer contraseña. Permite cambiar la contraseña. Eliminar. Cambiar nombre. Propiedades.- que permite cambiar todas las características de la cuenta de usuario. Fig 43: Propiedades de las cuentas Todas las propiedades se encuentran distribuidas en las fichas: General.- contiene prácticamente la misma información que la ventana de creación de cuentas. Miembro de.- para establecer los grupos a los que pertenece el usuario. Perfil.- con información sobre el perfil y la carpeta de trabajo del usuario. Entorno.- para configurar el entorno de inicio de Servicios de Terminal Server. Sesiones.- para configurar el tiempo de espera y la reconexión de Servicios de Terminal Server. Control remoto.- permite configurar el control remoto a través de Servicios de Terminal Server. Perfil de Servicios de Terminal Server.- permite configurar el perfil del usuario de Servicios de Terminal Server. Marcado.- configura las conexiones a redes a través de vínculos PPP (protocolo punto a punto), como líneas de teléfono analógicas y RDSI. Página.- 110

114 4.3 Usuarios predeterminados Durante la instalación de los sistemas operativos multiusuario se crean una o varias cuentas de usuario predeterminadas que permiten iniciar la sesión y la administración de las demás cuentas. Además, la instalación de algunos procesos conlleva la creación de algún usuario que permite el control del proceso. Por ejemplo, al instalar un servicio de servidor web se puede generar un usuario que sirva para determinar los permisos de los usuarios que se conecten al equipo a través de dicho servicio. Debe tenerse muy presente que solamente deben iniciarse sesiones con cuentas de usuarios administradores o con privilegios especiales cuando vayan a realizarse las operaciones que requieran de esos privilegios. Las razones fundamentales para utilizar dichas cuentas única y exclusivamente cuando sea estrictamente necesario son: Con las cuentas que tienen permitido realizar todas las operaciones se puede dañar inintencionadamente al sistema operativo, borrando por ejemplo ficheros fundamentales. Cuando un usuario se conecta a un equipo remoto sin autorización puede que adquiera los privilegios del usuario que tiene abierta la sesión en ese momento en el equipo remoto, y si ese usuario es el administrador puede generar un grave problema. Mientras haya una sesión abierta como usuario administrador los virus podrán tener acceso a la totalidad del sistema y podrán realizar cualquier operación, incluida la de formatear el disco duro. Por cuestiones de seguridad, y siempre que sea posible, se recomienda cambiar el nombre de la cuenta del usuario administrador y se le debe asignar una contraseña segura. Durante la instalación de Max se crean los siguientes usuarios, con las siguientes características: root.- se crea con clave cmadrid y tiene asignados todos los privilegios y autorizaciones para poder realizar cualquier operación de administración o de cualquier tipo. Dado el riesgo que implica trabajar con un usuario que puede realizar cualquier operación, esta cuenta se crea con el login desactivado, es decir, no se podrá iniciar una sesión como usuario root. Para poder hacer uso de los privilegios de root existen varias alternativas: Hacer uso del comando sudo que permite a un usuario autorizado suplantar temporalmente al administrador del sistema (root) o a otro usuario. El usuario madrid está autorizado a utilizar este comando. Página.- 111

115 Por ejemplo, si el usuario madrid ejecuta el comando mkdir /pepe se produce un error por no tener permisos para crear carpetas en el directorio raiz; pero si ejecuta la misma instrucción anteponiendo sudo, es decir, sudo mkdir /pepe, se creará el directorio. Con la instrucción ls -l / puede comprobarse que el directorio se ha creado y que su propietario es el usuario root. De forma similar habrá que actuar para borrar el directorio creado: usando la instrucción sudo rmdir /pepe. La primera vez que se ejecuta la instrucción sudo pide la introducción de la contraseña del usuario madrid. Hasta que no pasan 15 minutos no la vuelve a pedir. Los usuarios y grupos que tienen derecho a utilizar el comando sudo se encuentran en el fichero /etc/sudoers y editando el fichero podremos añadir o eliminar usuarios. Antes de editar el fichero es conveniente realizar una copia del mismo utilizando, por ejemplo, la instrucción: sudo cp /etc/sudoers /etc/sudoers.copia El fichero puede editarse con la instrucción visudo que permite la modificación haciendo uso del editor vi. Para poder hacer uso de otro editor, previamente hay que asignar al fichero todos los permisos a todos los usuarios ( sudo chmod a+rwx /etc/sudoers ) y restablecer los permisos al finalizar ( sudo chmod 0440 /etc/sudoers ). A continuación de la etiqueta # User privilege specification se asignan los permisos, que han de tener la forma: usuario-grupo MAQUINA=(Usuario_con_privilegios) COMANDO Hay diversas opciones de ejecución que permiten regular con cierto nivel de seguridad el comportamiento de algunas aplicaciones cuando son invocadas. Una de las opciones es NOPASSWD que evita que se solicite la contraseña. El fichero contiene la línea: root ALL=(ALL) ALL que indica que el usuario root tiene acceso total al sistema (previo reconocimiento de contraseña). Los usuarios se pueden especificar en líneas distintas o separados por comas, por ejemplo, para conceder el control total a los usuarios usprueba01 y usprueba02, sin que se les solicite la contraseña, habría que incluir la línea: usprueba01, usprueba02 ALL=(ALL) NOPASSWD: ALL Para conceder permisos a nivel de grupo hay que anteponer el carácter % al nombre, por ejemplo: %grupo ALL=(ALL) ALL Página.- 112

116 Al finalizar de editar el fichero, hay que guardar las modificaciones (en visudo con :wq) y, si se modificaron los permisos del fichero, deshacer los cambios con la instrucción: sudo chmod u-w /etc/sudoers. Hacer uso de la instrucción su root o simplemente su que permite a un usuario convertirse en otro hasta que se ejecuta la instrucción exit o se cierra la ventana donde se está ejecutando. Antes de utilizar este comando deberá haberse asignado una contraseña al usuario root. Para cambiar la contraseña al usuario root se puede iniciar una sesión gráfica con el usuario madrid y a través del menú Aplicaciones Sistema Administración Usuarios y grupos se desbloquea la ventana de administración de usuarios, se selecciona el usuario root y en las Propiedades, en la ficha Cuenta se introduce por duplicado una contraseña, QUE BAJO NINGÚN CONCEPTO SE PUEDE OLVIDAR. Iniciar una sesión como usuario root en un terminal en modo texto, pulsando, por ejemplo <Ctrl> + <Alt> + <F1>. Se necesita haber asignado previamente una contraseña al usuario root. Iniciar una sesión gráfica como usuario root. Previamente se deberá haber iniciado una sesión como usuario madrid y asignado una contraseña al usuario root y activado el cuadro de verificación Permitir entrada local al administrador del sistema al que se llega a través del menú Aplicaciones Sistema Administración Ventana de entrada - Ficha Seguridad. madrid.- con clave cmadrid, con privilegios para utilizar la instrucción sudo. Tiene privilegios de administrador (perfil superusuario) por lo que se recomienda cambiar su clave inmediatamente después de la instalación. Algunas versiones de MaX, como DVD Live y CD Live inician la sesión de forma automática con este usuario. profesor.- con clave profesor. Es un usuario sin privilegios especiales. alumno.- con clave alumno, tiene la peculiaridad de que su escritorio y carpeta de trabajo se restauran al iniciar sesión. Los cambios no perduran de una sesión para otra. Durante la instalación de Windows Server 2008 se crean de forma predeterminada las siguientes cuentas locales, con las siguientes características: Administrador.- Esta cuenta tiene control total del equipo y puede asignar derechos de usuario y permisos de control de acceso a los usuarios según se necesite. Puede estar habilitada o deshabilitada y siempre es miembro del grupo Administradores. No se puede eliminar ni quitar del grupo Administradores pero se puede cambiar el nombre (recomendable) y deshabilitar. Aunque la cuenta Administrador esté deshabilitada, si se inicia el equipo en modo seguro podrá utilizarse. Página.- 113

117 Invitado.- Utilizada por los usuarios que no tienen cuenta real en el equipo. No requiere contraseña y se encuentra deshabilitada de forma predeterminada (y se recomienda que permanezca deshabilitada). Se le pueden asignar derechos y permisos como a cualquier otra cuenta y pertenece al grupo predeterminado Invitados, lo que le permite iniciar sesión en un equipo. Para habilitar o deshabilitar una cuenta basta con marcar o desmarcar el cuadro de verificación correspondiente de la ficha General de las propiedades del usuario mostradas a través de las Herramientas administrativas (Inicio Herramientas admin. Administración de equipos Usuarios y grupos locales Carpeta Usuarios). 4.4 Seguridad de cuentas de usuario Para incrementar la seguridad del equipo y evitar al máximo los momentos de vulnerabilidad se recomienda: No iniciar sesión con una cuenta con privilegios de administrador. Se aconseja iniciar la sesión como un usuario normal y hacer uso, siempre que se pueda, de instrucciones que permitan, al menos temporalmente, realizar tareas administrativas. En MaX se recomienda hacer uso de la instrucción sudo. En Windows se puede utilizar Ejecutar como administrador. Hay dos formas de ejecutar un programa de esta forma: En el entorno gráfico, haciendo uso de la opción Ejecutar como que aparece al pulsar con el botón derecho sobre algunos programas ejecutables (.exe), algunos iconos del Panel de control (.cpl) o pantallas de administración (MMC)(.msc). En la línea de comandos, haciendo uso de la instrucción runas, por ejemplo: runas /user:w200800\administrador cmd runas notepad fichero.txt donde W es el nombre del equipo, Administrador el del usuario, cmd para invocar una sesión en modo texto y notepad fichero.txt para editar el fichero. Son dos ejemplos muy distintos y puede encontrarse más información y más ejemplos en la Ayuda de Windows. Incluir las menos cuentas de usuario posibles en los grupos con privilegios de administradores. Página.- 114

118 Mantener deshabilitada la cuenta asignada para los usuarios Invitados o Anónimos puesto que suelen ser cuentas que no requieren contraseña y cualquier usuario puede utilizarlas, con el consiguiente riesgo para la seguridad. Mantener deshabilitada la cuenta del usuario Administrador, por ser la cuenta que todos los intrusos desean desproteger. Incluir en los grupos con privilegios de administradores a los usuarios que gocen de la confianza adecuada para garantizar la seguridad necesaria. 4.5 Seguridad de contraseñas El uso de contraseñas es una de las medidas más importantes para proteger el equipo de los hackers y usuarios no deseados y para mantener la confidencialidad de la información de los usuarios. De alguna forma son la primera línea de defensa contra el acceso no autorizado. Cuanto más segura sea la contraseña mayor será la protección. La mayor parte de los sistemas operativos permiten que el usuario administrador establezca ciertas condiciones a las contraseñas para garantizar su seguridad y fiabilidad. Entre estas condiciones de seguridad de las contraseñas se encuentran: Que contengan un número mínimo de caracteres alto (8 por ejemplo). Que no contenga el nombre del usuario, de familiares, de la empresa, etc. Que no contenga palabras completas que puedan estar incluidas en cualquier tipo de diccionario. Que sea significativamente diferente a las usadas con anterioridad. Que contenga símbolos de los diferentes tipos: letras mayúsculas, letras minúsculas, números y caracteres especiales permitidos (<>&%$()=? ). Para recordar contraseñas que cumplan con las condiciones de seguridad pueden emplearse métodos como: Usar las iniciales de las palabras de una frase fácil de recordar, por ejemplo: Yo nací el 25 de marzo de 1963 podría convertirse a Yne25-M/1963. Trasladar las letras de una palabra a números, caracteres especiales y errores ortográficos, por ejemplo, Santiago puede convertirse en Etc. Si aún así, se cree conveniente anotar la contraseña para que no se olvide, debe hacerse en lugar seguro y sin indicar que es una contraseña. Página.- 115

119 4.6 Administración de perfiles locales de usuario El perfil de un usuario está compuesto por los ficheros que contienen la información de configuración para ese usuario específico. Esa información puede ser relativa a la configuración del escritorio, las conexiones persistentes a carpetas e impresoras de red y la configuración de aplicaciones. Generalmente el perfil inicial de un usuario se genera en el momento de la creación del usuario o la primera vez que el usuario inicia una sesión en el equipo. Durante la instalación de MaX se genera la carpeta /home destinada a contener la información de los usuarios. Dentro de /home se crea automáticamente una carpeta para cada usuario, tanto para los usuarios preestablecidos: madrid, profesor y alumno, como para los que se crean posteriormente. Por ejemplo, el usuario usprueba01 dispondrá de una carpeta llamada /home/usprueba01. El único usuario cuya carpeta de trabajo no se sitúa dentro de /home es el usuario root, cuya carpeta se crea directamente debajo del directorio raíz (/root). De forma preconfigurada, cuando un usuario inicia una sesión, se encuentra con que en el escritorio hay un icono con la figura de una casa y con el título Carpeta personal de nombre_del_usuario que conduce directamente a la carpeta /home/nombre_del usuario. En dicha carpeta, y también de forma automática, se generan varias subcarpetas y ficheros, unas destinadas a contener cierto tipo de ficheros que genere el usuario y otras pertenecientes al perfil propiamente dicho del usuario: Documentos.- destinada a contener los documentos que genere el usuario. Imágenes.- idem. Música.- idem. Plantillas.- destinada a contener plantillas de documentos, de páginas web, etc. Público.- para contener los ficheros que el usuario quiera compartir con los demás. Vídeos.- idem. Escritorio.- contiene los elementos que se muestran y se crean en el escritorio, a excepción de los correspondientes a: Equipo, Carpeta personal del usuario y Servidores de red. Un gran número de carpetas y ficheros ocultos (su nombre comienza por un punto, por ejemplo.mozilla) que contienen la configuración del usuario para los diferentes programas, las instrucciones que deben ejecutarse al iniciar la sesión,etc. Para mostrar los ficheros ocultos basta con marcar la casilla de verificación Mostrar los archivos ocultos que se encuentra en la opción Ver de la barra de menú del Navegador de archivos. Página.- 116

120 Fig 44: Carpeta personal de usprueba02 Fig 45: Opciones para visualizar ficheros ocultos Fig 46: Carpeta personal con ficheros ocultos Página.- 117

121 La ubicación preestablecida para las carpetas de los usuarios puede modificarse en las propiedades del usuario. Fig 47: Especificación de la carpeta personal En cuanto a la configuración del escritorio, su comportamiento es básicamente el mismo que el de cualquier otra carpeta puesto que en él se pueden crear carpetas, lanzadores (accesos directos o links) y documentos, pero posee un papel relevante por ser la base sobre la que se van a mostrar los demás elementos y, además, tiene algunas propiedades diferenciadas a las que se accede a través de la opción Cambiar el fondo del escritorio, accesible a través de su menú contextual (click con el botón derecho del ratón sobre un espacio vacío del escritorio) y desde el menú Aplicaciones Sistema Preferencias Apariencia. Fig 48: Cambiar el fondo del escritorio Aunque la opción mostrada es Cambiar el fondo del escritorio, son más las operaciones que se pueden realizar y se encuentran recogidas en las fichas: Tema.- permite elegir la apariencia de las ventanas. Dispone de un conjunto de configuraciones preestablecidas pero también admite personalizar los diferentes componentes de cada ventana (bordes, colores, punteros, ). Página.- 118

122 Fondo del escritorio.- permite seleccionar la imagen que ocupará el fondo del escritorio de entre las que incorpora MaX o añadir otras elegidas por el usuario. Puesto que la imagen elegida generalmente no coincide con el tamaño del escritorio, a través de la lista desplegable Estilo se puede configurar como se realizará el relleno del fondo del escritorio: repitiendo la imagen (Mosaico), ampliandola (Ampliación), etc. Si se elige un estilo en el que la imagen no ocupa totalmente el fondo del escritorio, puede elegirse un color de relleno y si este color se repartirá de forma homogénea o con algún tipo de degradación (transición entre dos colores). El botón Ayuda muestra información adicional. Tipografías.- permite configurar el tipo de letra para diferentes elementos. A través del botón Ayuda se muestra información exhaustiva al respecto. Interfaz.- permite configurar los menús y barras de herramientas: si se mostrarán iconos, las combinaciones de teclas de acceso rápido, si los botones constarán de icono y título, etc. Efectos visuales.- su función es hacer más agradable y atractivo el funcionamiento y visualización de objetos en el escritorio: apertura movimiento y cierre de ventanas, movimientos del puntero del ratón, etc. La ficha los presenta clasificados en tres categorías (ninguno, normal y extra), que pueden examinarse a través del menú Aplicaciones Sistema - Preferencias Administrador de opciones CompizConfig. Las carpetas y ficheros ocultos que se crean dentro de la carpeta de trabajo del usuario pueden clasificarse en dos grupos fundamentales: Ficheros que se ejecutan al iniciar la sesión el usuario.- es el caso de los ficheros.profile,.bash_profile y.bash_login, que contienen instrucciones que se ejecutan al iniciar el usuario una sesión en modo texto. Ficheros y carpetas con las configuraciones personales del usuario para los diferentes programas.- como es el caso de la carpeta.mozilla que contiene la configuración de Firefox del usuario. Así, el historial, los marcadores, etc. de Firefox serán diferentes para cada usuario. Por otra parte, un gran número de facetas personalizables del entorno del usuario se encuentran en el menú Aplicaciones Sistema Preferencias y se describen en el apartado 16.1 de la Guía de Referencia. Entre las más significativas se encuentran: Acerca de mi.- permite introducir la contraseña y datos personales. Administrador de opciones CompizConfig.- descrito anteriormente. Apariencia.- Idem. Aplicaciones al inicio.- para especificar las aplicaciones que se ejecutarán al iniciar la sesión. Página.- 119

123 Aplicaciones preferidas.- para especificar las aplicaciones que se utilizarán para la realización de ciertas tareas. Etc., etc. Fig 49: Preferencias del entorno del usuario Otro aspecto que afecta al entorno del usuario, y que hace referencia a las autorizaciones que se le asignan, se determina en el momento de la creación del usuario. La ventana correspondiente a la creación de cuenta de usuario nueva (menú Aplicaciones Sistema Administración Usuarios y grupos Desbloquear Añadir usuario) solicita un perfil para el usuario, pudiendo elegir entre las opciones: Administrador.- usuario con privilegios para administrar el equipo. Aparte de obtener unos privilegios adicionales, que pueden consultarse en la misma ventana, en la ficha Privilegios del usuario, el usuario es incluido en el grupo admin, pasando a tener características similares al usuario predeterminado madrid. Usuario del escritorio.- puede utilizar las aplicaciones instaladas pero no administrar el equipo. Puede consultarse como, de forma predeterminada, se le otorgan menos autorizaciones que a los anteriores. Página.- 120

124 Usuario sin privilegios.- pensado para ser asignado a usuarios temporales que en un momento puntual necesitan iniciar una sesión. Son los usuarios invitados o anónimos. De forma predeterminada tienen las mismas autorizaciones que los Usuarios de escritorio. Fig 50: Perfil del usuario La configuración del usuario preestablecido alumno requiere una atención especial. Cuando este usuario inicia una sesión en el entorno gráfico se reinician sus ficheros de configuración y se vacían las carpetas existentes en /home/alumno, borrándose los ficheros generados en su sesión anterior. El perfil del usuario alumno puede considerarse un perfil local obligatorio donde los cambios de configuración y los ficheros creados se pierden al cerrar la sesión. Los ficheros que controlan estas operaciones se encuentran en la carpeta /etc/homealumno, cuyo contenido es el siguiente: config.- fichero de configuración donde se especifican entre otros parámetros: Los usuarios a los que se aplicará el perfil (parámetro USERS). El grupo de usuarios al que se aplicará el perfil (parámetro GROUP). Los archivos que no se borrarán (parámetro EXCLUDE). Directorio del perfil extra del alumno (parám. SKEL). Comandos que se ejecutarán antes de la restauración (parám. PRECLEAN). Comandos que se ejecutarán después de la restauración (par. POSTCLEAN). exclude.- contiene los nombres de los ficheros o carpetas (uno por línea) que no se borrarán. Página.- 121

125 preclean.- contiene las instrucciones que se ejecutarán antes de restaurar las configuraciones iniciales. postclean.- contiene las instrucciones que se ejecutarán después de la restauración. preclean.d.- carpeta con scripts que son lanzados desde el fichero preclean. postclean.d.- carpeta con scripts que son lanzados desde el fichero postclean. skel.- directorio de perfil extra del usuario alumno. Por último, hay que considerar el paquete Sabayon que permite configurar el perfil del escritorio de cada usuario. Sabayon no se instala por defecto con lo cual, si se desea trabajar con el, en primer lugar hay que instalarlo. Una vez instalado, su ejecución puede lanzarse a través de la opción Editor de perfiles de usuario dentro del menú Aplicaciones Sistema Administración. Fig 51: Sabayon La ventana de Sabayon muestra los perfiles creados, que la primera vez no contendrá ninguno. Pulsando el botón Añadir se puede crear un nuevo perfil. Una vez creado habrá que seleccionarlo y pulsar sobre el botón Editar. Aparecerá un escritorio similar al que aparece la primera vez que se conecta un usuario. Sobre este escritorio se realizan las modificaciones que se consideren oportunas: quitar, poner o modificar iconos, quitar o añadir elementos de la barra de tareas, quitar o añadir opciones del menú Aplicaciones, etc. etc. Una vez que el escritorio está a gusto del administrador, se guarda mediante la opción Perfil Guardar. Por último, a través del botón Usuarios se especifican los usuarios que tendrán el escritorio anteriormente diseñado. Esta operación se realiza marcando la casilla de verificación de los usuarios que aparece en la ventana correspondiente, como muestra la figura. Página.- 122

126 Fig 52: Usuarios para el perfil La ventana permite, mediante la activación del correspondiente cuadro de verificación, utilizar un único perfil para todos los usuarios. 4.7 Gestión centralizada de usuarios La centralización de usuarios en uno o varios equipos de la red puede facilitar de forma muy significativa el trabajo de administración y control de los equipos y de la red en su conjunto. Cuando los permisos y privilegios de los usuarios están perfectamente organizados, gestionados y controlados los problemas de la red se reducen. Ligada a la gestión centralizada de usuarios se encuentra la gestión centralizada de carpetas. Aunque son dos aspectos perfectamente delimitados, muy frecuentemente el servidor que contiene y autentica a los usuarios también contiene algunas de sus carpetas de trabajo. Dependiendo de la funciones que se quieran centralizar pueden distinguirse tres categorías: Compartir carpetas, archivos e impresoras.- los dos protocolos más utilizados son NFS y SMB/CIFS. Compartir una carpeta permite que desde otros equipos se pueda tener acceso al contenido de la misma. Este acceso puede ser esporádico para intercambiar algún fichero o continuado si lo que se comparte es, por ejemplo, una carpeta que contiene los perfiles de los usuarios o sus carpetas de trabajo. Si lo que contienen son los ficheros que conforman el perfil de los usuarios, asignando los permisos adecuados puede controlarse que los usuarios puedan cambiar o no su perfil. Como ya se ha mencionado, algunas de las consideraciones a tener en cuenta para que las carpetas de los usuarios tengan una ubicación local o centralizada son: centralizar los directorios de inicio de sesión de los usuarios, la realización de copias de seguridad, el espacio requerido, los dispositivos removibles disponibles, la carga de la red, etc. Página.- 123

127 Tampoco se puede olvidar la situación generalizada de la existencia de diferentes sistemas operativos en la red y que dos de los protocolos más utilizados para compartir recursos son NFS en sistemas Linux/Unix y SMB/CIFS en sistemas Windows. Teniendo en cuenta que el protocolo utilizado por los sistemas Windows para compartir o conectarse a recursos compartidos es SMB/CIFS y que en ambos protocolos (NFS y SMB/CIFS) la configuración del cliente (el que se conecta) es diferente a la del servidor (el que comparte), la casuística para un equipo Linux es la siguiente: Si va a compartir carpetas con otros sistemas Linux deberá cargar y configurar el servicio de servidor de NFS. Si va a hacer uso de carpetas que otros sistemas Linux comparten deberá cargar y configurar el servicio de cliente de NFS. Si va a compartir carpetas con sistemas Windows deberá cargar y configurar el servicio de servidor Samba (SMB). Si va a conectarse a carpetas compartidas por sistemas Windows deberá cargar y configurar el servicio de cliente Samba (SMB). Autenticación y permisos de acceso.- permite establecer y comprobar la identidad de un usuario o equipo de la red y determinar los permisos de acceso a recursos como ficheros, carpetas, impresoras, etc. Dos de los servicios de autenticación más utilizados son NIS y Kerberos. Servicios de directorio.- centralizan toda la información susceptible de compartir a través de la red, incluyendo las dos funciones anteriores. Los dos servicios más utilizados son LDAP (Lightweight Directory Access Protocol) en sistemas Linux y Active Directory de Microsoft. Estos últimos servicios, por su complejidad, serán tratados en temas independientes Compartir carpetas con NFS NFS (Network File System) permite compartir carpetas y ficheros entre sistemas a través de la red. El equipo servidor de NFS comparte alguna de sus carpetas o ficheros y el cliente de NFS se conecta y hace uso de las carpetas o ficheros que comparte el servidor. Un equipo puede ser servidor y cliente de NFS al mismo tiempo, es decir, puede compartir alguna de sus carpetas o ficheros y hacer uso de las carpetas o ficheros que otro servidor comparte. Página.- 124

128 NFS permite que los datos usados de forma común puedan almacenarse en una única carpeta compartida localizada en un equipo accesible a través de la red, centralizar los directorios de inicio de los usuarios, compartir dispositivos de almacenamiento interno y externo reduciendo el número de dispositivos removibles de la red, etc. El funcionamiento del servidor de NFS conlleva tres tipos de tareas: Instalación del software adecuado, que no es otro que el paquete nfs-kernel-server. Esta tarea puede realizarse a través del gestor de paquetes Synaptic o mediante la instrucción sudo apt-get install nfs-kernel-server. Configurar o especificar los directorios o ficheros a compartir. Cada recurso que se comparte se especifica en el fichero /etc/exports añadiendo una línea por cada recurso compartido, siguiendo la sintaxis que se muestra a continuación y que puede ser consultada con la instrucción man exports : recurso_a_compartir equipos_clientes(opciones) [equipos_clientes(opciones)] [...] recurso_a_compartir.- es el nombre completo de la carpeta/fichero que se comparte. Debe tenerse en cuenta que los permisos de la carpeta/fichero sean los adecuados. equipos_clientes.- identifica a los equipos que tendrán permitido el acceso al recurso. Las diferentes formas que puede adoptar equipos_clientes son: Un equipo individual.- se especificará el nombre del equipo, por ejemplo max50_01, o su nombre FQDN, por ejemplo max50_01.tiernogalvan.es o su dirección IP, por ejemplo Un grupo de red NIS.- tendrá la Uso de caracteres comodines.- Utilizando los caracteres * y? en el nombre FQDN de los equipos puede referenciarse a, por ejemplo, todos los equipos de un subdominio (*.informatica.tiernogalvan.es). Subredes.- Especificando la dirección IP de la red y la máscara en cualquiera de sus dos notaciones (decimal o longitud), por ejemplo /24 o / No deben utilizarse caracteres comodines en las direcciones IP. opciones.- caracteriza y delimita la forma en que se comparte el recurso. Para ver una lista completa de las opciones que se pueden utilizar puede utilizarse la instrucción man exports. Van encerradas entre paréntesis y separadas unas de otras por una coma (sin espacios). Entre las más utilizadas están: rw.- permite realizar operaciones de lectura y escritura en el directorio/fichero. Página.- 125

129 ro.- permite realizar únicamente operaciones de lectura. sync.- el servidor responde a las operaciones después de realizarlas en el disco. nohide.- permite al cliente ver en los puntos de montaje del servidor los sistemas de ficheros montados. no_subtree_check.- evita el chequeo del directorio/fichero compartido. no_root_squash.- hace que el usuario root del cliente pase a tener los mismos permisos que el usuario root del servidor sobre la carpeta. insecure.- permite el uso de puertos superiores al Algunos ejemplos pueden ser: /home/nis (rw,nohide,sync,no_root_squash,no_subtree_check) /home (rw,nohide,no_root_squash) /home/profe *.tiernogalvan.es(rw, nohide) /22(ro,nohide) Puesto que el conocimiento y comprensión de las opciones que se pueden utilizar es el talón de Aquiles de este servicio, puede hacerse uso de herramientas como Webmin que facilitan la configuración del fichero /etc/exports. Lanzar la ejecución del servidor de nfs con la instrucción: sudo /etc/init.d/nfs-kernel-server start El proceso admite las opciones status, start, stop, restart, etc. para comprobar su estado, lanzarlo, pararlo, reiniciarlo, etc. respectivamente. Si se desea que el proceso no se lance de forma automática al iniciar el sistema, puede utilizarse el comando sysv-rc-conf para desactivarlo de los niveles de ejecución correspondientes (2, 3, 4 y 5). La configuración del cliente de NFS conlleva las siguientes tareas: Instalar, si aún no lo está, el paquete nfs-common. Determinar la carpeta local del cliente donde se montará la carpeta compartida del servidor. Dicha carpeta local deberá estar vacía y tener los permisos adecuados. Realizar la operación de montaje mediante la instrucción mount, que tendrá la forma: sudo mount servidor:/carpeta_compartida /carpeta_local Página.- 126

130 Si se desea que la operación de montaje se realice de forma automática al iniciar el sistema deberá incluirse una línea en el fichero /etc/fstab, que tendrá una forma similar a la siguiente: servidor:/carpeta_compartida /carpeta_local nfs El formato completo de las líneas de este fichero se puede consultar con man fstab. Paquetes relacionados con este servicio que pueden facilitar la tarea del servidor y/o cliente son: nfswatch, unfs3, nfs4-acl-tools, jftp, kdenetwork-filesharing, webmin, etc. Práctica (compartir carpetas con NFS) Dar de alta en un equipo (cliente) varios usuarios cuyo directorio de trabajo se encuentre en un servidor NFS. Los pasos a seguir pueden ser los siguientes: Comprobar que el servidor y el cliente se hacen ping. Para conocer la dirección IP del equipo local puede utilizarse la instrucción sudo ifconfig y para hacer ping al equipo remoto debe utilizarse ping dirección_ip_equipo_remoto. Instalar en el servidor NFS el paquete nfs-kernel-server. Crear en el servidor NFS la carpeta /home/nis y asignarle todos los permisos al propietario, al grupo y a los otros. Con el usuario madrid se puede ejecutar: sudo mkdir /home/nis sudo chmod a+rwx /home/nis Puede comprobarse que todo ha ido bien con ls -l /home Para configurar el fichero /etc/exports puede utilizarse webmin. La instalación y ejecución de webmin se detalla en el anexo 1 de este manual. Su ejecución se lanza a través del explorador, Firefox por ejemplo, especificando la dirección ; a continuación solicita la autenticación y debe introducirse root y su contraseña. Si Webmin se instaló después de nfs-kernel-server, la subopción Exportaciones de NFS se encuentra dentro de la opción Red. Si se instaló antes puede buscarse especificando NFS en el cuadro de texto para búsquedas. Página.- 127

131 Fig 53: Programa de administración Webmin Una vez elegida la opción Exportaciones de NFS se elige Añadir una nueva exportación y se realizan las siguientes configuraciones: NFS versión: 3. Directorio a exportar: /home/nis. Solo lectura: NO (opción rw). Los clientes deben de estar en puerto seguro: NO (opción insecure). Desactivar chequeo del árbol de directorios: SI (opción no_subtree_check). Ocultar el sistema de ficheros: NO (opción nohide). Sincronizar inmediatamente las modificaciones en disco: SI (opción sync). Confiar en usuarios remotos: Todo el mundo (opción no_root_squash). Se elige Crear y Aplicar cambios. Pueden comprobarse las modificaciones con la instrucción cat /etc/exports. Se habrá añadido una linea como la siguiente: /home/nis (sync,insecure,no_subtree_check,no_root_squash,rw,nohide) Se relanza la ejecución del servidor NFS con la instrucción: sudo /etc/init.d/nfs-kernel-server restart Página.- 128

132 En el cliente se crea la carpeta /home/nis y se establecen los permisos adecuados: sudo mkdir /home/nis sudo chmod a+rwx /home/nis Se monta la carpeta del servidor en la del cliente con la instrucción: sudo mount ip_servidor:/home/nis /home/nis especificando como ip_servidor la dirección IP del servidor NFS. Si todo funciona correctamente la carpeta /home/nis del cliente se comportará como una carpeta virtual en el sentido de que todas las operaciones que se realicen en ella realmente se harán efectivas en la carpeta /home/nis del servidor. Al desmontar la carpeta del cliente desaparecerá su contenido pero permanecerá en la carpeta del servidor. Luego, se puede proceder de la siguiente forma: Se crea un fichero en /home/nis cliente con ls >/home/nis/fic. Se comprueba su creación con ls /home/nis. Se comprueba que dicho fichero ha ido a parar a /home/nis del servidor con la misma instrucción del apartado anterior. Se desmonta la carpeta en el cliente con sudo umount /home/nis y se comprueba que el fichero ha desaparecido del cliente pero permanece en el servidor. Se vuelve a montar la carpeta en el cliente y el fichero volverá a aparecer. Para que el montaje de la carpeta se haga en el inicio del sistema cliente, de forma automática, se añade al fichero /etc/fstab la línea: ip_servidor:/home/nis /home/nis nfs Apagar y encender el equipo cliente y comprobar que la carpeta se ha montado correctamente y contiene el fichero creado. Finalmente, apagar los dos equipos, iniciar el servidor, esperar a que pida la autenticación y en ese momento iniciar el cliente. Comprobar que la carpeta se ha montado correctamente, es decir, que en la carpeta /home/nis del cliente se encuentra el fichero creado y que físicamente se encuentra en el servidor. Una vez comprobado que NFS funciona correctamente se puede proceder a crear dos usuarios en el equipo cliente (us_nfs_01 y us_nfs_02) asignándoles como directorio de trabajo la carpeta /home/nis. Página.- 129

133 Una vez dados de alta, con cada uno de ellos se iniciará una sesión y se creará un fichero en su carpeta personal. Se comprueba que la estructura de directorios que se genera por cada usuario queda creada en el servidor NFS, que si se desmonta en el cliente la carpeta desaparece dicha estructura en el cliente pero no en el servidor y que al volver a montar la carpeta vuelve a aparecer Compartir carpetas e impresoras con Samba Una de las formas más comunes de compartir ficheros e impresoras con equipos Windows o con equipos Linux configurados como clientes Samba es configurar el equipo como servidor Samba. Para ello, en primer lugar hay que instalar el paquete samba desde Synaptic o bien mediante la instrucción sudo apt-get install samba. El archivo principal, no el único, de configuración de Samba es /etc/samba/smb.conf. Al instalar samba se genera dicho fichero con un número considerable de lineas, la mayor parte de ellas comentadas, que proporcionan explicaciones y ejemplos sobre algunas de las posibles opciones a utilizar para compartir carpetas e impresoras. Ciertas líneas de comentario utilizan como primer carácter de línea un punto y coma ( ; ) en vez del carácter almohadilla ( # ) para indicar que al parámetro se le está asignando un valor diferente al predeterminado. Samba admite configuraciones más o menos sencillas cuando se trata simplemente de compartir alguna carpeta o impresora pero también admite configuraciones muy complejas cuando se desea que, por ejemplo, el equipo realice las funciones de controlador de un dominio, de controlador secundario de dominio, o que gestione los grupos, accesos y permisos de los diferentes usuarios, equipos, etc. El fichero /etc/samba/smb.conf se encuentra dividido en secciones. Cada sección empieza con un nombre de sección encerrado entre corchetes ([seccion]) y finaliza con el siguiente nombre de sección o con el fin del fichero. Existen tres secciones especiales: [global].- contiene parámetros que afectan al funcionamiento general del servidor. [printers].- sus parámetros afectan a la forma de compartir las impresoras. [homes].- sus parámetros afectan al modo en que los usuarios comparten sus carpetas. Además de estas tres secciones, por cada recurso que se comparta debe existir una sección cuyo nombre identificará al recurso ante los clientes. Los parámetros incluidos en cada sección tendrán la forma nombre = valor. Dada la enorme cantidad de parámetros que se pueden incluir en el fichero, es conveniente acotar el desarrollo que se desea hacer en este apartado del servicio samba puesto que un estudio exhaustivo debería ser desarrollado a lo largo de varios temas. Página.- 130

134 Las prácticas que se desarrollan a continuación muestran cómo compartir carpetas editando y modificando el fichero /etc/samba/smb.conf y, por otro lado, utilizando algunas de las muchas herramientas gráficas que permiten administrar el servicio. Las herramientas elegidas son: system-config-samba, swat, webmin y nautilus-share. Más herramientas relacionadas con la gestión de samba son: gadmintools, gadminsamba, samba-tools, thunar-shares, smb4k, gnome-user-share, smb-nat, jftp, qtsmbstatusserver, qtsmbstatus-client, fusesmb, etc. Práctica (Samba: compartir una carpeta modificando /etc/samba/smb.conf) Crear y compartir mediante SMB la carpeta /srv/samba/carpeta01 editando y modificando /etc/samba/smb.conf. Se puede proceder de la siguiente forma: Crear la carpeta con el usuario madrid haciendo uso de la instrucción: sudo mkdir -p /srv/samba/carpeta01 La opción -p sirve para crear las carpetas intermedias en el caso de que no existan. Se le asigna el propietario y grupo adecuados con: sudo chown nobody:nogroup /srv/samba/carpeta01 Se instala el paquete samba con Synaptic o con la instrucción: sudo apt-get install samba Se hace una copia para prevenir problemas y se edita el fichero smb.conf con: sudo cp /etc/samba/smb.conf /etc/samba/smb.conf.copia sudo gedit /etc/samba/smb.conf Se buscan y se modifican las líneas de la sección [global] que contienen los parámetros que establecen el nombre del grupo de trabajo (workgroup) y el tipo de seguridad a utilizar (security), dejando dichas líneas de la forma: workgroup = AULAB25 security = user Se añade al final del fichero editado (smb.conf) una nueva sección con los parámetros que permiten compartir la carpeta creada anteriormente (/srv/samba/carpeta01). Página.- 131

135 La sección puede quedar de la forma: [Carpeta01] comment = Carpeta01 compartida por el equipo MaX60_S path = /srv/samba/carpeta01 browseable = yes guest ok = yes writeable = yes create mask = 0755 y el significado de los parámetros utilizado es el siguiente: comment.- breve descripción del recurso compartido. path.- nombre completo de la carpeta o recurso. Aunque las carpetas compartidas por Samba pueden estar situadas en cualquier parte del árbol de directorios, en este ejemplo se ha utilizado /srv/samba para seguir el estándar de jerarquía del sistema de archivos (FHS o Filesystem Hierarchy Standard) y /srv es el directorio utilizado para albergar los datos servidos por el equipo. Cuando los datos son servidos por un usuario deberán encontrarse en algún subdirectorio de /home. browseable.- permite a los clientes entrar o navegar por las subcarpetas de la carpeta compartida. guest ok.- permite a los clientes conectarse con el usuario anónimo, sin contraseñas. writeable.- establece si el permiso sobre el recurso es solo de lectura (writeable = no) o también de escritura (writeable = yes). create mask.- establece los permisos para los ficheros y carpetas creados por los clientes dentro del recurso compartido. El número que se especifica sigue las mismas normas que el utilizado con la instrucción chmod. En el ejemplo, 0755 equivale a los permisos rwxr xr x. Finalmente, se reinician los servicios smbd y nmbd con: sudo sudo sudo sudo /etc/init.d/smbd /etc/init.d/nmbd /etc/init.d/nmbd /etc/init.d/smbd stop stop start start Página.- 132

136 Ahora hay que comprobar que el servidor funciona correctamente. Algunas de las pruebas a realizar pueden ser las siguientes: Desde el propio servidor se puede ejecutar la instrucción smbclient -L localhost que mostrará información relativa a los recursos compartidos en una ventana similar a la de la figura. Fig 54: Resultado de la instrucción "smbclient -L localhost" Ejecutar desde un cliente Linux la instrucción smbclient -L ip_del_servidor. Desde un cliente Linux haciendo doble click en el icono del escritorio Servidores de red - Red de Windows AULAB25 MaX60_S, que mostrará una ventana como la de la figura. Fig 55: Icono del escritorio "Servidores de red" Desde un cliente Linux, con el explorador Firefox, especificando la dirección smb://ip_del_servidor. Página.- 133

137 Desde un cliente con Windows XP, con botón derecho sobre el icono Mis sitios de red - Conectar a unidad de red, eligiendo como unidad, por ejemplo Z: y como carpeta \\nombre_del servidor ip_del_servidor\nombre_recurso_compartido. En mi caso como carpeta he utilizado \\MaX60_S\Carpeta01. Fig 56: Cliente Windows XP Práctica (Samba: compartir una carpeta usando system-config-samba) Crear y compartir la carpeta /srv/samba/carpeta02 haciendo uso de la herramienta gráfica system-config-samba. Una forma de proceder puede ser la siguiente: Se crea la carpeta y se le asigna el usuario y grupo adecuados: sudo mkdir /srv/samba/carpeta02 sudo chown nobody:nogroup /srv/samba/carpeta02 Se comprueba con Synaptic si se encuentra instalado el paquete system-config-samba, instalándolo si es necesario con Synaptic o con la instrucción: sudo apt-get install system-config-samba Se comparte /srv/samba/carpeta02 con la instrucción sudo system-config-samba. Esta herramienta dispone de las opciones fundamentales que se necesitan para compartir recursos a nivel elemental. La figura muestra la ventana con sus dos fichas: Básico y Acceso. Se recomienda recorrer todas las opciones para comprobar el alcance de configuración de la herramienta. Página.- 134

138 Fig 57: System-config-samba Las comprobaciones a realizar pueden ser las mismas de la práctica anterior. Práctica (Samba: compartir una carpeta usando swat) Crear y compartir la carpeta /srv/samba/carpeta03 haciendo uso de la herramienta gráfica swat. Una forma de proceder puede ser la siguiente: Se crea la carpeta y se le asigna el propietario y grupo adecuados, de forma similar a la práctica anterior. Se instala el paquete swat y se lanza su ejecución desde Firefox, especificando como dirección localhost:901. Pedirá nombre de usuario y contraseña y deberán ser introducidos los datos correspondientes al usuario root. Si se introduce otro usuario y contraseña diferentes a root se ejecutará swat pero el abanico de posibilidades y opciones de configuración estará muy reducido. A grandes rasgos, los iconos que muestra swat permiten: Home.- muestra la documentación de Samba. Globals.- permite configurar los parámetros generales del servidor. Shares.- permite establecer los recursos a compartir y las opciones apropiadas para cada uno de ellos. Wizard.- permite establecer el tipo de servidor, anular las lineas de smb.conf que son comentarios o que asignan valores por defecto a los parámetros. Página.- 135

139 Status.- muestra el estado de los diferentes servicios y las conexiones actuales. View.- Muestra el fichero /etc/samba/smb.conf sin los comentarios y permite modificar su contenido. Password.- permite gestionar los usuarios y contraseñas de los usuarios de Swat. Fig 58: Swat Para compartir la carpeta /srv/samba/carpeta03 se hace click sobre el icono Shares, se especifica Carpeta03 en el cuadro de texto situado a la derecha del botón Create Share y se pulsa sobre dicho botón. El nombre del recurso pasará a la lista desplegable situada encima del cuadro de texto y en la parte inferior de la página aparecerán una serie de botones y cuadros de texto que permitirán establecer los parámetros para este recurso compartido. Se pueden especificar los siguientes: comment (cuadro de texto): Carpeta03 compartida por el equipo MaX60_S path (cuadro de texto): /srv/samba/carpeta03 read only (lista desplegable): No guest ok (lista desplegable): Yes browseable (lista desplegable): Yes available (lista desplegable): Yes Para guardar los cambios realizados en el fichero smb.conf se pulsa sobre el botón Commit Changes. Para que dichos cambios sean tenidos en cuenta por el servidor samba se puede pulsar sobre el icono superior Status y a continuación sobre el botón Restart all. La comprobación del funcionamiento puede ser igual al de las prácticas anteriores. Swat es una utilidad muy completa que permite un control muy exhaustivo sobre el servidor samba y a la que conviene dedicar cierto tiempo de estudio para conocer el significado de todas sus opciones y posibilidades. Página.- 136

140 Algunas consideraciones que pueden ayudar a su manejo en la fase inicial son: Cuando se lanza swat por primera vez, simplifica el fichero /etc/samba/smb.conf anulando todas las líneas de comentario y todas las que asignan valores por defecto a los parámetros. La página Shares, además de permitir crear recursos compartidos, permite modificar o borrar los ya existentes. Para ello en primer lugar hay que elegir el recurso en la lista desplegable situada entre los botones Choose Share y Delete Share y a continuación pulsar sobre uno de los dos botones mencionados. Si se están realizando modificaciones sobre un recurso compartido y en un momento dado se desean anular las modificaciones para que aparezcan de nuevo las opciones iniciales, basta con pulsar sobre el botón Reset Values. Las opciones básicas mostradas para los recursos compartidos son unas 15. Para cambiar a la modalidad de Vista avanzada, que muestra unas 100 opciones diferentes, hay que pulsar sobre el botón Advanced (en la página Shares ). Cada opción dispone de un enlace Help que presenta información de ayuda sobre la misma y un botón Set Default que permite asignar al parámetro la opción por defecto. Para evitar incompatibilidades sobre el fichero /etc/samba/smb.conf, se recomienda no alternar el uso de esta herramienta con el uso de otras. Dicho de otra forma, si se elige swat para configurar samba, debe utilizarse siempre swat para gestionar los recursos compartidos. Práctica (Samba: compartir una carpeta usando nautilus-share) Iniciando una sesión con un usuario distinto a los predeterminados, crear y compartir una carpeta dentro de su carpeta personal. Los pasos a seguir pueden ser los siguientes: Se crea el usuario usprueba01 asignándole el privilegio Compartir archivos con la red local. Este privilegio lo que hace realmente es que usprueba01 sea miembro del grupo sambashare, que es el grupo que tiene permisos para escribir en el directorio /var/lib/samba/usershares, que es donde se guardan los ficheros de configuración de los recursos que los usuarios comparten. Se inicia la sesión con el usuario usprueba01 y se crea dentro de su carpeta personal una subcarpeta llamada Carpeta04. Página.- 137

141 Se accede al menú contextual de la carpeta Carpeta04 (botón derecho sobre la carpeta), se elige la opción Opciones de compartición y se introducen los valores adecuados. Fig 59: Nautilus-share El funcionamiento puede comprobarse como en las prácticas anteriores. Información más completa sobre el servicio samba puede encontrarse a través de: El tema 17: Redes Windows de la Guía de Ubuntu Server a la que se accede a través del menú Aplicaciones Sistema Ayuda y Soporte Temas avanzados que explica de forma sencilla y con ejemplos el uso del servicio. La instrucción man smb.conf que muestra un texto de unas líneas explicando todas las opciones que pueden utilizarse en smb.conf. La página oficial de samba que contiene un manual completísimo en inglés y al que se accede a través de Centralización de la autenticación de usuarios. NIS. Centralizar la autenticación de los usuarios consiste en dar de alta a los usuarios en uno o varios servidores de la red y permitir que esos usuarios inicien la sesión desde otros equipos distintos a aquellos en los que han sido dados de alta. Esta centralización tiene enormes ventajas a la hora de administrar usuarios en aquellas redes donde los usuarios no tienen asignado un equipo físico fijo o existe un número elevado de usuarios. Por ejemplo, un profesor puede dar de alta en su ordenador del aula un usuario para cada alumno sin importar el ordenador que posteriormente ocupará cada uno de ellos y sin tener que ir dando de alta en cada ordenador del aula a los posibles usuarios. Página.- 138

142 Uno de los servicios de Linux que permite la centralización de usuarios es NIS, Network Information Service o Servicio de Información en Red. NIS en un principio se llamó YP de Yellow Pages (Páginas amarillas) y tuvo que cambiar su denominación por ser un nombre registrado por British Telecom. NIS es un protocolo que permite distribuir y consultar datos (usuarios, grupos, contraseñas, nombres de equipos, etc.) entre los equipos de una red. En particular permite la consulta de usuarios y contraseñas (centralización de autenticación) o puede realizar las funciones de DNS cuando no se necesite salir a Internet. Ciñéndonos a la gestión de usuarios, va a permitir que las cuentas de usuario se den de alta en una máquina y puedan iniciar sesión desde las demás máquinas de la red. La función de los servidores NIS es poner a disposición de los clientes los ficheros o bases de datos que contienen la información de las cuentas de usuarios, claves, etc. La función de los clientes NIS es consultar los ficheros de los servidores para comprobar, por ejemplo, si el nombre de la cuenta y su contraseña son correctos. Los datos sobre las cuentas de usuario, sus contraseñas y grupos de usuarios se encuentran en los ficheros /etc/passwd, /etc/shadow y /etc/group respectivamente. Dada la importancia del servidor NIS, puesto que tiene la responsabilidad de autenticar a los usuarios, la configuración generalizada en una red consta de un servidor maestro y uno o más servidores esclavos que contienen una réplica de los ficheros del servidor maestro. En el caso de que el servidor maestro se caiga serán los servidores esclavos los que se encarguen de realizar la autenticación. Esto conlleva que el servidor maestro envíe periódicamente las modificaciones de sus ficheros a los servidores esclavos. Antes de proceder a la instalación y configuración del servicio NIS es conveniente tener en cuenta las siguientes consideraciones: Aunque la autenticación del cliente NIS es remota su sesión y ejecución es local por lo que si un usuario creado en el servidor NIS tiene asignado como directorio de trabajo /home/usuario, dicho directorio deberá crearse y tener asignados los permisos adecuados en el equipo local antes de que el usuario inicie la sesión. Si al iniciar la sesión el directorio de trabajo del usuario no existe, el usuario intentará crearlo pero para conseguirlo deberá tener los permisos adecuados. De forma predeterminada el directorio /home tiene como propietario al usuario root y solamente él puede crear subdirectorios (permisos rwxr-xr-x); por esta razón el directorio del usuario lo crea root al dar de alta al usuario pero el usuario no puede crear su propio directorio en /home. Una solución a este problema es crear tanto en el servidor como en el cliente un directorio, por ejemplo /home/nis, con todos los permisos para todos los usuarios y asignar a aquellos usuarios que se conectan mediante NIS el directorio de trabajo /home/nis/nombre_usuario. Página.- 139

143 Otra solución, no aconsejable, es modificar los permisos del directorio /home del cliente para que todos los usuarios puedan crear subdirectorios. Finalmente, la solución más aconsejable pasa por centralizar en un servidor las carpetas de los clientes NIS, como se detalla más adelante en este mismo tema. La versión 6.0 de MaX, con el paquete users-admin que administra las cuentas de usuario y grupo, al dar de alta un nuevo usuario crea su directorio de trabajo antes de permitir especificar donde se quiere crear; esto no ocurría con la versión 5.0. Ahora, si se desea que los usuarios tengan su carpeta en un lugar diferente a /home, o bien se modifica en el fichero /etc/adduser.conf la variable DHOME o se copia la carpeta que se crea para el usuario de /home al directorio deseado y se asigna este directorio al usuario a través de users-admin (menú Aplicaciones Sistema Administración Usuarios y grupos), seleccionando el usuario en cuestión, haciendo click en el botón Ajustes avanzados, ficha Avanzado, cuadro de texto Directorio personal. Para evitar errores ajenos a NIS es conveniente revisar que: Las direcciones ip de clientes y servidores son las correctas y las máquinas se hacen ping. El nombre de cada equipo, contenido en el fichero /etc/hostname, es el adecuado y distintos todos ellos. Esta condición es aconsejable aunque no obligatoria. Los clientes tienen bien asignado el nombre de los servidores a sus direcciones ip en el fichero /etc/hosts. Esta condición es aconsejable aunque no obligatoria. Puede verse un ejemplo en la práctica siguiente. Antes de instalar NIS debe saberse cual es el nombre del dominio que vamos a asignar a todos los equipos. Práctica (instalación de un servidor y un cliente NIS) Configurar una máquina virtual como servidor NIS y dar de alta en ella una cuenta de usuario. Configurar otra máquina virtual como cliente NIS e iniciar una sesión con el usuario creado en el servidor NIS. Antes de proceder a la instalación de paquetes, se deben tomar ciertas decisiones y realizar ciertas comprobaciones: 1. Control de direcciones ip y nombres de equipo.- para esta práctica se va a asignar a la máquina virtual que realizará la función de servidor NIS el nombre MaX60_S y la dirección ip ; a la que hace de cliente NIS tendrá el nombre MaX60_C y la dirección ip Se verificará que ambas máquinas se hacen ping. Página.- 140

144 El nombre asignado al equipo se encuentra en el fichero /etc/hostname. Para ver su contenido puede utilizarse la instrucción cat /etc/hostname y para modificarlo sudo gedit /etc/hostname. Si se modifica el nombre del equipo debe reiniciarse o de lo contrario algunos programas no funcionarán correctamente. 2. Control de los nombres de los equipos de la red y del nombre del dominio nis.- para esta práctica se utilizará como nombre de dominio tiernogalvan.es. Si se desea que los ordenadores puedan comunicarse utilizando su nombre en vez de su dirección IP, deberá especificarse en cada máquina los nombres y direcciones IP de las demás. El fichero que contiene estos datos es /etc/hosts. Si en la red hay configurado un servidor DNS esta operación no será necesaria. Para probar su funcionamiento en la máquina MaX60_C se pueden ejecutar las instrucciones: ping ping MaX60_S ping MaX60_S.tiernogalvan.es (funcionará correctamente) (no funcionará) (no funcionará) Se edita en MaX60_C el fichero /etc/hosts para que quede con los datos: MaX60_C MaX60_C.tiernogalvan.es localhost MaX60_C MaX60_S MaX60_S.tiernogalvan.es..... (las siguientes lineas se dejan como estén) Se debe comprobar que ahora los tres ping's anteriores funcionan correctamente. Se procede de forma análoga en la máquina MaX60_S dejando /etc/hosts con: MaX60_S MaX60_S.tiernogalvan.es localhost MaX60_S MaX60_C MaX60_C.tiernogalvan.es..... (las siguientes lineas se dejan como estén) La operación realizada modificando el fichero /etc/hosts ha permitido asignar a unas direcciones IP los nombres deseados, con el nombre del dominio incorporado. 3. Creación de directorios.- en ambas máquinas se puede crear el directorio /home/nis y asignarle los permisos adecuados: sudo mkdir /home/nis sudo chmod a+rwx /home/nis 4. Creación del usuario.- en el servidor NIS (MaX60_S) se va a crear el usuario usnis01 con el que después se hará el login en MaX60_C. Página.- 141

145 Para que al crear el usuario se genere su carpeta de trabajo en /home/nis hay que editar el fichero /etc/adduser.conf (sudo gedit /etc/adduser.conf), buscar la línea que contiene DHOME=/home y cambiarla por DHOME=/home/NIS. A continuación se crea el usuario usnis01 y se comprueba que su directorio de trabajo se ha creado correctamente (ls /home/nis). 5. Software necesario.- con Synaptic se comprueba que en ambas máquinas se encuentra instalado el paquete portmap, instalándolo si es necesario. 6. Si se hubiera decidido que las carpetas de trabajo de los usuarios deberían quedar centralizadas en un servidor NFS, que puede ser el propio servidor NIS, ahora sería el momento de realizar esta configuración adicional, tanto del servidor como del cliente NFS. Una vez realizadas las tareas preliminares, se puede proceder a la instalación del servidor NIS: 7. Para asegurarse de que el servicio nis de MaX60_C podrá acceder al servidor se puede editar el fichero /etc/hosts.allow y añadir la línea: portmap ypserv ypbind : Se instala el paquete nis con sudo apt-get install nis. Durante la instalación se solicita el nombre del dominio y habrá que especificar tiernogalvan.es. El nombre del dominio queda registrado en el fichero /etc/defaultdomain y podrá ser modificado editando el fichero o mediante la instrucción domainname que sin parámetros muestra el contenido de dicho fichero y con el formato domainname nombre_dominio establece como nombre de dominio el nuevo especificado. Durante la instalación se intenta conectar con el servidor nis (mensaje binding to YP server... ) hasta en once ocasiones y finalmente se muestra un error ([Fail]) debido a que el servidor NIS aún no permite la conexión. 9. Se edita el fichero /etc/default/nis (sudo gedit /etc/default/nis) para asignar a la variable NISSERVER el valor master (NISSERVER=master). De esta forma la máquina MaX60_S queda configurada como servidor maestro de NIS. 10. Se edita el fichero /etc/default/portmap para borrar el carácter # situado delante de la linea que contiene OPTIONS= -i Se edita el fichero /etc/yp.conf para establecer el nombre del servidor NIS añadiendo la línea: ypserver MaX60_S.tiernogalvan.es Página.- 142

146 12. Se ejecuta la instrucción: sudo /usr/lib/yp/ypinit -m que pedirá el nombre de los servidores NIS para que puedan distribuirse los ficheros que contienen los nombres de usuario, contraseñas, etc. El nombre que la instrucción muestra en primer lugar es el primero que encuentra asignado en el fichero /etc/hosts a la dirección IP Esta instrucción, con el parámetro -m que identifica a la máquina como servidor master (maestro), crea la carpeta /var/yp/tiernogalvan.es con los ficheros que podrán ser consultados desde los clientes y los servidores esclavos y también crea el fichero /var/yp/ypservers con los nombres de los servidores introducidos. 13. Se reinician los servicios portmap y nis con las instrucciones: sudo /etc/init.d/portmap restart sudo /etc/init.d/nis restart (o bien sudo service portmap restart ) 14. Puede comprobarse el correcto funcionamiento del servidor con: ypcat passwd que deberá mostrar una linea por cada usuario con información relativa a los mismos. 15. Si se dan de alta nuevos usuarios, se cambian claves,, habrá que volver a generar los ficheros de datos con la instrucción: sudo make -C /var/yp Por último, hay que configurar el cliente NIS: 16. Dependiendo de la versión de MaX y de gdm, puede resultar interesante configurar gdm para que muestre los nombres de los usuarios para poder iniciar la sesión eligiendo el usuario en vez de tener que teclear su nombre. En MaX v.6.0 ésa es la configuración predeterminada; en MaX v.5.0 hay que configurarlo manualmente. 17. Se instala nis con la instrucción sudo apt-get install nis o con Synaptic. El nombre de dominio a introducir será el mismo que para el servidor, tiernogalvan.es. 18. Para que MaX60_S no tenga problemas para acceder al cliente puede añadirse al fichero /etc/hosts.allow la línea: portmap: Página.- 143

147 19. Para indicar al sistema que además de los usuarios locales puede iniciarse la sesión con los usuarios del servidor nis pueden utilizarse dos métodos: Modificar el fichero /etc/nsswitch.conf añadiendo la palabra nis en aquellas líneas que identifican alguno de los servicios a consultar. En este caso concreto serán las lineas relativas a passwd, group y shadow que quedarán de la forma: passwd: group: shadow: compat nis compat nis compat nis Si se añadiera nis a la linea relativa a hosts podría llegar a conseguirse que el servidor NIS hiciera las funciones de servidor DNS. Modificar el fichero /etc/passwd añadiendo al final una linea con: +:::::: modificar el fichero /etc/group añadiendo al final una línea con: +::: modificar el fichero /etc/shadow añadiendo al final una línea con: +:::::::: Estas líneas indican que los datos del usuario/grupo/contraseña que faltan entre los caracteres : deben consultarse en el servidor NIS. 20. Para que MaX60_C sepa quien es el servidor NIS hay que añadir al fichero /etc/yp.conf la línea: ypserver MaX60_S.tiernogalvan.es Si no se hubiera añadido al fichero /etc/hosts una línea especificando la dirección IP de MaX60_S.tiernogalvan.es, la línea a añadir en /etc/yp.conf debería de ser: ypserver Otra forma de especificar el servidor NIS puede ser: domain tiernogalvan.es server MaX60_S 21. Se reinicia el servicio nis con sudo /etc/init.d/nis restart. Página.- 144

148 22. Se reinicia la máquina y en la ventana de elección de usuario se introducen los datos relativos al usuario usnis01 dado de alta en MaX60_S. La autenticación debe realizarse sin problemas. Pueden realizarse algunas pruebas adicionales para analizar el funcionamiento correcto o incorrecto del servicio: En el punto 7 puede probarse a especificar en el fichero /etc/hosts.allow una linea diferente: ALL:.tiernogalvan.es que podría permitir el acceso de todos los equipos del dominio tiernogalvan.es. El error que se produce en el punto 8 debe desaparecer al reiniciar nis. Si al reiniciar la máquina el servidor NIS sigue haciendo los once intentos de conexión antes de mostrar el mensaje [Fail] puede deberse a la existencia de cierta incompatibilidad con Network Manager y se puede solucionar retrasando la ejecución del paquete nis. Con la instrucción ls /etc/rc2.d puede observarse que a nis se le ha asignado el número 18, es decir, existe S18nis. Es conveniente ejecutarlo con el número 29, lo que se consigue con las instrucciones: sudo update-rc.d -f nis remove sudo update-rc.d nis start Observar la existencia de un punto al final de la segunda instrucción. Con estas instrucciones se reduce enormemente el tiempo que nis tardaba en ejecutarse al anularse los intentos de conexión. En los puntos 11 y 20 puede probarse a especificar el servidor NIS con el formato: domain tiernogalvan.es server MaX60_S Puede restringirse el acceso al servidor añadiendo al fichero /etc/ypserv.securenets las líneas adecuadas. En Internet puede encontrarse información abundante sobre NIS; algunas direcciones interesantes, que describen por ejemplo la configuración de un servidor esclavo, son: https://help.ubuntu.com/community/settingupnishowto cuyos contenidos simplificados se adjuntan como anexo al final del libro. Página.- 145

149 De forma generalizada el servicio NIS se utiliza conjuntamente con NFS haciendo que tanto la autenticación como las carpetas de trabajo se gestionen de forma centralizada. La gestión conjunta no conlleva problemas adicionales a la configuración individual de ambos servicios, siendo indiferente el orden de instalación y configuración. 4.8 Actividades 1. En MaX, crear un usuario con nombre usprueba02, nombre real Anton Martin, perfil de Usuario de escritorio, contraseña pasprueba02 y con un teléfono de contacto. Comprobar los privilegios que se le atribuyen automáticamente, así como el directorio de trabajo y su intérprete de comandos. 2. En MaX, probar a otorgar y a bloquear alguna autorización, por ejemplo la de Cambiar la zona horaria al usuario creado en el punto anterior, comprobando el correcto funcionamiento de la autorización. 3. Crear el usuario Administrador2, con privilegios de administrador, en Windows Server 2008 a través del panel de control. Crear el usuario usprueba01 con las Herramientas administrativas. 4. Crear con el usuario madrid de MaX el directorio /prueba y a continuación borrarlo. 5. Ejecutar el comando users-admin con el usuario usprueba01, en MaX. 6. Limitar el acceso de un usuario a unos dias y horas determinadas. 7. Establecer una cuota de disco para el directorio de los usuarios. 8. En Windows, iniciar una sesión como usuario usprueba01 y ejecutar cmd como usuario Administrador a través del comando runas. 9. En Windows, iniciar una sesión como usuario usprueba01 y ejecutar la Configuración regional y de idioma del Panel de control haciendo uso de la opción Ejecutar como del menú contextual (click con botón derecho). 10. Crear la carpeta /usuarios con los permisos adecuados para que los usuarios puedan crear subcarpetas. Crear el usuario usprueba2 y hacer que su directorio personal sea /usuarios/usprueba02. Ver las carpetas y ficheros ocultos que se crean automáticamente. Conectarse a internet con este usuario y buscar el directorio o carpeta que contenga alguna información acerca de las páginas a las que se ha conectado. 11. Probar a cambiar la apariencia de las ventanas para el usuario usprueba02 y comprobar el resultado. Probar a personalizar el puntero del ratón y los bordes y colores de las ventanas. Página.- 146

150 12. Cambiar el fondo del escritorio del usuario usprueba01 y probar la diferencia entre el estilo mosaico y el ampliación. Aplicar un estilo que permita hacer uso de una degradación vertical entre un color amarillo y uno rojo. 13. Probar los efectos visuales Ventanas Gelatinosas y Ventanas 3D. 14. Enumerar, añadiendo una pequeña descripción y un ejemplo, todas las utilidades del menú Aplicaciones Sistema Preferencias que permitan configurar alguna característica del perfil del usuario. 15. Añadir un usuario al fichero /etc/homealumno/config para que su perfil se reinicie al iniciar la sesión. Comprobar su funcionamiento. 16. Crear con Sabayon un perfil que se aplique a los usuario usprueba02 y usprueba03 y comprobar su funcionamiento. 17. Configurar con máquinas virtuales un servidor y un cliente NFS. 18. Configurar en una máquina virtual un servidor samba que comparta 5 carpetas, cada una de ellas haciendo uso de una herramienta diferente: gedit (editando el fichero de configuración), system-config-samba, swat, webmin y nautilus-share. Verificar el funcionamiento desde una máquina virtual cliente. 19. Configurar con máquinas virtuales un servicio NIS con un servidor maestro, un servidor esclavo y un cliente. 20. Establecer un servidor NFS y NIS con un cliente de ambos servicios. Página.- 147

151 5 ADMINISTRACIÓN DE SOFTWARE DE BASE II. GRUPOS LOCALES 5.1 Aspectos didácticos Objetivos: Conocer los tipos usuarios y de permisos de MaX. Conocer los bits de permisos setuid, setgid y sticky. Manejar las ACL's y las herencias de ACL's. Editar los ficheros de configuración de usuarios, grupos y permisos. Conocer los grupos predeterminados y su función. Documentación. La documentación de este tema se puede ampliar con la mostrada por las páginas man e info de cada una de las instrucciones tratadas. También existen gran cantidad de documentos en Internet que tratan los permisos, ACL's, grupos, etc. que se describen en este tema. Resumen. Se explican los diferentes tipos de permisos y grupos de Linux y cómo se administran, tanto desde la línea de comandos como desde el entorno gráfico. Se profundiza con los bits de permisos setuid, setgid y sticky. También se trata con cierta profundidad las listas de control de acceso (ACL), su manejo y administración. Por último, se muestra una visión bastante general de los grupos predefinidos en el sistema y las autorizaciones y permisos que reportan. Temporización: 10 horas. Página.- 148

152 5.2 Administración de grupos locales La función de los grupos es simplificar la administración de usuarios. Los dos casos fundamentales para los que se generaliza el uso de grupos son: Administración de recursos.- se crean grupos según los diferentes permisos que se puedan asignar a los diferentes recursos. Por ejemplo, al instalar una impresora se puede crear el grupo gr-impresores al que se le otorga permiso para imprimir, y el grupo gr-adminimpre al que se le otorgan permisos para imprimir y para administrar la impresora (borrar trabajos, crear colas, modificar preferencias de impresión, ). Posteriormente, si se desea, se podrá incluir a los usuarios en uno de estos grupos. Administración de usuarios.- se crean los grupos según las características homogéneas de los usuarios. Por ejemplo, los usuarios creados para un grupo determinado de alumnos (1º de bachillerato, A) pueden incluirse en un grupo, gr-bach1a, dado que los derechos y permisos para esos usuarios van a ser similares. Una vez creados los grupos, y dependiendo del S.O., podrán incluirse dentro de los mismos las cuentas de los usuarios e incluso otros grupos. El objetivo último consiste en delimitar los tipos de acceso a los diferentes elementos u objetos (ficheros, directorios, dispositivos, ) de forma organizada y simple Derechos de usuario Linux fue concebido desde un principio como un sistema multiusuario, es decir, para ser usado por varios usuarios al mismo tiempo. Esta es una de las grandes diferencias con respecto al sistema operativo Windows de Microsoft. La característica más importante es la obligación de registrarse en el sistema al inicio de cada sesión de trabajo. Para ello el usuario dispone de un nombre de usuario propio con su contraseña correspondiente. Esta diferenciación entre usuarios impide que personas no autorizadas puedan acceder a archivos que les han sido vetados. Un usuario, por lo general, no puede (o sólo de forma muy limitada) hacer grandes cambios en el sistema como, por ejemplo, la instalación de programas. Tan sólo el superusuario o administrador root dispone prácticamente de derechos ilimitados y posee acceso sin restricciones a todos los archivos. Quien utilice este concepto con precaución y sólo se registre como root cuando sea realmente necesario, puede reducir en gran medida el riesgo de perder datos de forma involuntaria. La amenaza de caballos de Troya o de comandos destructivos introducidos sin querer se reducen de forma significativa dado que normalmente sólo el superusuario puede borrar archivos del sistema o formatear discos duros. Página.- 149

153 Derechos en el sistema de archivos Para controlar el sistema básico de derechos o permisos que los usuarios poseen sobre un determinado archivo o directorio, dentro del sistema de archivos de Linux hay que considerar dos factores: los diferentes tipos de usuarios y los diferentes tipos de permisos. Tipos de usuarios.- existen tres tipos de usuarios: Propietario (owner).- es el usuario que crea el fichero o directorio. Grupo (group).- son los demás usuarios que pertenecen al mismo grupo que el propietario. Los otros (other).- son los demás usuarios que no son el propietario ni pertenecen al grupo del propietario. Tipos de permisos.- existen tres tipos de permisos, cuyo significado es diferente para los ficheros que para los directorios: lectura (read).- Permite ver (leer) el contenido del fichero o del directorio. escritura (write).- Permite modificar el fichero. Aplicado a directorios permite crear nuevos ficheros o borrar los existentes. ejecución (execute).- Permite ejecutar el fichero (si es ejecutable) o situarse en el directorio (hacer que sea el directorio activo). Los diferentes tipos de usuario pueden ser manejados por el usuario administrador root o por el usuario madrid a través del menú Aplicaciones Sistema Administración Usuarios y grupos. Fig 60: Usuarios y grupos Página.- 150

154 Vamos a desarrollar un ejemplo que permita realizar la aplicación de los diferentes conceptos. Para ello vamos a crear 5 usuarios: usprueba01,, usprueba05. Algunos de ellos ya se han creado en prácticas anteriores. Una vez creados los usuarios crearemos tres grupos, en los que incluiremos los usuarios anteriores, de la siguiente forma: gr-prueba12.- contendrá a usprueba01 y usprueba02. gr-prueba34.- contendrá a usprueba03 y usprueba04. gr-prueba5.- contendrá a usprueba05. Los usuarios se guardan en el fichero /etc/passwd, a razón de un usuario por línea, con la información: cuenta:contraseña:uid:gid:nombre_completo:directorio:intérprete El significado de cada campo es el siguiente: Cuenta.- la cuenta de usuario. Contraseña.- aparece una x puesto que las contraseñas, cifradas, se encuentran en el fichero /etc/shadow. Dependiendo del sistema de encriptación puede utilizarse un fichero diferente. UID.- número de identificación asignado al usuario. GID.- número de identificación del grupo principal al que pertenece el usuario. Nombre_completo.- nombre completo del usuario. Directorio.- directorio de trabajo del usuario. Intérprete.- nombre del programa intérprete de comandos que utiliza el usuario. Durante la operación de creación del usuario se introducen los valores de algunos de los campos descritos, pero otros se toman por defecto según los valores de configuración del fichero /etc/adduser.conf. Por ejemplo, si se desea que al crear un usuario se cree un grupo con el mismo nombre, con el GID igual al UID y que sea asignado como grupo principal del usuario, en /etc/adduser.conf deberá establecerse USERGROUPS=yes, que es la configuración establecida por defecto. Si por el contrario se desea que a los usuarios que se crean se les asigne por defecto, como grupo principal, el grupo users cuyo GID es el 100, deberán establecerse USERGROUPS=no y USERS_GID=100 (cada parámetro en una línea). Siguiendo con el ejemplo anterior, se puede comprobar el contenido de los ficheros afectados (/etc/passwd, /etc/shadow y /etc/adduser.conf) con las instrucciones: cat /etc/passwd sudo cat /etc/shadow cat /etc/adduser.conf (Se necesitan permisos de usuario administrador) Página.- 151

155 Los datos correspondientes a los grupos se encuentran en el fichero /etc/group. Cada línea de este fichero contiene: nombre_grupo:clave:gid:otros_usuarios cuyo significado es: Nombre_grupo.- obviamente el nombre del grupo. Clave.- no se suele utilizar. GID.- número identificador del grupo. Otros_usuarios.- se utiliza cuando un grupo contiene más de un usuario y se especifican separados por comas. En el ejemplo, comprobar el contenido de /etc/group (cat /etc/group). De todos los ficheros nombrados anteriormente el único que no debe modificarse es el que contiene las claves encriptadas (/etc/shadow). Por último, el directorio /etc/skel contiene las carpetas y ficheros que se incluirán de forma automática en la carpeta de trabajo al crear un usuario. Con la configuración por defecto, por cada usuario que se crea, se crea un grupo con el mismo nombre y se le atribuye la categoría de grupo principal del usuario. Puede establecerse que los usuarios nuevos se incorporen al grupo users y no se creen grupos adicionales nuevos editando y modificando /etc/adduser.conf como se ha descrito anteriormente, con la instrucción sudo editor /etc/adduser.conf. Desde la línea de comandos pueden utilizarse algunas de las siguientes instrucciones para manejo de usuarios y grupos: adduser, deluser, addgroup, delgroup, cuya configuración se encuentra en /etc/adduser.conf. useradd, userdel, usermod, groupadd, groupdel, cuyo fichero de configuración es /etc/ login.defs. groups.- muestra los grupos a los que pertenece el usuario activo. Para asignar los diferentes permisos (lectura (r), escritura (w), ejecución (x)) a los distintos tipos de usuario (propietario (u), grupo (g), otros (o)) puede hacerse uso de las propiedades del fichero o carpeta, mediante la ficha Permisos. Página.- 152

156 Fig 61: Propiedades de un fichero La comprobación de los permisos de los ficheros y directorios puede hacerse mediante la instrucción ls -l. En la figura se muestra un ejemplo. Fig 62: Resultado de la instrucción "ls -l" La información relativa a los permisos se encuentra en las columnas primera, tercera y cuarta: La primera columna está formada por 10 caracteres, cuyo significado es el siguiente: El primer carácter indica el tipo de fichero, siendo los mas comunes: - para ficheros normales, d para directorios, l para links o accesos directos, b para dispositivos de bloques, c para dispositivos de caracteres, etc. Los caracteres 2, 3 y 4 indican los permisos del usuario propietario: El carácter 2º puede ser una r, que indica permiso de lectura, o un guión (-), que indica ausencia del permiso de lectura. El carácter 3º puede ser una w, que indica permiso de escritura, o un guión (-), que indica ausencia del permiso de escritura. Página.- 153

157 El carácter 4º puede ser una x, que indica permiso de ejecución, o un guión (-), que indica ausencia del permiso de ejecución. Este permiso puede ignorarse para ficheros que no son ejecutables. Los caracteres 5, 6 y 7 indican los permisos del grupo, es decir, de los usuarios que pertenecen al grupo principal del usuario propietario. Su significado es similar al de los caracteres 2, 3 y 4, es decir, r significa permiso de lectura, w de escritura, x de ejecución y - ausencia del permiso correspondiente. Los caracteres 8, 9 y 10 tienen un significado similar a los tres anteriores pero para los demás usuarios, es decir, para aquellos usuarios que no son el propietario ni pertenecen al grupo principal del usuario propietario. La tercera columna muestra el nombre del usuario propietario del fichero. La cuarta columna muestra el grupo principal al que pertenece el usuario propietario. Siguiendo con el ejemplo, vamos a comprobar los permisos que se asignan por defecto a los ficheros y directorios de nueva creación. Para ello, iniciamos una sesión como usuario usprueba01 y creamos el fichero fich y el directorio direc dentro de la carpeta Documentos. Desde el entorno gráfico no tiene complicaciones. Desde la linea de comandos habría que ejecutar las instrucciones: cd Documentos ls > fich mkdir direc ls -l Para cambiar el directorio activo. Crea el fichero fich. Crea el directorio direc. Visualiza el contenido del directorio con los permisos. Entre las instrucciones que permiten modificar el propietario, el grupo y los permisos, tenemos: chown.- permite cambiar el propietario y el grupo de los ficheros y directorios. chgrp.- permite cambiar el grupo de los ficheros y directorios. chmod.- permite cambiar los permisos de los ficheros y directorios. Por ejemplo: chown usprueba03:gr-prueba34 fich Cambia el propietario y el grupo de fich. chgrp gr-prueba5 fich Cambia el grupo de fich. chmod g+w fich Añade al grupo el permiso de escritura. Página.- 154

158 Esta última instrucción en su forma más general va acompañada de una expresión de tres caracteres cuyo significado es: El primer carácter identifica a quien afecta el cambio, pudiendo ser: u para el propietario, g para el grupo, o para los otros y a para todos. Puede utilizarse una combinación de ellos. El segundo carácter expresa si se añade el permiso (+), se quita (-) o se establece (=). El tercer carácter identifica el permiso, que será lectura (r), escritura (w) o ejecución (x). Puede utilizarse una combinación de varios caracteres. Pueden utilizarse una o varias expresiones para uno o varios ficheros, por ejemplo: chmod go-x u-w direc Puede utilizarse una notación numérica para hacer referencia a los diferentes permisos de los diferentes usuarios: teniendo en cuenta la forma en que muestra los permisos la instrucción ls -l resulta que los nueve caracteres de la columna relativa a los permisos puede dividirse en tres grupos de tres caracteres cada uno conteniendo cada grupo los permisos del usuario propietario, los del grupo y los de los demás respectivamente. Cada grupo de tres caracteres tendrá el carácter correspondiente al permiso para expresar la posesión del mismo, o un guión que expresa la ausencia, por ejemplo rwx rw- r--. Si se cambian las letras por números 1 y los guiones por 0 se obtiene una notación en binario de la forma: Pasando cada grupo de tres dígitos a decimal se obtiene Algunos ejemplos más serían: rw- rw- r-rw- r Para hacer la conversión obviando el paso a binario se puede suponer que el permiso de lectura (r) vale 4, el de escritura 2 y el de ejecución 1. La instrucción chmod admite esta notación y para establecer los permisos rwx rw r-al fichero fich puede utilizarse: chmod 764 fich. A los ficheros y directorios que crea un usuario se les asigna unos permisos por defecto que pueden ser modificados mediante la instrucción umask. En umask se utiliza una expresión numérica que cumple la relación: Permisos_base - Expresión_umask = Permisos_reales Página.- 155

159 Los permisos base para los directorios son 777 (rwx rwx rwx: lectura, escritura y ejecución para todos) y para los ficheros son 666 (rw- rw- rw-: lectura y escritura para todos). Así, la instrucción: umask 022 establecerá para los directorios que se creen a partir de su ejecución los permisos reales: = 755 (rwx r-x r-x) y para los ficheros: = 644 (rw- r-- r--) umask cambia el valor de los permisos por defecto de forma temporal mientras el usuario se encuentra activo en una consola, si cierra la consola o la sesión se perderán los efectos de umask. Para que los efectos de umask sean permanentes hay que introducir la instrucción en el archivo.bashrc de la carpeta /home/nombre_usuario y así afectará siempre al usuario. Para que afecte a todos los usuarios del sistema hay que introducirla en el fichero /etc/profile; para modificar este último fichero hay que tener permisos de root. Puede comprobarse el valor establecido actualmente en dichos ficheros mediante las instrucciones: cat /etc/profile grep umask cat /home/usprueba01/.bashrc grep umask Ampliación de derechos El bit setuid.- hay situaciones en las que los derechos básicos son demasiado restrictivos. En estos casos, existen en Linux opciones adicionales que permiten cambiar temporalmente el usuario y grupo de identidad actual para realizar una determinada acción. Por ejemplo, el programa passwd requiere normalmente derechos de root para acceder a /etc/passwd. Este archivo contiene información importante como por ejemplo los directorios personales de los usuarios y los IDs de usuarios y grupos. Un usuario normal no podría cambiar passwd porque sería demasiado peligroso conceder a todos los usuarios acceso directo a este archivo. La solución a este problema se encuentra en el mecanismo setuid. Setuid (Set User ID) es un atributo especial de archivo que el sistema regula, con el fin de que se ejecuten los programas seleccionados con una determinada identificación de usuario previamente indicada. Veamos el comando passwd: -rwsr-xr-x 1 root root :49 /usr/bin/passwd Página.- 156

160 En el ejemplo se puede ver el bit s definido para los permisos de usuario. Gracias al bit setuid, todos los usuarios que inicien el comando passwd lo ejecutarán como usuario root. El bit setgid.- el atributo setuid es válido para usuarios, pero existe un atributo equivalente para grupos: setgid. Cuando se asigne a un programa, este se ejecutará con la identificación de grupo definida, independientemente del usuario que lo haya arrancado. Por eso todos los archivos y subdirectorios que se crean dentro de este directorio pertenecen al mismo grupo que el directorio. Veamos el siguiente ejemplo: drwxrws--- 2 usprueba01 gr-prueba :23 copia Se puede ver el bit s definido para los permisos de grupo, lo que significa que el propietario del directorio y los miembros del grupo gr-prueba12 pueden acceder a este directorio. Los usuarios que no son miembros de este grupo se mapean al grupo correspondiente. El ID de grupo efectivo de todos los archivos escritos esgr-prueba12. Por ejemplo, una copia de seguridad que se ejecute con el ID de grupo gr-prueba12 podrá acceder a este directorio sin tener permisos de root. El bit sticky.- aquí se debe diferenciar si se trata de un programa ejecutable o de un directorio. En el caso de un programa, un archivo marcado con este bit se carga a la memoria RAM para no tener que obtenerlo del disco duro cada vez que se utiliza. Hoy en día, este atributo se usa en raras ocasiones porque los discos duros modernos cumplen con creces los requisitos de velocidad. Ahora bien, si se asigna este atributo a un directorio, este impide que los usuarios borren los archivos. (En directorios con sticky bit, los usuarios sólo puede eliminar archivos que posean ellos mismos). Los ejemplos típicos son los directorios /tmp y /var/tmp : drwxrwxrwt 15 root root :40 tmp El comando chmod permite manejar estos permisos de forma similar a como hace con los de lectura (r), escritura (w) y ejecución (x). Se utiliza para los bits setuid y setgid la letra s y para el bit sticky la letra t. Para la notación numérica se antepone a los tres vistos anteriormente un dígito cuyo valor es la suma de los valores individuales siguientes: 4 para el bit setuid, 2 para el bit setgid y 1 para el bit sticky. Por ejemplo: chmod u+s fich chmod g-s fich chmod o+t direc chmod 6754 fich Añade a fich el bit setuid. Quita a fich el bit setgid. Añade al directorio direc el bit sticky. Establece para fich los siguientes permisos: El 6 establece los bits de setuid y setgid. El 7 establece los permisos de lectura, escritura y ejecución para el propietario. El 5 establece los permisos de lectura y ejecución para el grupo. El 4 establece el permiso de lectura para los otros. Página.- 157

161 5.2.2 Listas de control de acceso De manera tradicional, para cada objeto en Linux se definen tres grupos de permisos. Estos grupos reflejan los permisos de lectura (r), escritura (w), y ejecución (x) para las tres clases de usuarios: propietario del archivo (owner), grupo (group) y el resto (other). Además es posible definir los bits setuid, setgid y sticky. Para la mayoría de los casos que se dan en la práctica, este escueto concepto es más que suficiente. En el caso de escenarios complejos o aplicaciones más avanzadas, los administradores de sistemas debían echar mano antiguamente de distintos trucos para evitar las limitaciones del concepto de permisos tradicional. Las ACLs intervienen en las situaciones en las que el concepto tradicional de permisos para archivos resulta insuficiente. Estas permiten asignar permisos a otros usuarios distintos del propietario y a otros grupos distintos del grupo al que pertenece el propietario. Las listas de control de acceso son una característica del kernel de Linux y actualmente están soportadas por, al menos, ReiserFS, Ext2, Ext3, Ext4, JFS y XFS. Con su ayuda es posible llevar a la práctica complejos escenarios sin que sea necesario implementar complicados modelos de permisos a nivel de aplicaciones. Para ilustrar las ventajas de las listas de control de acceso puede tomarse el ejemplo de un servidor Windows que va a ser reemplazado por un servidor Linux. Algunas de las estaciones de trabajo conectadas seguirán funcionando con Windows. El sistema Linux, por su parte, proporciona a los clientes Windows servicios de servidor de archivos y de impresión por medio de Samba. Samba soporta las listas de control de acceso, por lo que los permisos de usuarios pueden ser configurados tanto en el servidor Linux como en Windows a través de una interfaz gráfica de usuario. La herramienta winbindd permite incluso definir permisos para usuarios que sólo existen en el dominio Windows y no disponen de cuenta de usuario en el servidor Linux. Luego, con las ACL's se amplían los tipos de usuarios con dos nuevas categorías: Los usuarios especificados o nombrados.- si hasta ahora, a nivel individual, solamente se le asignaban permisos al usuario propietario, con las ACL's se podrán añadir permisos a otros usuarios individuales. Por ejemplo, se podrán especificar permisos del tipo: Pedro lectura, Juan lectura y escritura, etc. Los grupos especificados o nombrados.- de forma similar a los usuarios, podrán especificarse permisos para otros grupos, por ejemplo: gr-contables lectura, grnominas lectura y escritura, etc. Con lo cual, con las ACL's existen cinco tipos de usuarios: el propietario, los usuarios nombrados, el grupo de usuarios del propietario, los grupos nombrados y los otros. Página.- 158

162 Además de establecer permisos para cada tipo de usuario, puede especificarse una máscara que limita los permisos otorgados a los usuarios nombrados, al grupo del propietario y a los grupos nombrados, es decir, limita los permisos de todos los usuarios excepto del propietario y de los otros. La limitación consiste en que si el permiso no se encuentra en la máscara no se aplica. Por ejemplo, si Juan (que no es el propietario) tiene asignado sobre un fichero permisos de lectura y escritura pero se crea una máscara con permiso de lectura, el permiso real de Juan es de lectura. Las ACL's están formadas por una serie de entradas (listas) y cada entrada especifica un permiso para un tipo de usuario. Por ejemplo: user: : rwx Otorga al propietario lectura (r), escritura (w) y ejecución (x). user:usprueba02:rw Otorga a usprueba02 r y w. group: :rw Otorga al grupo del propietario r y w. group:gr-prueba34:rw Otorga a los usuarios del grupo gr-prueba34 r y w. mask: :r Asigna una máscara con permiso de lectura. other: : Otorga a los otros permiso de lectura. En el ejemplo, la máscara limita los permisos de usprueba02, del grupo de usuarios del propietario y del grupo gr-prueba34 al permiso de lectura (r). También se puede observar como las entradas correspondientes a los usuarios y grupos nombrados llevan especificado el nombre correspondiente entre los dos caracteres dos puntos :. Para hacer uso de las ACL's hay que tener en cuenta: 1. El núcleo de linux debe soportar y estar compilado para soportar ACL. MaX v.5.0 está preparado para utilizar ACL's. Puede comprobarse mediante la instrucción: grep POSIX_ACL /boot/config-`uname -r` La comilla utilizada en la instrucción es la que está situada a la derecha de la letra p en el teclado. Aparecerán varias líneas entre las que se encontrarán las que se refieran al tipo de sistema de archivos que se está utilizando con valor y : CONFIG_EXT3_FS_POSIX_ACL=y CONFIG_EXT4_FS_POSIX_ACL=y 2. El sistema de ficheros tiene que montarse con el atributo acl. Los atributos de montaje se especifican en el fichero /etc/fstab. Los sistemas de ficheros montados con acl tendrán la palabra clave "acl" en las opciones de montaje de sus entradas en el fichero. Página.- 159

163 El siguiente ejemplo lo muestra: # /etc/fstab: static file system information. # # <file system> <mount point> <type> <options> <dump> <pass> # / was on /dev/sda6 during installation UUID= / ext4 relatime,errors=remount-ro 0 1 # /home was on /dev/sda7 during installation UUID=6b /home ext4 relatime,acl 0 2 En este caso sda7 tiene soporte acl en el punto de montaje /home; si se quiere hacer lo mismo en sda6 habría que modificar la línea correspondiente para que tuviera la forma: UUID= / ext4 relatime,acl,errors=remount-ro 0 1 Una vez modificado /etc/fstab hay que volver a montar el sistema de ficheros reiniciando el equipo o mediante la instrucción: mount -o remount,acl /dev/sda6 3. Deben instalarse utilidades que permitan el manejo de las ACL's. Puede comprobarse con Synaptic si se encuentran instalados los paquetes acl, libacl1 e eiciel, instalándolos si fuera necesario y reiniciando a continuación el sistema. Una vez realizadas las comprobaciones, modificaciones e instalaciones referidas en los tres pasos anteriores pueden realizarse algunas pruebas. Por ejemplo, que usprueba02 cree en su directorio de trabajo, en la subcarpeta Documents el fichero f1 y el directorio d1. Comprobar que ahora en las propiedades de f1 y d1 aparece la ficha Lista de control de acceso. Añadir para f1 el permiso de lectura y escritura para el usuario usprueba3. Comprobar que ahora el usuario usprueba03 puede modificar el fichero f1. Aplicar a d1 la ACL por defecto y comprobar los permisos que se añaden. Comprobar los valores iniciales de la máscara. Comprobar que el programa eiciel permite el manejo de las ACL's de forma similar a como lo hace la ficha Lista de control de acceso. Página.- 160

164 Fig 63: ACL's Control de ACL 's desde la línea de comandos La instrucción ls -l indica la existencia de ACL añadiendo a la columna de los permisos el carácter +. Fig 64: El carácter "+" indica existencia de ACL Página.- 161

165 La instrucción getfacl muestra la ACL del fichero o directorio especificado. Por ejemplo: Fig 65: Resultado de "getfacl f1" Las tres primeras líneas muestran el nombre del fichero, el del usuario propietario y el del grupo. Las líneas siguientes muestran los permisos, incluida la máscara y los permisos de los otros. Cada entrada de la ACL se compone de tres campos separados por : : El primer campo puede ser: user (u), group (g), other (o), mask (m). El segundo campo puede estar vacío e identificará al propietario o contendrá el nombre o el nº identificador del usuario (UID) o grupo (GID). El tercer campo identifica los permisos y será una cadena compuesta de los caracteres r, w, x, -, según corresponda. Las instrucciones chown y chgrp permiten cambiar el propietario y el grupo del fichero o directorio. Hay que recordar que para utilizar estas instrucciones hay que disponer de los permisos adecuados. Puede hacerse una clasificación de las ACL's según contengan o no una entrada para la máscara. Esta entrada aparecerá al asignarle un valor o de forma automática al añadir una entrada de usuario o grupo especificado (usuario o grupo distinto del propietario). Las ACL's estándar no contienen entradas para la máscara, es decir, solamente contienen entradas para el propietario, el grupo y los otros. Su correspondencia con los permisos estándar es trivial. Las modificaciones desde el entorno gráfico, o a través de la instrucción chmod, de los permisos estándar se trasladan automáticamente a las ACL's y viceversa. Página.- 162

166 Las ACL's extendidas son aquellas que contienen la entrada de la máscara. En éstas, la correspondencia que se establece entre los permisos estándar y las entradas ACL es la siguiente: Entrada ACL Ej. ACL Propietario user: :rw- Usuario especificado user:pepe:rw Grupo propietario group: : rw Grupo especificado group:gr1:rw Máscara Otros Ej. permisos Permisos rw- Propietario mask: : rw rw- Grupo propietario other: : r r-- Otros Es decir, las entradas de usuario especificado, grupo del propietario y grupo especificado no tienen correspondencia con los permisos estándar, las entradas del propietario y de los otros tienen correspondencia con sus homólogos y la entrada de la máscara se corresponde con la del grupo del propietario de los permisos estándar. La comprobación de las correspondencias de la tabla es simple: en la figura anterior (a la tabla) se observa que el fichero f1 tiene un ACL extendida pues contiene la entrada de máscara. Si se ejecuta la instrucción: chmod g=rw f1 y se comprueba de nuevo su ACL, se observará que la entrada que ha sido modificada ha sido la correspondiente a la máscara, no la correspondiente al grupo. Si esta misma comprobación se realiza con un fichero con ACL estándar se verá que la entrada ACL modificada es la del grupo, puesto que la de la máscara no existe. La instrucción chacl permite cambiar, examinar o eliminar una ACL existente. Por ejemplo: chacl u::rwx,u:usprueba03:rw-,g::rw-,m::rw-,o::r f1 donde se puede observar que hay que definir todas las entradas (u, g, m y o) de la ACL. Esta instrucción tiene varias opciones entre las que se encuentran -B, -D y -R que permiten borrar entradas. La instrucción setfacl sobreescribe una ACL anterior, o, con la opción -m, permite modificarla. Por ejemplo, para añadir a la ACL de f1 el permiso de lectura y escritura para el usuario usprueba04, hay que ejecutar la instrucción: setfacl -m u:usprueba04:rw- f1 Página.- 163

167 El resultado podrá verse con getacl f1. Además, setfacl puede modificar la entrada de la máscara de forma automática para que la entrada especificada pueda tener efecto, esto es, si se añade un nuevo usuario con permiso rw pero la máscara estaba establecida con el valor r, se modifica automáticamente a rw para que la nueva entrada pueda ser efectiva (salvo que se establezca lo contrario mediante la opción -n ). Para obtener una descripción completa de estas instrucciones puede hacerse uso del comando man. Directorios con ACL's predeterminados Los directorios pueden ser equipados con un tipo especial de ACLs, las ACLs predeterminadas. Estas definen los derechos que heredan los subobjetos de estos directorios en el momento de su creación. La ACL predeterminada afecta tanto a los subdirectorios como a los archivos. Los permisos de acceso en la ACL predeterminada son heredados de forma distinta por archivos y subdirectorios: Un subdirectorio hereda la ACL predeterminada del directorio superior como propia default ACL y además como access ACL. Un archivo hereda la ACL predeterminada como propia access ACL. Todas las llamadas del sistema (system calls) que crean objetos del sistema utilizan un parámetro mode. Este parámetro se encarga de definir los permisos de acceso sobre el nuevo objeto del sistema: si el directorio superior carece de ACL predeterminada, los permisos resultantes son los introducidos en el parámetro mode menos los permisos asignados en umask. Si existe una ACL predeterminada para el directorio superior, se asignan al objeto los bits de permiso resultantes de la intersección de los permisos del parámetro mode y de los que contiene la ACL predeterminada. En este caso no se tiene en cuenta umask. Página.- 164

168 Fig 66: ACL's predeterminadas A través de la ficha Lista de control de acceso de las propiedades de una carpeta, con el botón ACL por defecto y la Lista de participantes por defecto puede establecerse la ACL predeterminada o por defecto. También pude hacerse desde la línea de comandos como se muestra en los siguientes ejemplos: 1. Partimos del directorio d2 cuya información de la instrucción getfacl d2 es: # file: d2 # owner: usprueba02 # group: grprueba12 user: : rwx group: : r x other: : r - x 2. Se añade una ACL predeterminada al directorio d2: setfacl -d -m group:grprueba34:r x -d indica que es una entrada predeterminada, -m indica modificación. Página.- 165

169 La ACL ahora es: getfacl d2 # file: d2 # owner: usprueba02 # group: grprueba12 user: : rwx group: : r x other: : r x default:user: : rwx default:group: : r x default:group:grprueba34:r x default:mask:: r x default:other: : r x La salida de getfacl contiene tanto la access ACL como la ACL predeterminada. Todas las líneas que comienzan por default forman la ACL predeterminada. Aunque en el comando setfacl sólo se había indicado una entrada para el grupo grprueba34 en la ACL predeterminada, setfacl ha copiado automáticamente el resto de entradas de la access ACL para construir una ACL predeterminada válida. Las ACL's predeterminadas no influyen de manera directa en los permisos de acceso, sino que sólo tienen efecto durante la creación de objetos del sistema. En términos de herencia, sólo se tiene en cuenta la ACL predeterminada del directorio superior. 3. A continuación se creará la subcarpeta subd2 dentro de d2 que heredará la ACL predeterminada: mkdir d2/subd2 getfacl d2/subd2 # file: d2/subd2 # owner: usprueba02 # group: grprueba12 user: : rwx group: : r x group:grprueba34:r x mask: :r x other: : r x default:user: : rwx default:group: : r x default:group:grprueba34:r x default:mask:: r x default:other: : r x Página.- 166

170 Como era de esperar, el subdirectorio recién creado subd2 tiene los permisos de la ACL predeterminada del directorio superior. La access ACL de subd2 es una réplica exacta de la ACL predeterminada de d2. Lo mismo sucede con la ACL predeterminada, que a su vez se pasará a los subobjetos de este directorio. 4. Ahora creamos un fichero en d2 con la instrucción ls > d2/f2. La instrucción ls -l d2/f2 mostrará: - rw - r - - r usprueba02 grprueba :19 d2/f2 La instrucción getfacl d2/f2 mostrará: # file: d2/f2 # owner: usprueba02 # group: grprueba12 user: : rwgroup: : r x group:grprueba34:r x mask: :r - other: : r - - #effective:r - #effective:r - - El parámetro mode con el que se crean los ficheros es 0644, lo que significa que los nuevos archivos se crean con permisos de lectura y escritura para el propietario y lectura para el grupo y los otros, a no ser que existan otras restricciones por parte de umask o de la ACL predeterminada. En nuestro ejemplo esto significa que todos los permisos que no están incluidos en mode serán eliminados de las entradas ACL correspondientes. Aunque no se ha eliminado ningún permiso de la entrada ACL de grupo, la entrada de máscara puede ser adaptada para que los bits de permiso definidos por mode no sean enmascarados. De este modo se garantiza que un compilador, por ejemplo, pueda funcionar sin problemas con ACLs. Puede crear archivos con permisos de acceso restringidos y a continuación marcarlos como ejecutables. El mecanismo mask se ocupa de que sólo los usuarios y grupos adecuados puedan ejecutar los archivos. Evaluación de una ACL Una vez explicado el funcionamiento de las herramientas de configuración más importantes de las ACLs, a continuación se describe brevemente el algoritmo de evaluación al que se somete cualquier proceso o aplicación antes de que se le proporcione acceso a un objeto del sistema protegido por ACLs. Las entradas ACL son analizadas en el siguiente orden: owner, named user, owning group o named group y other. El acceso se regula a través de la entrada que mejor se ajuste al proceso. Página.- 167

171 El mecanismo se complica cuando un proceso pertenece a más de un grupo, ya que potencialmente podrá ajustarse a varias entradas group. En este caso se selecciona una de las entradas adecuadas con los permisos requeridos. Para el resultado final de acceso autorizado es irrelevante cuál de estas entradas ha sido seleccionada. Si ninguna de las entradas group apropiadas contiene los permisos correctos, se selecciona una cualquiera que provocará el resultado final de acceso denegado. Como se ha mencionado en los apartados anteriores, las ACLs permiten implementar complejos escenarios de permisos que cumplen a la perfección los requisitos de las aplicaciones más actuales. El concepto tradicional de permisos y las ACLs pueden combinarse de forma muy hábil. Los comandos de archivos básicos (cp, mv, ls, etc.) soportan las ACLs así como Samba. En cambio, numerosos editores y administradores de archivos (ej. Konqueror) carecen de soporte ACL. Así, las ACLs todavía se pierden al copiar archivos con Konqueror. Al procesar con un editor un archivo que contenga una access ACL, el que la access ACL se mantenga o no tras finalizar el proceso de edición depende del modo backup del editor utilizado: Si el editor escribe los cambios en el archivo original, la access ACL se mantiene. Si el editor crea un nuevo archivo que recibe el nombre del antiguo archivo al finalizar los cambios, es posible que se pierdan las ACL a no ser que el editor las soporte. En el campo de los programas de copias de seguridad, no existe (con la excepción del archivador star) ningún programa que pueda garantizar el mantenimiento total de las ACLs Gestión de grupos Una de las formas más sencillas de gestionar los grupos en MaX es mediante la herramienta gráfica Usuarios y grupos accesible a través del menú Aplicaciones Sistema Administración. Una vez que se desbloquea la ventana y se pulsa sobre el botón Gestionar grupos aparece la ventana de Configuración de los grupos que permite añadir, borrar y, a través del botón Propiedades, establecer los usuarios que pertenecen al grupo previamente seleccionado. Fig 67: Gestión de grupos Página.- 168

172 Desde el modo comando, adduser y addgroup permiten añadir usuarios y grupos al sistema. La operación de estos comandos se configura en el fichero /etc/adduser.conf. Veamos algunos ejemplos: adduser usprueba07 añade el usuario usprueba07 al sistema. El sistema pedirá alguna información adicional sobre el usuario y un password o clave. Por defecto, se crea un grupo con el nombre del usuario y éste será el grupo principal o por defecto. adduser - - ingroup users usprueba08 añade el usuario usprueba08 al sistema estableciendo users como su grupo principal. adduser usprueba07 cdrom añade el usuario usprueba07 (previamente creado) al grupo cdrom. Cuando el número de usuarios es numeroso y heterogéneo, puede ser necesario añadir nuevos grupos. Esto se hace con el comando addgroup. Por ejemplo: addgroup grprueba78 añade al sistema un grupo llamado grprueba78. Alternativamente a los comandos anteriores, se pueden añadir usuarios y grupos empleando useradd y groupadd. Estos comandos leen información de configuración del fichero /etc/login.defs. Para eliminar usuarios y grupos se emplean userdel y groupdel respectivamente. Por ejemplo: userdel usprueba08 elimina el usuario usprueba08. Si además se indica la opción -r, también se borrará el directorio personal del usuario con todo su contenido. groupdel grprueba78 elimina el grupo grprueba78. Para modificar las características de los usuarios y grupos se emplean los comandos usermod y groupmod. Algunos ejemplos: usermod -d /home/alumnos/usprueba07 -m cambia el directorio de inicio del usuario usprueba07 para que sea /home/alumnos/usprueba07. La opción -m hace que mueva el contenido del antiguo directorio al nuevo emplazamiento. Página.- 169

173 usermod -g alumnos usprueba07 cambia el grupo inicial del usuario usprueba07 para que sea alumnos. usermod -l pepe usprueba07 cambia el nombre del usuario usprueba07. El nuevo nombre es pepe. groupmod -n alu alumnos cambia el nombre del grupo alumnos a alu. Algunos ficheros relacionados con las cuentas de usuario son: /etc/passwd: contiene información sobre cada usuario: ID, grupo principal, descripción, directorio de inicio, shell, etc. También contiene el password encriptado, salvo que se usen shadow passwords. /etc/shadow: contiene los passwords encriptados de los usuarios cuando se emplean shadow passwords. /etc/group: contiene los miembros de cada grupo, excepto para el grupo principal, que aparece en /etc/passwd. /etc/skel: directorio que contiene el contenido del directorio de los nuevos usuarios. Página.- 170

174 5.3 Grupos predeterminados Además de los grupos creados por el usuario existen otros grupos especiales que sirven fundamentalmente para: Establecer los privilegios y controlar los accesos a los dispositivos mediante los permisos adecuados a ficheros de dispositivos situados en /dev. Fig 68: Privilegios predeterminados A este tipo pertenecen los siguientes grupos predeterminados: plugdev.- permite acceder automáticamente a dispositivos de almacenamiento externo. admin.- permite administrar el sistema. video.- permite capturar vídeo de TV o de webcams, y usar aceleración 3D. sambashare.- permite compartir archivos con la red local. dip.- permite conectar a internet con un modem. netdev.- permite conectarse a redes ethernet e inalámbricas. lpadmin.- permite configurar impresoras. fax.- permite enviar y recibir faxes. adm.- permite monitorizar los registros del sistema. fuse.- permite montar sistemas de archivos es espacio de usuario. Página.- 171

175 audio.- permite usar dispositivos de sonido. Algunos ejemplos de estos dispositivos pueden ser: /dev/dsp, /dev/mixer, /dev/sndstat. dialout.- permite usar modems. Corresponde a dispositivos conectados en los puertos serie, por ejemplo, /dev/ttys1. cdrom.- permite usar unidades de CD-ROM. El dispositivo concreto afectado depende de donde estén conectadas las unidades de CD-ROM, por ejemplo, /dev/hdc. tape.- permite usar unidades de cinta. vboxusers.- permite usar VirtualBox. Para dar acceso a un usuario a uno de estos servicios, basta con añadirlo al grupo adecuado. Alternativamente, para sistemas pequeños suele ser mejor desproteger los dispositivos adecuados para que todos los usuarios puedan usarlos, evitando tener que recordar añadir usuarios a los grupos adecuados. Por ejemplo, para dar acceso de lectura al CD ROM, suponiendo que esté en /dev/hdc, podría utilizarse la instrucción: chmod a+r /dev/hdc Permitir el uso de algunas aplicaciones instaladas. Al instalar algunas aplicaciones, automáticamente se crea un grupo de tal forma que aquellos usuarios que quieran tener acceso a la aplicación deben ser incluidos en dicho grupo. Como ejemplos podemos tener los grupos: mysql, ssh, tcos, etc. Para poder visualizar el conjunto de grupos creados puede utilizarse la instrucción: cat /etc/group Y para conocer los grupos a los que pertenece un usuario puede utilizarse la instrucción: groups nombre_usuario Página.- 172

176 5.4 Actividades 1. Crear un usuario editando los ficheros /etc/passwd y /etc/group. A continuación asignarle una clave haciendo uso de la utilidad del entorno gráfico Usuarios y grupos. Comprobar si esta utilidad ha realizado cambios en los ficheros anteriores. 2. Consultar la información que la instrucción man muestra acerca de los comandos chown, chgrp y chmod. Probar exhaustivamente sus diferentes formatos. 3. Desarrollar dos ejemplos que permitan comprobar el funcionamiento del bit setuid, otros dos el bit setgid y otros dos el bit sticky. 4. Desarrollar dos ejemplos, uno con un fichero y otro con un directorio, donde la máscara de sus ACL's respectivas limite los accesos de los usuarios y grupos. 5. Crear un fichero y comprobar su ACL. Añadir una entrada de usuario a la ACL y comprobar que automáticamente aparece la entrada de máscara. 6. Comprobar el funcionamiento de la opción -n de la instrucción setfacl. 7. Crear un directorio, asignarle una ACL por defecto. Crear dentro del directorio un subdirectorio y un fichero y comprobar que se cumple la herencia de ACL's. Modificar las ACL's desde el entorno gráfico y desde la línea de comandos. 8. Comprobar si la pertenencia al grupo admin autoriza el uso de la instrucción sudo. 9. Hacer un resumen de las instrucciones tratadas en el tema. 10. Hacer un resumen de los ficheros de configuración vistos. Página.- 173

177 6 ADMINISTRACIÓN DE SOFTWARE DE BASE III. CONFIGURACIÓN DE LA RED 6.1 Aspectos didácticos Objetivos: Conocer los parámetros de configuración del protocolo TCP/IP. Saber asignar los parámetros de configuración del protocolo TCP/IP adecuados según las necesidades de una red. Configurar mediante el entorno gráfico el protocolo TCP/IP. Saber en qué ficheros se guardan los parámetros de configuración de TCP/IP. Ejecutar los comandos de parada y lanzamiento del funcionamiento de un interface de red. Documentación. La documentación de este tema se puede ampliar a través de la ayuda del S.O. Resumen. La parámetros fundamentales de configuración del protocolo TCP/IP son la dirección IP, la máscara de (sub)red, la puerta de enlace y los DNS's. En este tema se explica exhaustivamente el significado de cada uno de estos parámetros, se realizan prácticas y se proponen actividades de apoyo a su comprensión. También se incluyen apartados que cuentan el funcionamiento de la nueva versión del protocolo TCP/IP: ipv6. Por último, se comentan los archivos de configuración fundamentales y algunos de los scripts encargados de lanzar o controlar determinados servicios. Temporización: 20 horas. Página.- 174

178 6.2 Fundamentos de conexión a redes MaX utiliza al igual que otros sistemas operativos un protocolo de comunicación que se llama TCP/IP. En realidad no se trata de un solo protocolo de red sino de una familia de protocolos con diferentes prestaciones. Para el intercambio de datos vía TCP/IP entre dos ordenadores con Linux, existen los siguientes servicios: TCP.- (Transmission Control Protocol) es un protocolo asegurado orientado a la conexión. Desde el punto de vista de las aplicaciones, los datos se transmiten como un caudal y es el sistema operativo el que se encarga de convertirlos al formato adecuado para su transmisión. Las aplicaciones en la máquina remota reciben el caudal de datos tal como fue enviado y TCP se encarga de que el caudal llegue completo y ordenado. Por eso TCP se utiliza cuando el orden de los datos importa y cuando se puede hablar de una conexión. UDP.- (User Datagram Protocol) es un protocolo no asegurado y sin conexión. La transferencia de datos está orientada a paquetes creados directamente por la aplicación. El orden de llegada de los paquetes no está garantizado y tampoco la llegada en sí. UDP sirve para aplicaciones que transmiten bloques de datos y tiene menos tiempo de respuesta que TCP. ICMP.- (Internet Control Message Protocol) es un protocolo que básicamente no puede ser usado por el usuario, ya que su tarea es la de transmitir errores y de controlar los ordenadores que participan en el intercambio de datos. Además ICMP incorpora un modo especial de eco, que se puede comprobar mediante ping. IGMP.- (Internet Group Management Protocol) es un protocolo que controla el comportamiento de los ordenadores utilizando IP multicast. Las redes basadas en TCP/IP y que están interconectadas a nivel mundial se denominan en su conjunto como Internet.. RFC son las siglas de Request for Comments. Los RFC son documentos que describen los diferentes protocolos de Internet y la implementación de ellos en un sistema operativo o en aplicaciones. Los documentos RFC describen la estructura de los protocolos de Internet. Para profundizar sobre un determinado protocolo se recomienda consultar el documento RFC del protocolo correspondiente. Puede visitarse para más información. Como se muestra en la figura siguiente (modelo de capas simplificado para TCP/IP), el intercambio de datos tiene lugar en distintas capas. En la capa de comunicación se lleva a cabo la transferencia de datos insegura a través de IP (Internet Protocol). Por encima de IP, el protocolo TCP (Transmission Control Protocol) garantiza la seguridad de la transferencia de datos hasta cierto punto. Por debajo de la capa IP se encuentra el protocolo que depende del hardware (por ejemplo Ethernet). Página.- 175

179 Fig 69: Modelo de capas para TCP/IP La imagen muestra uno o dos ejemplos para cada capa. Las capas se ordenan según su nivel de abstracción; la capa inferior se encuentra más próxima al hardware, mientras que la capa superior envuelve el nivel de abstracción mas alto. Cada capa tiene una determinada función que se explica a continuación. La red está representada por la capa de transmisión de bits y por la capa de seguridad. Casi todos los protocolos de hardware están basados en paquetes. Los datos a transmitir se han de dividir en pequeños paquetes, ya que es imposible transmitirlos de golpe. TCP/IP también trabaja con paquetes cuyo tamaño máximo es de casi 64 kilobytes. En realidad los paquetes suelen tener un tamaño mucho menor, ya que el tamaño máximo de un paquete sobre una Ethernet es de 1500 bytes. Por eso el tamaño de cada paquete TCP/IP se limita a estos 1500 bytes cuando el paquete pasa por una red del tipo Ethernet. Para transmitir más datos, el sistema operativo tiene que enviar la cantidad correspondiente de paquetes. Cada capa necesita una cierta información adicional para poder cumplir con su tarea. Esta información se encuentra en la cabecera (header) de cada paquete. Cada capa añade un pequeño bloque de datos (denominado cabecera de protocolo (protocol header) al paquete que se está formando. La siguiente figura muestra el ejemplo de la composición de un paquete TCP/IP que viaja sobre un cable de una red tipo Ethernet. Una excepción de la estructura de la cabecera son los dígitos de control que no se encuentran en la cabecera sino al final. De esta forma el hardware de red lo tiene más fácil. Fig 70: Paquete TCP sobre Ethernet Página.- 176

180 Cuando una aplicación quiere enviar datos por la red, los datos pasan por las diferentes capas que se encuentran (con excepción de la primera) implementadas en el kernel de Linux. Cada capa se encarga de preparar los datos de tal forma que puedan ser pasados a la capa inferior. La capa más baja se encarga finalmente del envío de los datos. Al recibir los datos, todo el proceso se invierte. Como en una cebolla, cada capa separa los encabezamientos de la parte útil de datos. Finalmente la cuarta capa se encarga de preparar los datos para la aplicación en la máquina remota. Durante el proceso de transferencia, cada capa sólo se comunica con aquella que se encuentra directamente encima o debajo. Por eso para una aplicación es totalmente irrelevante si los datos viajan a través de una red de 100 MBit/sFDDI o a través de una línea de módem de 56 kbit/s. Igualmente para la línea no son importantes los datos que se han de transferir sino que estos estén correctamente empaquetados Direcciones IP En principio esta sección y las siguientes se refieren a las redes IPv4. Su sucesor, IPv6 será tratado más adelante. Cada ordenador en Internet dispone de una dirección IP única de 32 bits. Estos 32 bits, o 4 bytes, se representan normalmente como se muestra en la notación decimal del ejemplo siguiente: Dirección IP en binario: Dirección IP en decimal: En la notación decimal, la dirección ip se especifica con cuatro cifras, de 0 a 255, separadas por un punto, con lo cual, la ip del ejemplo queda como Esta dirección asignada al ordenador o a su interfaz de red es única y no puede ser utilizada en ningún otro lugar del mundo, con algunas excepciones, que no tienen relevancia para el ejemplo expuesto. La tarjeta Ethernet posee un número único llamado MAC (Media Access Control). Este número es de 48 bits y único en el mundo; su fabricante lo almacena de forma fija en la tarjeta red. La asignación de los números MAC por parte de los fabricantes tiene una desventaja fatal: no hay ninguna jerarquía entre las tarjetas, están distribuidas al azar ; por eso no es posible utilizarlas para comunicarse con un ordenador a mucha distancia. Sin embargo la dirección MAC es de mucha importancia en una red local, siendo la parte importante de la cabecera del protocolo en la capa 2. Los puntos separadores de la dirección ip ya indican la estructura jerárquica de las direcciones. Hasta mediados de los noventa había una separación estricta en clases pero el sistema resultó muy poco flexible por lo que practicamente se ha dejado de utilizar. Ahora se usa routing sin clases (Classless Inter Domain Routing o CIDR). Página.- 177

181 La dirección IP de un equipo está dividida en dos partes, como se muestra en la figura siguiuente: Fig 71: Partes de una dirección IP Dirección de red.- son los primeros bits de la dirección ip. Se cumplen dos características muy importantes: Todos los equipos de la misma red tienen en su dirección ip la misma dirección de red. Todos los equipos de la misma red se pueden comunicar de forma directa, sin intermediarios. Un equipo que quiera enviar un mensaje a otro equipo de la misma red esperará a que el medio de comunicación esté libre (cable ethernet, fibra optica, etc.) y entonces enviará las tramas correspondientes. A su vez, el receptor estará supervisando el medio de comunicación continuamente para comprobar si las tramas que circulan son para él (tienen su dirección ip). Si son para él las recoge y procesa y si no son para él las ignora. Dirección del host o equipo.- son los últimos bits de la dirección ip y debe ser diferente para cada equipo de la red. Luego, los equipos de la misma red tienen direcciones ip con la misma dirección de red y diferente dirección de host o equipo. En el ejemplo de la figura anterior la dirección de red ocupa los tres primeros bytes y la dirección de host el último byte. Por lo tanto, los equipos de esa red tendrán todos como dirección ip n, siendo n cualquier valor entero entre 0 y 255 (con unas pequeñas excepciones que se verán más adelante) Máscara de (sub)red La función fundamental de la máscara de red es establecer la longitud de la dirección de red, es decir, establecer qué parte de la dirección ip corresponde a la dirección de la red y qué parte corresponde a la dirección del host. La máscara de red, también llamada máscara de subred, tiene la forma de una dirección ip un poco particular: es una dirección ip que tiene todos los bits de la parte correspondiente a la dirección de red con valor 1 y los bits correspondientes a la dirección del equipo con valor 0. Página.- 178

182 Aplicando esto al ejemplo anterior se obtiene: Fig 72: Máscara de (sub)red Para especificar la dirección ip y la máscara, además de la notación decimal, existe otra notación denominada Classless Inter-Domain Routing (CIDR) que consiste en especificar la dirección ip en notación decimal y a continuación, separada por el carácter /, la longitud en número de bits de la parte correspondiente a la dirección de red. En el ejemplo, como la dirección de la red son 24 bits, la dirección ip y la máscara en formato CIDR sería: / 24 Cuando un equipo tiene que comunicarse con otro, la primera operación que realiza es consultar si el equipo con el que se quiere comunicar se encuentra en su misma red y entonces: Si está en la misma red, pone la información en el medio encargado de realizar la transmisión (cable ethernet, fibra óptica, ) entendiendo que el equipo receptor estará escuchando y recibirá la información. Si no está en la misma red, enviará la información al router, que se encargará de enrutarla hacia el destino. El procedimiento del equipo emisor para comprobar si si el equipo receptor está en la misma red es el siguiente: 1. El equipo emisor realiza la operación AND entre su dirección IP y su máscara. 2. El equipo emisor realiza la operación AND entre su máscara y la dirección ip del equipo receptor. 3. Si obtiene el mismo resultado es porque los dos equipos están en la misma red. En caso contrario los equipos estarán en redes diferentes y la información deberá ser transmitida a través de enrutadores intermedios. Página.- 179

183 La siguiente tabla muestra los resultados obtenidos al realizar la operación AND con los correspondientes operandos binarios: Operación AND Operando 1 Operando 2 Resultado Como ayuda para agilizar la operativa entre la dirección ip de un equipo y su máscara de red, puede observarse en la tabla el cumplimiento de las siguientes características: Cuando un operando tiene valor 1 el resultado coincide con el otro operando. Cuando un operando es 0 el resultado es 0. Con lo cual, teniendo en cuenta que la máscara de red tiene los bits correspondientes a la parte de dirección de red con valor 1 y los bits correspondientes a la parte de dirección de equipo con valor 0, al realizar la operación AND entre una ip y la máscara se obtendrá una dirección ip que cumplirá: La parte correspondiente a la dirección de red coincidirá con la de la dirección ip, puesto que en la máscara todos esos bits tienen valor 1. La parte correspondiente a la dirección del host serán 0, puesto que en la máscara todos esos bits tienen valor 0. Fig 73: Operación AND entre dirección IP y máscara de red La dirección resultante de la realización de la operación AND entre la ip y la máscara se llama dirección de la red y su característica fundamental es que coincide con la dirección ip más baja de las pertenecientes a la misma red, es decir, la parte de dirección de red es la misma de todas las ip's de la red y la parte de dirección del host está a ceros. En el ejemplo, la parte de dirección de red son los tres primeros bytes, con lo cual todos los equipos de esa red tendrán la forma n, con n entre 0 y 255 y la dirección ip más baja de esa red sera la que, como se puede ver en la figura, corresponde con la dirección resultante del AND, es decir, con la dirección de la red. Página.- 180

184 Dentro del rango de posibles direcciones ip's que puede haber dentro de una red hay dos direcciones que tienen un significado especial, y que no pueden ser asignadas a los equipos de la red: La dirección de red.- es la dirección más baja del rango y se utiliza para identificar a la red. Su parte de dirección del host está a ceros. La dirección de broadcast o de difusión.- es la dirección más alta del rango y la utiliza un equipo cuando quiere comunicarse con todos los demás equipos de la red. Su parte de dirección del host está a unos. Por ejemplo, si un equipo quiere comunicar a todos los demás equipos de la red que tiene una impresora instalada que comparte con la red, puede hacer uso de la dirección de difusión. Siguiendo con el ejemplo, si el equipo con dirección ip y máscara de red ( / 24) quiere enviar alguna información al equipo con dirección ip , antes de enviar ninguna trama de información procede de la forma: 1. Realiza la operación AND entre su ip ( ) y la máscara ( ) obteniendo como resultado la dirección de red Realiza la operación AND entre su máscara ( ) y la ip del receptor ( ) obteniendo como resultado la dirección de red Compara los dos resultados obtenidos y si coinciden (como es el caso) es porque los dos equipos están en la misma red y enviará las tramas directamente al receptor. Si no coinciden enviará las tramas al router. Una característica esencial de las redes o subredes, determinada por el número de bits de la dirección IP que corresponden a la dirección del host, es el número de equipos direccionables en la red. Teniendo en cuenta que: Todos los equipos de la misma red tienen en su dirección ip los bits correspondientes a la dirección de red iguales. Todos los equipos de la misma red tienen en su dirección ip los bits correspondientes a la dirección del equipo distintos. Hay dos direcciones dentro del rango de posibles direcciones ip de la red que no pueden ser asignadas a los equipos, que son la dirección de la red y la dirección de difusión (broadcast), que coinciden con la dirección más baja y con la más alta del rango respectivamente. y algunas características de la numeración en binario: Con 1 bit se pueden especificar 2 valores diferentes (0, 1), es decir, 21 = 2 valores. Página.- 181

185 Con 2 bits se pueden especificar 4 valores diferentes (00, 01, 10, 11), es decir, 2 2 = 4 valores. Con 3 bits se pueden especificar 8 valores diferentes (000, 001, 010, 011, 100, 101, 110, 111), es decir, 23 = 8 valores. Y así sucesivamente. y que es la máscara la que identifica cuantos bits de la dirección ip corresponden a la dirección de la red (bits a 1 en la máscara) y cuantos a la dirección del equipo (bits a 0 en la máscara) se tiene que: La máscara identifica 31 bits de dirección de red y 1 bit de dirección de equipo. La máscara identifica 30 bits de dirección de red y 2 bits de dirección de equipo. La máscara identifica 29 bits de dirección de red y 3 bits de dirección de equipo. Y así sucesivamente. se obtiene la tabla: Máscara en decimal Máscara en binario Nº bits de dir. de red Nº bits de dir. de equipo Nº max. de dir. ip Nº max. de equipos =0 2 2 = = = = = = = = = = = = = = = = = = = Para atravesar distancias largas, ya no se puede utilizar Ethernet sino que hace falta pasar los paquetes IP por un soporte diferente (por ejemplo FDDI o RDSI) mediante dispositivos denominados router (enrutador) o gateway (pasarela). Un ordenador con MaX también se puede encargar de ello; esta funcionalidad se denomina ip_forwarding. Página.- 182

186 En caso de trabajar con una pasarela, el paquete IP se manda a ésta y la pasarela trata de pasar el paquete según el mismo esquema. Este proceso se repite hasta el momento de alcanzar el ordenador de destino o hasta que el tiempo de vida del paquete TTL (time to live) se haya agotado. No se pueden utilizar direcciones IP al azar, ya que éstas deben ser únicas en todo el mundo. Existen tres rangos de direcciones IP que pueden utilizarse en la configuración de una red privada y con las cuales no puede realizarse una conexión directa a Internet sino que la conexión se realiza a través de un equipo, por lo general un router, que realiza ciertas conversiones en las direcciones IP. Estos tres rangos están especificados en la RFC 1597 y son los siguientes: Rangos para direcciones IP privadas Red / máscara de red Rango / n. n. n / n. n n. n / n. n Además, en cada ordenador la dirección corresponde al dispositivo loopback y se utiliza para crear una conexión en la propia máquina. Para entender el funcionamiento o la relación que se establece entre las direcciones IP públicas y privadas vamos a tomar un ejemplo sencillo: Cuando una empresa quiere que sus empleados tengan acceso a Internet debe ponerse en contacto con un proveedor de servicios de Internet, que por lo general son empresas de telefonía (pero no exclusivamente). El proveedor de servicios de Internet instala en la empresa un router con dos interfaces de red: un interface se conecta al exterior a través de un medio (cable telefónico, fibra óptica, ) y el otro interface se conecta a la red local mediante otro medio (cable Ethernet, fibra óptica, ondas, ). El interface conectado al exterior estará configurado con una dirección IP pública, única en todo el mundo y el interface conectado a la red local con una dirección IP privada, única en la red privada pero no en el mundo entero. Por ejemplo, la IP pública puede ser y la privada Cuando un equipo de la red local, por ejemplo el que tiene dirección IP , envía una trama de información a Internet, la trama sale con dirección IP origen pero cuando pasa por el router es cambiada por la dirección IP externa del router, es decir, por la y así llegará a su destino. Cuando el equipo destino responda, la trama irá dirigida al equipo con IP , es decir, al router, que al recibir la trama la encaminará al equipo con IP Esta conversión de direcciones IP se denomina NAT (Network Adress Traslation) y para poder realizarla el router deberá gestionar ciertas tablas con información sobre los equipos que envían y esperan información. Página.- 183

187 Práctica (obtención de las características de la red) Si un equipo tiene la configuración IP / 25 calcular: la máscara en formato decimal, la dirección de la red, la dirección de difusión, el número máximo de direcciones IP diferentes en la red y el número máximo de equipos diferentes en la red. Pasamos la dirección IP a binario y se obtiene: De la máscara se sabe que tiene los primeros 25 bits con valor uno, es decir, Pasando estos datos a decimal se obtiene que la máscara es: Los primeros 25 bits de la dirección IP corresponden a la dirección de red, que será igual en todos los equipos de la red, y los 7 restantes a la dirección del equipo, que serán diferentes para cada equipo. La dirección de la red puede hallarse realizando la operación AND entre la dirección IP y la máscara, y coincidirá con la dirección IP más baja en la red, es decir, aquella cuya parte correspondiente a la dirección del equipo esté a ceros: que en decimal es: La dirección de difusión es la más alta, es decir, aquella cuya parte correspondiente a la dirección del equipo esté a unos: que en decimal es: El número máximo de direcciones IP es 2 elevado al número de bits correspondientes a la dirección del equipo, es decir, 2 elevado a 7 que es 128. El nº máximo de equipos es el nº máximo de direcciones IP menos 2, es decir, 126. Página.- 184

188 Datos de la red Dirección IP Máscara de red Dirección de la red Dirección de difusión Nº máximo de direcciones IP 128 Nº máximo de equipos 126 Práctica (direccionamiento IP en la red de casa) Un alumno que en casa dispone de tres ordenadores instala un router para salir a Internet. Qué direcciones IP y máscara de red puede utilizar?. Hallar los demás datos de la red. Se necesita una red que admita 6 direcciones IP: tres para los ordenadores, una para el interface interno del router, la dirección de la red y la dirección de difusión. El dato que condiciona el número máximo de direcciones IP (o de equipos) es la máscara. Para este caso se necesita una máscara que establezca 29 bits para la dirección de red y 3 para la dirección de los equipos puesto que el número máximo de direcciones IP se obtiene al elevar dos al número de bits destinados a la dirección del equipo, es decir, dos elevado a tres que da como resultado ocho y que cumple con los requerimientos de la práctica. Luego, la máscara puede ser: , o, en decimal: y la distribución de las direcciones IP podría ser. Dirección de la red: Dirección del router: Direcciones de los ordenadores: de a Dirección de difusión: En esta red podría haber un máximo de 6 equipos. Página.- 185

189 6.2.3 Puerta de enlace, pasarela, gateway o enrutador Cuando dos o más equipos utilizan el medio físico adecuado, el protocolo TCP/IP y están configurados para pertenecer a la misma red, la comunicación entre ellos es directa. Cuando alguna de estas características cambia, se hace necesario el uso de un elemento que haga de intermediario: Si el medio físico es diferente. El ejemplo más generalizado se encuentra en la conexión de la intranet, o red formada con los equipos de casa o de la empresa, con el resto de equipos de Internet. Los equipos de la intranet pueden utilizar una conexión inalámbrica o un cable de par trenzado con conectores RJ-45 pero el medio de conexión con el exterior puede ser un par telefónico o una fibra óptica, por ejemplo. Se necesita entonces un dispositivo que por una parte pueda estar conectado al medio físico de la intranet y por otro al de la red externa. Són los típicos routers ADSL. Un ejemplo cotidiano lo encontramos en la comunicación entre personas: las personas en la misma casa se comunican de forma directa pero para comunicarse con las de otra casa hacen uso del teléfono, que hace la función del router. Si el protocolo es diferente. Para comunicar redes u ordenadores que utilizan protocolos diferentes, por ejemplo una intranet que utiliza TCP/IP con otra red que utiliza AppleTalk, se hace necesario el uso de un dispositivo capaz de traducir la información de un protocolo al otro; es la función del gateway. Este caso es menos frecuente debido al uso generalizado del protocolo TCP/IP. Como ejemplo cotidiano podemos suponer que el protocolo es el idioma. Para que dos personas que utilizan idiomas diferentes puedan comunicarse tienen que hacer uso de un traductor que conozca ambos idiomas. Si no están en la misma red lógica. En organismos con un gran número de equipos o que necesitan una diferenciación de los equipos atendiendo a niveles de seguridad pueden establecerse varias subredes. La comunicación de unas subredes con las otras puede hacerse a través de otro ordenador o router que controle y delimite la comunicación entre las subredes. Evidentemente el ordenador o router que hace de intermediario debe pertenecer a todas las subredes que intercomunica. Como ejemplo se puede suponer dos aulas que están intercomunicadas por una puerta. Para que los alumnos de un aula puedan comunicarse con los del otro, debe situarse una persona en la puerta que transmita los mensajes de un aula al otro. En cualquier caso, si se desea que los equipos de una red puedan comunicarse con los de otra, deberá existir un dispositivo que realice la función de enlace (puerta de enlace, pasarela, gateway, ) y todos los equipos de la red deberán conocer y tener configurado el parámetro correspondiente. Dicho parámetro no es otro que la dirección IP de la puerta de enlace, pasarela, gateway o router. Página.- 186

190 Práctica (análisis de tramas) Instalar en el equipo anfitrión y en el invitado con MaX 5.0 un analizador de tramas que permita capturar la información que viaja a través de la red. Comprobar que: Cuando un ordenador envía una trama a un equipo de su misma red, la trama llega a todos los equipos de la misma red. El equipo al que va dirigida la trama la procesa y los demás la ignoran. Cuando un ordenador va a enviar una trama a un equipo que no está en su misma red: Si no tiene configurada la puerta de enlace muestra un mensaje de error y no envía la trama. Si tiene configurada la puerta de enlace, envía la trama al equipo especificado como puerta de enlace. El equipo que realiza la función de puerta de enlace reenviará la trama donde corresponda y los demás equipos la ignorarán. Una forma de proceder es la siguiente: Tanto en el ordenador anfitrión como en el cliente de MaX 5.0 se inicia una sesión como usuario madrid. Se instala el paquete Wireshark a través del menú Aplicaciones Sistema Administración Gestor de paquetes Synaptic. Una vez instalado aparecerá en el menú Aplicaciones Internet las opciones Wireshark y Wireshark (as root), siendo esta última la que se utiliza para ejecutarlo y teniendo en cuenta que se necesitan privilegios de administración como los tienen los usuarios madrid o root. Desde la línea de comandos se lanza con el nombre del paquete (wireshark). La primera vez que se ejecuta Wireshark aparecerán dos ventanas, una la correspondiente al programa y otra con un mensaje que avisa que se está ejecutando como usuario root y grupo root con los riesgos que ello conlleva. Para continuar hay que pulsar el botón Aceptar de esta última. Fig 74: Mensaje de Wireshark Página.- 187

191 Algunas de las opciones más interesantes del programa son: Interfaces....- Permite elegir el interface o tarjeta donde se realizará la captura y análisis de las tramas. Options....- Permite establecer las opciones para la captura y el análisis. Start.- Permite iniciar el proceso de captura de tramas. Capture Filters....- Permite establecer filtros o características de las tramas que deben ser capturadas para analizar y cuales deben ser ignoradas. Fig 75: Wireshark Para capturar tramas, en primer lugar hay que elegir el interface. Además de las interfaces de red del equipo, aparecen el interface any, que equivale a seleccionar todos, y el interface lo, que es el interface de loopback del equipo. Fig 76: Selección de interfaces Una vez seleccionado el interface podrá pulsarse sobre el botón Start y aparecerá una ventana que mostrará las tramas que se van capturando. Página.- 188

192 Fig 77: Captura de tramas Con el botón de Stop se finalizará la captura de las tramas. Si se vuelve a pulsar para realizar una nueva captura el programa avisará de si se quieren guardar en un fichero las tramas de la captura anterior. La ventana que muestra las tramas se encuentra dividida horizontalmente en tres subventanas: La primera muestra una lista con un resumen de las tramas capturadas, con información relativa al número de trama, momento de la captura, equipo emisor, a qué equipo va dirigida, protocolo, etc. La segunda muestra información sobre cada etiqueta o campo contenido en la trama. La tercera muestra el contenido de la trama en formato hexadecimal a la izquierda y en ascii a la derecha. Una vez visto, de forma somera, el funcionamiento de Wireshark vamos a proceder de la forma siguiente: 1. Comprobar que los tres equipos (anfitrión, invitado con MaX 5.0 e invitado con Windows XP o similar) se encuentran en la misma red, es decir, comprobar que coincide el resultado de realizar la operación AND entre ip y máscara de cada equipo. Página.- 189

193 Por ejemplo, teniendo en cuenta que la dirección de red es el resultado del AND: Dirección ip Máscara Dirección de red Anfitrión Invitado MaX Invitado XP Si la dirección de red no fuera la misma para los tres equipos deberá modificarse la ip y máscara de los mismos para que lo sea. 2. Desde un equipo vamos a enviar tramas a otro y a comprobar que llegan a todos los de la red. Por ejemplo, desde el equipo invitado con XP vamos a realizar un ping sostenido al equipo anfitrión y comprobaremos que las tramas llegan tanto al anfitrión como al invitado con MaX. La instrucción ping se utiliza para comprobar si un equipo se encuentra escuchando en la red. El formato más estandard es ping ip_destino. El equipo origen que ejecuta la instrucción envía una trama al equipo destino que, si se encuentra escuchando, responderá con otra trama. En MaX la instrucción ping envía tramas de forma indefinida (sostenida) hasta que se pulsan las teclas <Ctrl>+<C> pero en Windows XP, la misma instrucción, solamente envía tres tramas y hay que hacer uso de la opción -t para que el ping se realice hasta pulsar <Ctrl>+<C>. Entonces, en el equipo invitado con XP ejecutamos la instrucción: ping t En el equipo anfitrión primero, y en el invitado con MaX después, lanzamos el programa Wireshark y podrá comprobarse que reciben tramas, unas con dirección origen y destino y otras en el sentido contrario. 3. Comprobar que si el invitado con XP no tiene configurada la puerta de enlace y se le asigna una dirección ip que no se encuentre en la misma red que los equipos invitados, la instrucción ping mostrará un error del tipo Host de destino inaccesible y no enviará ninguna trama a la red, es decir, el equipo anfitrión y el invitado con MaX no reciben las tramas correspondientes al ping de XP. 4. Volver a configurar el equipo invitado con XP con la dirección ip inicial y configurar su puerta de enlace con la dirección ip del anfitrión. Si ahora el equipo con XP hace ping a un equipo que no esté en su red, por ejemplo al equipo : ping t se podrá observar que envía las tramas al equipo configurado como puerta de enlace, en este caso al equipo anfitrión. Página.- 190

194 Práctica (dos subredes con un MaX enrutando) Configurar tres equipos de tal forma que dos de ellos pertenezcan a redes diferentes y el otro se encuentre en ambas redes y haga la función de enrutamiento entre las dos redes. El esquema de configuraciones puede ser el siguiente: Fig 78: Subredes A la hora de elegir tanto las redes como las direcciones IP debe tenerse en cuenta que no se generen conflictos con las redes preestablecidas y en funcionamiento. La forma de proceder puede ser la siguiente: 1. Se lanza la ejecución de la máquina virtual con XP y se configura su dirección IP, su máscara de red y su puerta de enlace, como se muestra en la figura. Fig 79: Configuración de XP Página.- 191

195 2. Para realizar la configuración TCP/IP de la máquina virtual con MaX hay que realizar una configuración adicional para que dicha máquina simule tener dos adaptadores de red. Para realizar esta configuración es necesario que la máquina virtual se encuentre apagada y proceder de la forma: En VirtualBox seleccionar la máquina virtual con MaX y pulsar sobre la opción Red. Fig 80: Añadir adaptador de red Seleccionar la ficha correspondiente a Adaptador 2 y rellenarla con datos similares a la de Adaptador 1. La única diferencia debe ser la dirección MAC, que el programa tomará de forma aleatoria. Fig 81: Adaptador 2 Página.- 192

196 Después de pulsar sobre el botón Aceptar, en la ficha General, debajo de la opción Red, aparecerán dos adaptadores. A continuación se lanza la ejecución de la máquina virtual y se configuran los dos adaptadores (menú Aplicaciones Sistema Administración Red) con sus correspondientes direcciones IP, máscaras y sin puerta de enlace, como se muestra en la figura. Fig 82: Configuración de los dos adaptadores Una vez realizada esta configuración puede probarse si desde la máquina con XP se hace ping a los dos dispositivos de la máquina con MaX. 3. La máquina con Windows Server se configura de forma similar a la de XP. Se puede comprobar: Que XP hace ping a los dos adaptadores de MaX. Que W_Server hace ping a los dos adaptadores de MaX. Que MaX hace ping a XP y a W_Server. Que XP no hace ping a W_Server. Que W_Server no hace ping a XP. 4. Por último, para que XP pueda comunicarse con W_Server, y viceversa, hay que configurar la máquina con MaX para que haga la función del router y enrute las tramas entre las dos redes. Esto se consigue ejecutando con el usuario root (no vale con el usuario madrid haciendo uso de la instrucción sudo) la instrucción: echo 1 > /proc/sys/net/ipv4/ip_forward Para desactivar la función se ejecuta la misma instrucción cambiando el 1 por un 0. Página.- 193

197 Además, la instrucción no es persistente y si se desea que la máquina realice la función de enrutado de forma continuada deberá ejecutarse cada vez que se inicie la máquina. Otra forma de configurar la máquina para que realice siempre dicha función es buscar en el fichero /etc/sysctl.conf la línea: net.ipv4.ip_forward=1 y borrar el carácter # que tiene delante. Si no existiera dicha línea habría que incluirla. Reiniciar la máquina. Con la función de enrutado activa puede comprobarse que XP ya hace ping a W_Server y viceversa. Si a XP se le quita la puerta de enlace predeterminada no sabrá comunicarse con W_Server y puede comprobarse que ocurre lo siguiente: Al ejecutar en la máquina con XP la instrucción ping comprueba que la dirección especificada no se encuentra en su misma red y, sin puerta de enlace, no podrá comunicarse con otras redes y mostrará un mensaje de error como: Host de destino inaccesible, como se muestra en la figura. Fig 83: Ping de XP a W_Server Al ejecutar en la máquina W_Server la instrucción ping enviará unas tramas de información a la máquina con XP pero, como ésta no puede responderle, W_Server mostrará un mensaje de error como Tiempo de espera agotado para esta solicitud, como se muestra en la figura. Fig 84: Ping de W_Server a XP Página.- 194

198 6.3 Configuración de la resolución de nombres Gracias al Servicio de Nombres de Dominio (DNS) no hace falta recordar direcciones IP, ya que este sistema realiza la asignación de una dirección IP a uno o varios nombres así como la asignación inversa de un nombre a una dirección IP. En Linux, un software especial llamado bind es el que se encarga de establecer el vínculo entre nombres y direcciones IP. Un ordenador que presta este servicio se denomina servidor de nombres (name server). Los nombres también están estructurados dentro de una jerarquía; las diferentes partes funcionales de los nombres se separan por puntos. Esta jerarquía de nombres es independiente de la ya mencionada jerarquía de direcciones IP. Un nombre completo se denomina nombre de dominio totalmente cualificado (Fully Qualified Domain Name o FQDN) y se compone del nombre del ordenador y del nombre del dominio. Por ejemplo, servidor.tiernogalvan.es sería un nombre FQDN donde servidor es el nombre del ordenador y tiernogalvan.es el nombre del dominio. Este nombre de dominio incluye el dominio de primer nivel (Top Level Domain o TLD)(es). Por razones históricas la asignación de los TLDs resulta algo confusa. En los EE.UU. se utilizan TLDs de tres letras mientras que el resto del mundo utiliza los códigos de país ISO de dos letras. Desde el año 2000 existen TLDs adicionales para campos específicos que en ocasiones cuentan con más de 3 letras (por ejemplo.info,.name,.museum, etc.). En los primeros días de Internet (antes de 1990) el archivo /etc/hosts albergaba los nombres de todos los ordenadores disponibles en Internet. Esta forma de resolución de nombre se tornó poco práctica debido al rápido crecimiento de Internet. Por eso se diseñó una base de datos descentralizada, capaz de guardar los nombres de las máquinas de forma distribuida. Esta base de datos o un servidor de nombres no dispone de los datos de todos los ordenadores en Internet, sino que es capaz de consultar otros servidores de nombres en un nivel más alto. En la cúspide de la jerarquía de servidores de nombres se encuentran los RootNameserver que administran los dominios de primer nivel (TLD). El Network Information Center (NIC) se encarga de la administración de estos servidores. El Root-Nameserver conoce los servidores de nombres que se encargan de cada dominio de primer nivel. En la página web puede encontrar más información acerca de los dominios de primer nivel gestionados por el NIC. DNS es capaz de realizar otras tareas además de la resolución de nombres. El servidor de nombres conoce igualmente el ordenador que acepta los mensajes de todo un dominio. Este ordenador se conoce como Mail Exchanger (MX). El ordenador de sobremesa tiene que conocer la dirección IP de al menos un servidor de nombres para que sea capaz de convertir nombres en direcciones IP. Con MaX es muy fácil configurar el servidor de nombres. En el caso de una conexión vía módem, puede que no sea necesario configurarlo manualmente, ya que el protocolo utilizado para la conexión proporciona esta información durante el proceso de conexión. Página.- 195

199 La configuración de un servidor de nombres es más compleja y se trata en un capítulo aparte. El protocolo whois es muy similar al de DNS y sirve para averiguar rápidamente quién se responsabiliza de un determinado dominio. 6.4 Configuración del protocolo TCP/IP en un cliente de red En MaX es muy fácil configurar gráficamente el protocolo TCP/IP. Los datos que intervienen en la configuración completa del protocolo TCP/IP son: Dirección IP. Máscara de (sub)red. Puerta de enlace predeterminada o gateway. DNS 1. DNS 2. Es conveniente especificar dos DNS's para que si el primero no responde pueda utilizarse el segundo. Para introducir estos datos se accede con un usuario con los permisos adecuados (root o madrid) al menú Aplicaciones Sistema Administración Red, se desbloquea la ventana de configuración de la red (si aparece bloqueada) introduciendo la clave para el usuario madrid, en la ficha Conexiones se selecciona el adaptador a configurar y pulsando sobre el botón Propiedades aparecerá la ventana de propiedades que permitirá seleccionar una configuración automática o bien la introducción de los parámetros por el usuario. Para que la configuración se realice de forma automática y el adaptador se configure con los datos que le envíe un servidor de DHCP, basta con marcar el cuadro de verificación Activar el modo itinerante, o bien, no marcar dicho cuadro y en los datos relativos a los Ajustes de conexión, en la lista desplegable Configuración elegir Configuración automática (DHCP). Para introducir unos datos de configuración determinados hay que dejar el cuadro de verificación Activar el modo itinerante sin marcar, en la lista desplegable Configuración elegir Dirección IP estática e introducir los datos correspondientes a la dirección IP, la máscara de (sub)red y la dirección IP de la puerta de enlace. Página.- 196

200 Fig 85: Configuración de TCP/IP Finalmente se introducen en la ficha DNS las direcciones IP de los DNS's. Para añadir un servidor de DNS hay que pulsar el botón Añadir, se introduce la dirección IP y se pulsa <Intro>. Una vez realizada la configuración se pulsa el botón Cerrar. Fig 86: Configuración de los DNS's Página.- 197

201 6.5 IPv6: la próxima generación de Internet Debido a la aparición de la WWW (World Wide Web), Internet y la cantidad de ordenadores que se comunican vía TCP/IP han crecido vertiginosamente. Desde la invención de la WWW por parte de Tim Berners-Lee, que trabajaba en el CERN (http://public.web.cern.ch/) en el año 1990, la cantidad de ordenadores en Internet ha crecido de algunos miles hasta alrededor de 100 millones actualmente. Como ya sabemos, una dirección IP sólo tiene 32 bits y muchas de las direcciones IP se pierden por la forma en que están organizadas las redes. Internet se divide en subredes. El número de direcciones disponibles en una subred es dos elevado a la potencia del número de bits menos dos. Por eso una subred se compone por ejemplo de 2, 6, 14, 30, etc. direcciones IP. Para conectar por ejemplo 128 ordenadores a Internet, se necesita una subred con 256 direcciones IP de las que hay 254 útiles. Hay que restar dos direcciones para la dirección base de la red y para la de difusión. Para contrarrestar la previsible escasez de direcciones, en el protocolo utilizado actualmente, IPv4, se emplean mecanismos como DHCP o NAT (Network Address Translation). Ambos procedimientos atenúan relativamente la escasez de direcciones en Internet junto con la convención de zonas de direcciones de red públicas y privadas. El mayor inconveniente de estos métodos radica en su compleja configuración, que requiere además un mantenimiento muy intensivo. Para configurar un ordenador en la red IPv4 es necesario introducir numerosos datos como la dirección IP propia, la máscara de subred, dirección de la pasarela y en ocasiones incluso un servidor de nombres. Tiene que saber esta información que no puede deducirse de ningún sitio. Con IPv6, la escasez de direcciones y la compleja configuración pertenecen al pasado. En las secciones siguientes se ofrece información adicional sobre las novedades y ventajas de IPv6 y sobre la transición del antiguo al nuevo protocolo Ventajas de IPv6 La ventaja más importante y llamativa del nuevo protocolo es la considerable ampliación del espacio direccional. Una dirección IPv6 contiene 128 bits en lugar de los tradicionales 32, con lo que el número de direcciones IP disponibles asciende a miles de billones. Las direcciones IPv6 se diferencian de sus predecesoras no sólo en la longitud, sino también en su estructura interna. Esta estructura permite codificar información especial sobre el sistema correspondiente y su red, como se muestra en las siguientes secciones. Página.- 198

202 Entre las ventajas importantes del nuevo protocolo cabe también destacar: Configuración automática.- IPv6 aplica a la red el principio plug and play. Un sistema recién instalado puede integrarse sin problemas en la red (local). El mecanismo automático de configuración del terminal deduce la propia dirección de la información transmitida a través del protocolo ND ( Neighbor Discovery Protocol ) por los enrutadores adyacentes. Este procedimiento no requiere la intervención del administrador y tiene la ventaja adicional de que, a diferencia del distribuidor de direcciones DHCP usado en IPv4, hace innecesario el mantenimiento de un servidor central con las direcciones disponibles. Movilidad.- IPv6 permite asignar varias direcciones paralelas a una interfaz de red. Esto significa para usted como usuario que puede acceder a diversas redes cómoda y fácilmente. Puede comparar este mecanismo con el roaming de las redes de telefonía móvil: aunque usted se encuentre en otro país, su teléfono móvil se introduce en la nueva red garantizando que siga disponible bajo el mismo número de teléfono. Usted llama por teléfono en la red externa como si se tratase de su red habitual. Comunicación segura.- Mientras que en IPv4 la comunicación segura constituía una función adicional, IPv6 incluye IPSec y por tanto la comunicación segura entre dos sistemas mediante un túnel a través de Internet. Compatibilidad con la versión anterior.- No es realista creer que la migración de la totalidad de Internet de IPv4 a IPv6 se va a llevar a cabo rápidamente. Por eso es importante que ambas versiones puedan coexistir en Internet e incluso en un mismo sistema. La coexistencia de ambos protocolos en Internet está asegurada por el uso de direcciones compatibles (las direcciones IPv4 pueden convertirse fácilmente a direcciones IPv6) y la utilización de distintos túneles (véase la sección Coexistencia de IPv4 e IPv6 ). El uso de las direcciones IP de doble pila ( dualstack-ip ) posibilita el soporte de ambos protocolos en el mismo sistema. Cada protocolo utiliza su propia pila de red para que no se produzcan conflictos entre ambas versiones. Multicasting: servicios a la medida.- Mientras que en IPv4 algunos servicios (por ej. SMB) tenían que enviar por broadcast sus paquetes a todos los miembros de la red local, IPv6 permite un procedimiento muy distinto: con multicast es posible dirigirse al mismo tiempo a un grupo de ordenadores. Es decir, no a todos (broadcast) o sólo a uno (unicast), sino a un grupo. De qué grupo se trate depende de la aplicación. No obstante, existen algunos grupos ya definidos como todos los servidores de nombres (all nameservers multicast group) o todos los enrutadores (all routers multicast group). Página.- 199

203 6.5.2 El sistema de direcciones IPv6 Como ya se ha mencionado, el protocolo IP utilizado hasta la fecha presenta dos inconvenientes importantes. Por un lado, las direcciones IP disponibles son cada vez más escasas y por otro, la configuración de red y la administración de tablas de enrutamiento son cada vez más complicadas y requieren un gran esfuerzo de mantenimiento. IPv6 resuelve el primer problema con la ampliación del espacio de direcciones a 128 bits. En cuanto al segundo problema, la solución se encuentra en la estructura jerárquica de direcciones, los sofisticados mecanismos de asignación de direcciones en la red y la posibilidad del multihoming o existencia de varias direcciones para cada interfaz con acceso a distintas redes. En relación a IPv6 se distingue entre tres tipos de direcciones: Unicast.- Las direcciones de este tipo pertenecen a una única interfaz de red y los paquetes con una dirección unicast se entregan a un solo destinatario. Las direcciones de esta clase se utilizan para dirigirse a ordenadores individuales en una red local o en Internet. Multicast.- Las direcciones de este tipo hacen referencia a un grupo de interfaces. Los paquetes con una dirección multicast se entregan a todos los destinatarios pertenecientes a ese grupo. Este tipo de direcciones es utilizado principalmente por ciertos servicios de red para dirigirse a grupos determinados. Anycast.- Las direcciones de este tipo hacen referencia a un grupo de interfaces. Los paquetes con una dirección anycast se entregan a los miembros del grupo más cercano al remitente según lo determine el protocolo de enrutamiento utilizado. Las direcciones de este tipo son utilizadas por terminales para encontrar servidores que ofrezcan un servicio determinado en su sector de red. Todos los servidores reciben la misma dirección anycast. Cuando un terminal solicita un servicio, el servidor que responde es aquel que se encuentre más cercano al ordenador según el protocolo de enrutamiento empleado. Si este servidor no está disponible, se utiliza automáticamente el segundo más cercano y así sucesivamente. Las direcciones IPv6 se representan de forma hexadecimal y están formadas por ocho bloques de 16 bits cada uno separados por dos puntos (:). Está permitido suprimir bytes de cero al principio, pero no en medio ni al final de un grupo. Es posible sustituir más de cuatro bytes de cero sucesivos con el comodín ::. No se permite utilizar más de un comodín en una dirección. El proceso de suprimir los ceros se denomina en inglés collapsing. En el siguiente ejemplo se ilustra este procedimiento a través de una misma dirección escrita de tres formas equivalentes: fe80 : 0000 : 0000 : 0000 : 0000 : 10 : 1000 : 1a4 fe80 : 0 : 0 : 0 : 0 : 10 : 1000 : 1a4 fe80 : : 10 : 1000 : 1a4 Página.- 200

204 Cada parte de una dirección IPv6 tiene un significado determinado. Los primeros bytes forman un prefijo que indica el tipo de la dirección. La parte central hace referencia a una red o bien no representa nada, y el final de la dirección es la parte del equipo o host. Las máscaras de red se definen en IPv6 mediante la longitud del prefijo que se indica al final de la dirección con /. Según la dirección representada en el ejemplo siguiente, los últimos 64 bits integran la parte del ordenador y los primeros 64 la parte de red de la dirección. En otras palabras, la cifra 64 significa que la máscara de red se rellena bit a bit comenzando por la izquierda. Por eso la máscara de red tiene 64 bits. Al igual que en IPv4, un enlace del tipo Y de la máscara de red con la dirección IP determina si el ordenador se encuentra en la misma subred o en otra. Ejemplo de dirección IPv6 con prefijo: fe80 : : 10 : 1000 : 1a4 / 64 IPv6 admite distintos prefijos con un significado definido: Prefijo (hexadecimal) Uso 00 Direcciones IPv4 y compatibles con IPv4 sobre IPv6. Un router adecuado tiene que convertir el paquete IPv6 a IPv4. Hay otras direcciones especiales (por ejemplo loopback device) que utilizan este prefijo. Primera cifra 2ó3 (Aggregatable Global Unicast Address) Igual que ahora, también en el caso de IPv6 se puede recibir la asignación de subredes a través de un proveedor. En la actualidad existen los siguientes espacios de direcciones: 2001 : : / 16 (production quality address space) y 2002 : : / 16 (6 to 4 address space). fe80 : : / 10 (link-local) Las direcciones con este prefijo no pueden ser enrutadas y por tanto sólo se puede accer a ellas en la misma subred. fec0 : : / 10 (site-local) Estas direcciones pueden ser enrutadas pero solamente dentro de una misma organización. Estas direcciones corresponden a las direcciones privadas actuales (por ejemplo 10. x. x. x). ff (multicast) Las direcciones IPv6 que comienzan por ff son direcciones multicast. La estructura de las direcciones se divide en tres partes: Public topology.- La primera parte, que incluye entre otras cosas uno de los prefijos mencionados en las líneas superiores, sirve para enrutar el paquete en Internet. Contiene información codificada sobre el proveedor o la institución que proporciona la conexión de red. Site topology.- La segunda parte contiene información de ruta sobre la subred en la que ha de entregarse el paquete. Página.- 201

205 Interface ID.- La tercera parte identifica de forma unívoca la interfaz a la que va dirigida el paquete. Aquí se permite utilizar la dirección MAC como parte de la dirección, lo que simplifica enormemente la configuración del ordenador al ser una dirección única en el mundo y estar determinada por el fabricante de hardware. De hecho, los primeros 64 bits se agrupan incluso en un identificador EUI 64 en el que los últimos 48 bits se toman de la dirección MAC y los 14 restantes incluyen información especial sobre el tipo de identificador. Esto también permite asignar un identificador EUI 64 a dispositivos sin dirección MAC (conexiones PPP y RDSI). Partiendo de esta estructura básica, se distinguen cinco tipos de direcciones unicast: : : (unspecified).- Esta es la dirección de salida utilizada por un ordenador cuando su interfaz de red se inicia por primera vez y todavía no dispone de información sobre la propia dirección. : : 1 (loopback).- Dirección del dispositivo loopback. Dirección compatible con IPv4.- La dirección IPv6 está compuesta por la dirección IPv4 y un prefijo de 96 bits 0 al principio de la dirección. Este tipo de direcciones compatibles se utiliza en el tunneling. De esta forma, los ordenadores IPv4/IPv6 pueden comunicarse con otros situados en redes exclusivamente IPv4. Direcciones IPv6 asignadas a IPv4.- Este tipo de dirección indica la dirección IPv6 de un ordenador IPv4. Direcciones locales.- Existen dos tipos de direcciones para el uso puramente local: link-local.- Este tipo de dirección se utiliza exclusivamente en la subred local. Los enrutadores no pueden enviar los paquetes que cuenten con una dirección de salida o destino de este tipo a Internet o a otras subredes. Estas direcciones se caracterizan por un prefijo especial (fe80 : : / 10) y el ID de interfaz de la tarjeta de red. La parte central de la dirección se compone de bytes 0 sin significado. Este tipo de dirección se emplea en los procesos de configuración automática para dirigirse a ordenadores en la misma subred. Site-local.- Este tipo de dirección puede enrutarse entre distintas subredes pero no fuera de una organización (site) hacia Internet. Estas direcciones se utilizan en intranets y equivalen a las direcciones privadas de IPv4. Además de un prefijo definido (fec0 : : / 10) y del ID de interfaz, estas direcciones incluyen un campo de 16 bits en el que está codificado el ID de subred. El resto se rellena con bytes 0. Página.- 202

206 En IPv6 existe además una novedad: a una interfaz de red se le asignan por lo general varias direcciones IP, pudiendo así disponer de redes distintas. Una de ellas puede configurarse por completo automáticamente con ayuda de la dirección MAC y un prefijo conocido. De esta forma, todos los ordenadores de la red local (direcciones link-local) están disponibles inmediatamente después de iniciar IPv6 sin procesos de configuración adicionales. Gracias a las direcciones MAC integradas en las direcciones IP, estas direcciones pueden distinguirse a nivel global. Las partes de la Site Topology o Public Topology pueden variar dependiendo de la red en la que el ordenador se encuentre en ese momento. Si un ordenador se mueve entre distintas redes, necesita al menos dos direcciones. Una de ellas ( home address ) contiene, además del ID de interfaz, información sobre la red local en la que funciona normalmente el ordenador y el prefijo correspondiente. La home address es estática y no se modifica. Todos los paquetes dirigidos a este ordenador se entregan tanto en la red local como en la externa. La entrega de paquetes en la red externa es posible gracias a importantes novedades del protocolo IPv6: stateless autoconfiguration y neighbor discovery. Además de la home address, un ordenador móvil cuenta con una o varias direcciones adicionales pertenecientes a las redes externas en las que se mueve. Este tipo de direcciones se denomina care-of address. La red local del ordenador móvil debe contener una instancia que reenvíe los paquetes dirigidos a la home address en caso de que el ordenador se encuentre en otra red. En entornos IPv6, esta función la realiza un home agent que entrega todos los paquetes dirigidos a la dirección local del ordenador móvil mediante un túnel. Aquellos paquetes cuya dirección destino sea la care-of address pueden ser entregados directamente a través del home agent Coexistencia de IPv4 e IPv6 La migración de todos los ordenadores en Internet de IPv4 a IPv6 no va a producirse de la noche a la mañana, sino que ambos protocolos coexistirán durante algún tiempo. La coexistencia en un ordenador se resuelve gracias a la doble pila o dual stack. No obstante, queda la pregunta de cómo se comunican los ordenadores IPv6 con ordenadores IPv4 y cómo se transporta IPv6 a través de las redes IPv4 aún predominantes. El método de tunneling y las direcciones compatibles constituyen la respuesta a estos problemas. Las islas IPv6 individuales en medio de una red (global) IPv4 intercambian sus datos a través de túneles. Este método consiste en empaquetar los paquetes IPv6 en paquetes IPv4 para poder transportarlos a través de una red exclusivamente IPv4. Un túnel se define como la conexión entre dos puntos finales IPv4. Aquí debe especificarse la dirección destino IPv6 (o el prefijo correspondiente) a la que se dirigen los paquetes IPv6 encubiertos y la dirección remota IPv4 en la que han de recibirse los paquetes enviados por el túnel. En el caso más sencillo, los administradores configuran manualmente estos túneles entre su red y el punto destino. Este método se denomina tuneling estático. Página.- 203

207 Sin embargo, el método manual no siempre basta para configurar y administrar los túneles necesarios para el trabajo diario en red. Por este motivo se han desarrollado tres métodos que permiten el tuneling dinámico: 6over4.- Los paquetes IPv6 se empaquetan automáticamente en paquetes IPv4 y se envían a través de una red IPv4 en la que se ha activado el multicasting. De cara a IPv6 se actúa como si toda la red (Internet) fuese una única LAN (Local Area Network) de proporciones gigantescas. Así se detecta automáticamente el punto final IPv4 del túnel. Los inconvenientes de este mecanismo son una escalabilidad deficiente y el hecho de que el multicasting no está ni mucho menos disponible en toda Internet. Este método, que se describe en el RFC 2529, resulta adecuado para empresas pequeñas o redes de instituciones que dispongan de multicasting. 6to4.- En este método se generan automáticamente direcciones IPv4 a partir de direcciones IPv6, permitiendo así que las islas IPv6 se comuniquen entre sí a través de una red IPv4. No obstante, también existen algunos problemas en la comunicación entre las islas IPv6 e Internet. Este método se basa en el RFC IPv6 Tunnel Broker.- En este método se utilizan servidores especiales que se encargan de crear automáticamente túneles para los equipos con direcciones IPv6. Este procedimiento se describe en el RFC En medio de la anticuada Internet, existe una red mundial de subredes IPv6 conectadas entre sí por medio de túneles. Dicha red se conoce como 6Bone y en ella se prueba IPv6. Los desarrolladores de software y proveedores que desarrollan u ofrecen servicios IPv6 pueden servirse de este entorno de pruebas para acumular experiencias con el nuevo protocolo. Puede obtener información adicional en la página web del proyecto 6Bone: Configuración de IPv6 Para utilizar IPv6 normalmente no hace falta configurar nada especial en el lado del cliente. Únicamente es necesario cargar el soporte de IPv6 por ejemplo ejecutando el comando modprobe ipv6 como usuario root. De acuerdo con la filosofía de autoconfiguración en IPv6, se asigna a la tarjeta una dirección de red dentro de la red link-local. Normalmente no se mantiene ninguna tabla de enrutamiento en un ordenador cliente, ya que éste puede consultar mediante el Router Advertisement Protocol los enrutadores que existen en la red y el prefijo que se ha de utilizar. El programa radvd sirve para configurar un enrutador IPv6. Este programa indica a los clientes el prefijo utilizado para las direcciones IPv6 y el/los enrutador(es) en la red. Asimismo, el programa zebra también se puede utilizar para la configuración automática de direcciones y enrutadores. Página.- 204

208 La página del manual de ifup (man ifup) contiene información muy útil sobre la configuración de túneles con ayuda de los archivos de /etc/sysconfig/network Información adicional sobre IPv6 El resumen de IPv6 presentado no pretende ser una introducción completa acerca del amplio tema IPv6. Para más información (en inglés), puede consultar la literatura impresa o en línea que se presenta a continuación: Serie de artículos que describen de forma excelente los fundamentos de IPv6. Resulta muy adecuado para irse introduciendo en este tema. CÓMOs de IPv6 en Linux y muchos enlaces. Acceder a IPv6 a través de un túnel. Todo acerca de IPv6. RFC 2640 El RFC introductorio sobre IPv6. IPv6 Essentials Información general sobre IPv6. Silvia Hagen: IPv6 Essentials. O'Reilly & Associates, (ISBN ) Página.- 205

209 6.6 Ficheros de configuración de red Conceptos Para realizar la configuración de la red pueden utilizarse las herramientas gráficas del apartado anterior o bien realizar las modificaciones oportunas en los ficheros que contienen los datos de configuración, teniendo en cuenta que para ello deberá operarse con un usuario que tenga los permisos adecuados. Es recomendable que los usuarios administradores conozcan los ficheros que intervienen en la comunicación entre ordenadores y nunca vendrá mal una explicación de los conceptos subyacentes. Todas las tarjetas de red ya sean integradas o dispositivos hotplug (PCMCIA, USB y parcialmente también PCI) se detectan y configuran por medio de hotplug. Para comprender mejor este proceso, hay que tener presente los siguientes puntos: El sistema percibe a las tarjetas de red de dos formas: por una parte se trata de un dispositivo (device) físico, y por otra, actúa como interfaz (interface). Cuando un dispositivo es insertado o detectado, se genera un evento hotplug. Este evento hotplug hace que el dispositivo sea activado a través del script /sbin/hwup. Al activarse la tarjeta de red como nueva interfaz de red, el kernel produce otro evento hotplug que a su vez desencadena la configuración de la interfaz por medio de /sbin/ifup. El kernel numera los nombres de interfaz en función del orden cronológico en que se han registrado. El orden de inicio es decisivo para la denominación. Si la primera de varias tarjetas de red falla, se modifica la numeración/denominación de todas las tarjetas iniciadas con posterioridad. En el caso de tarjetas con auténtico soporte hotplug, lo importante es el orden en que los dispositivos han sido conectados. Con el fin de posibilitar una configuración flexible, por una parte se ha separado la configuración de dispositivos (hardware) e interfaces y, por otra, la asignación de configuraciones a dispositivos o interfaces ya no se realiza en base a los nombres de interfaz. La configuración de los dispositivos se encuentra en /etc/sysconfig/hardware/hwcfg-* y la de las interfaces en /etc/sysconfig/network/ifcfg-*. Los nombres de las distintas configuraciones describen los dispositivos o interfaces a los que pertenecen. Puesto que la asignación de controladores a nombres de interfaces presupone que los nombres de interfaces permanezcan invariables, esta asignación ya no puede tener lugar en /etc/modprobe.conf. Las entradas alias en este archivo podrían tener incluso efectos secundarios negativos en el nuevo concepto. Página.- 206

210 Los nombres de configuración, es decir, todo lo que sigue a hwcfg- o ifcfg-, pueden describir a los dispositivos mediante el lugar donde están instalados, su ID específico o el nombre de interfaz. El nombre de configuración para una tarjeta PCI puede ser, por ejemplo, bus-pci-0000:02:01.0 (ranura PCI) o bien vpid-0x8086-0x1014-0x0549 (ID de fabricante y producto). Para la interfaz correspondiente puede utilizarse bus-pci-0000:02:01.0 o wlan-id00:05:4e:42:31:7a (dirección MAC). Si se prefiere no asignar una configuración de red determinada a una tarjeta especificada sino a cualquier tarjeta de un tipo concreto (del que sólo puede haber una tarjeta insertada en cada momento), se elige un nombre de configuración menos específico. Por ejemplo, es posible emplear bus-pcmcia para todas las tarjetas PCMCIA. Por otra parte, los nombres pueden restringirse un poco más anteponiéndoles un tipo de interfaz. Por ejemplo, wlan-bus-usb puede asignarse a todas las tarjetas WLAN con conexión USB. Siempre se utiliza la configuración que mejor describe una interfaz o el dispositivo correspondiente a la interfaz. /sbin/getcfg se encarga de buscar la configuración más adecuada. La salida de getcfg proporciona todos los datos que pueden emplearse para describir un dispositivo. Consulte la página del manual de getcfg para obtener la especificación exacta de los nombres de configuración. El método descrito permite configurar correctamente una interfaz de red de forma fiable incluso aunque los dispositivos de red no se inicien siempre en el mismo orden. No obstante, aún queda por resolver el problema de que el nombre de interfaz todavía depende del orden de activación. Existen dos formas de garantizar el acceso fiable a la interfaz de una tarjeta de red determinada: /sbin/getcfg-interface nombre_de_configuración.- devuelve el nombre de la interfaz de red correspondiente. Por eso también es posible introducir en algunos (por desgracia no en todos) archivos de configuración de servicios de red el nombre de la configuración en lugar del nombre de interfaz (que no es permanente). Este es el caso, por ejemplo, del cortafuegos, dhcpd, enrutamiento o diversas interfaces de red virtuales (túneles). Es posible asignar un nombre de interfaz permanente a todas las interfaces cuya configuración no se designa con el nombre de interfaz. Para ello se define la entrada PERSISTENT_NAME=<pname> en una en una configuración de interfaz (ifcfg-*). El nombre permanente pname no puede ser uno de los nombres que el kernel asigna automáticamente, lo que ya excluye a eth*, tr*, wlan*, qeth*, iucv*, etc. En su lugar puede utilizarse, por ejemplo, net* o nombres descriptivos como external, internal o dmz. Los nombres permanentes se asignan a la interfaz inmediatamente después de su registro, por lo que es necesario volver a cargar el controlador de la tarjeta de red (o bien ejecutar hwup <descripción_del_dispositivo> ). En este caso no basta con ejecutar rcnetwork restart. Página.- 207

211 Hay que tener en cuenta que el uso de nombres permanentes de interfaz no se ha probado en todas las áreas. Puede ocurrir que algunas aplicaciones no funcionen correctamente con nombres de interfaz elegidos libremente. ifup no inicia el hardware, sino que presupone la existencia de una interfaz. Para iniciar el hardware se emplea hwup, que es ejecutado por hotplug (o coldplug). En cuanto se inicia un dispositivo, ifup se inicia automáticamente para la nueva interfaz a través de hotplug y, si el modo de inicio es onboot, hotplug o auto y el servicio network ha sido activado, ifup es ejecutado. Antiguamente lo normal era que ifup <nombre_de_interfaz> desencadenase el inicio del hardware. Hoy en día el proceso es exactamente el inverso. Primero se inicia un componente de hardware y todas las acciones posteriores resultan de ésta. Esto permite utilizar un juego de configuración existente para configurar de forma óptima una cantidad variable de dispositivos. Para una mayor claridad, en la siguiente tabla se recogen los scripts más importantes que intervienen en la configuración de red. Donde sea posible se distingue entre el punto de vista del hardware y de la interfaz: Etapa de la configuración Hardware Comando Función Los scripts hw* son activados por el subsistema hotplug para hw{up, down, iniciar un dispositivo, cancelar el inicio o preguntar el estado de un dispositivo. Puede obtenerse información adicional con status} man hwu. getcfg pregunta el nombre de interfaz correspondiente a un nombre de configuración o una descripción de hardware. Puede obtenerse información adicional con man getcfg. Interfaz getcfg Interfaz Los scripts if* activan o desactivan interfaces de red if{up, down, existentes o devuelven el estado de la interfaz en cuestión. status} Puede obtenerse información adicional con man ifup Ficheros de configuración Este apartado describe de forma resumida los archivos de configuración de red disponibles así como sus funciones y formatos. /etc/network/interfaces Este archivo contiene la configuración de las interfaces de red e incluye, entre otros parámetros, el modo de inicio, dirección IP, máscara y puerta de enlace. Los parámetros posibles se describen en la página del manual de ifup. Asimismo, todas las variables de los archivos dhcp, wireless y config pueden utilizarse en los archivos ifcfg-* en caso de que una opción de configuración normalmente global deba utilizarse sólo para una interfaz. Página.- 208

212 Un ejemplo de fichero /etc/network/interfaces para un equipo con tres interfaces de red, dos ethernet y otro wireless, podría ser: auto lo iface lo inet loopback iface wlan0 inet static address netmask gateway wireless-key s:estaesmiclave wireless-essid Mired auto wlan0 iface eth0 inet static address netmask iface eth1 inet dhcp Si se realiza alguna modificación para algún interface en este fichero habrá que suspender el funcionamiento del interface con la instrucción ifdown interface, por ejemplo, ifdown wlan0. Si esta instrucción no suspende el funcionamiento del interface habrá que utilizar ifconfig wlan0 down. Para activar su funcionamiento se utilizaría ifup wlan0 o ifconfig wlan0 up. /etc/resolv.conf En este archivo se indica el dominio al que pertenece el ordenador (palabra clave search) y las direcciones de los servidores de nombres (palabra clave nameserver) al que se debe dirigir. Es posible introducir más nombres de dominio. Al resolver nombres que no estén totalmente cualificados, se intentará generar un nombre válido y cualificado añadiendo entradas únicas en search. Se pueden dar a conocer varios servidores de nombres añadiendo líneas que comiencen con nameserver. Los comentarios se introducen con #. A continuación se muestra un ejemplo del contenido de este fichero: # Generated by NetworkManager search tiernogalvan.es nameserver nameserver Página.- 209

213 Algunos servicios, como pppd (wvdial), ipppd (isdn), dhcp (dhcpcd y dhclient), pcmcia y hotplug pueden modificar los archivos /etc/resolv.conf mediante el script modify_resolvconf. Al modificar el archivo /etc/resolv.conf con este script, se incluirá en el archivo un comentario con información sobre los servicios que se han modificado, el lugar donde se encuentra el archivo original y cómo es posible suprimir las modificaciones automáticas. Si /etc/resolv.conf es modificado más veces, se volverá a limpiar este cúmulo de modificaciones cuando se recojan en otro orden; lo cual puede ocurrir con isdn, pcmcia y hotplug. Si un servicio no ha finalizado limpiamente, se puede restaurar el estado original con ayuda del script modify_resolvconf. Al arrancar se probará si resolv.conf se ha quedado modificado (por ejemplo debido a un cuelgue del sistema); en ese caso se volverá a restaurar el resolv.conf original (sin modificar). /etc/hosts Este archivo tiene una tabla de correspondencia entre nombres de ordenadores y direcciones IP. En esta tabla deben aparecer todos los ordenadores con los que se quiere establecer una conexión IP cuando no se usa un servidor de nombres. Cada ordenador ocupa una línea en la tabla que contiene el número IP, el nombre completo de la máquina y el nombre (abreviado), por ejemplo profe. La línea debe comenzar con la dirección IP y las demás indicaciones se separan con espacios o tabuladores. Los comentarios comienzan con #. Un ejemplo puede ser el siguiente: localhost servidor.tiernogalvan.es profe.tiernogalvan.es alumno.tiernogalvan.es servidor profe alumno /etc/networks En este archivo se convierten los nombres de redes en direcciones de red. El formato se parece al del archivo hosts sólo que aquí los nombres de las redes aparecen por delante de sus direcciones IP, por ejemplo: loopback redlocal /etc/host.conf La resolución de nombres, o sea, la traducción del nombre del ordenador o de la red mediante la librería resolver, se gestiona a través de este archivo. Este sólo se utiliza para programas con enlaces a libc4 o libc5 (para programas glibc actuales, ver las opciones de configuración en /etc/nsswitch.conf). Un parámetro debe ocupar una sola línea y los comentarios comienzan con #. Página.- 210

214 Los parámetros posibles se muestran en la tabla siguiente: Parámetro Descripción Determina el orden de llamada a los servicios de resolución de nombres. Los parámetros posibles, separados por espacios o comas, son: order hosts, bind, - hosts: búsqueda en el archivo /etc/hosts. nis - bind: llama a un servidor de nombres. - nis: mediante NIS. multi on/off Determina si un ordenador dado e alta en /etc/hosts puede tener varias direcciones IP. nospoof on Estos parámetros influyen sobre el spoofing del servidor de nombres, pero spoofalert on/off no tienen ninguna influencia adicional sobre la configuración de red. trim nombredominio El nombre de dominio que se indica aquí, se resta del nombre totalmente cualificado del ordenador que lo contiene (antes de asignar la dirección IP al nombre de ordenador). Se trata de una opción muy útil cuando el archivo /etc/hosts sólo contiene nombres de ordenadores locales (alias) y éstos deben ser reconocidos también cuando se añade el nombre del dominio. Un ejemplo de contenido del fichero /etc/host.conf puede ser: # En la red hay un servidor de nombres order hosts bind # permitir múltiples direcciones multi on /etc/nsswitch.conf Con la version 2.0 de la librería GNU de C comenzó el uso del Name Service Switch (NSS) (ver la página del manual de man 5 nsswitch.conf o bien la información más extensa de The GNU Library Reference Manual, capítulo System Databases and Name Service Switch - ver libcinfo. El archivo /etc/nsswitch.conf determina en qué orden se solicitan determinadas informaciones. El ejemplo siguiente muestra un archivo nsswitch.conf en el que las líneas de comentarios comienzan con # y respecto a la base de datos hosts indica que se envía una solicitud al servicio DNS después de consultar /etc/hosts (files). passwd: group: compat compat hosts: networks: files dns files dns Página.- 211

215 services: protocols: db files db files netgroup: automount: files files nis Las bases de datos accesibles vía NSS se recogen en la tabla siguiente. Para el futuro se espera también la disponibilidad de automount, bootparams, netmasks y publickey. Base de datos Descripción aliases Alias de correo, usada por sendmail (ver la página del manual man 5 aliases). ethers Direcciones de ethernet. group Usada por getgrent para grupos de usuarios (ver la página man 5 group). hosts Para nombres de host y direcciones IP, utilizada por funciones como gethostbyname o similares. netgroup Lista de hosts y de usuarios válida en la red para administrar los derechos de acceso; ver la página del manual man 5 netgroup. networks Nombres y direcciones de redes, usada por getnetent. passwd Contraseñas de usuarios, utilizada por getpwent. Ver la página man 5 passwd. protocols Protocolos de red, utilizada por getprotoent. Ver la página man 5 protocols. rpc Nombres y direcciones del tipo Remote Procedure Call, utilizada por getrpcbyname y funciones similares. services Servicios de red; datos usados por getservent. shadow Las contraseñas shadow de los usuarios, utilizada por getspnam. Ver la página del manual man 5 shadow. Las opciones de configuración para bases de datos NSS se muestran en la tabla siguiente: Opción Descripción files Acceso directo a los archivos, por ejemplo a /etc/aliases. db Acceso a través de una base de datos. nis, nisplus NIS. dns Parámetro adicional, solo aplicable para hosts y networks. compat Parámetro adicional para passwd, shadow y group. Página.- 212

216 /etc/nscd.conf Este es el archivo para configurar nscd (Name Service Cache Daemon) - ver páginas del manual man 8 nscd y man 5 nscd.conf. La información en cuestión es la que se encuentra en passwd y groups. Es esencial para el buen rendimiento de servicios de directorio como NIS y LDAP, ya que en caso contrario cualquier acceso a nombres o grupos requeriría una conexión de red. hosts no se lee para no tener que reiniciar el daemon, por ejemplo, cuando se cambia la resolución de nombres de dominio (DNS) modificando /etc/resolv.conf. Cuando está activada la característica caching para passwd, suelen pasar unos 15 segundos hasta que un usuario recién creado sea conocido en el sistema. Este tiempo de espera se puede reducir reiniciando nscd con el comando rcnscd restart. /etc/hostname Aquí se encuentra el nombre del ordenador, es decir, sólo el nombre del host sin el nombre de dominio. Hay distintos scripts que leen este archivo durante el arranque del ordenador. Sólo debe contener una única línea con el nombre del ordenador. /etc/sysconfig/hardware/hwcfg-* Estos archivos contienen la configuración de hardware de las tarjetas de red y otros dispositivos. Incluyen los parámetros necesarios como por ejemplo módulo del kernel, modo de inicio y correspondencias de scripts. Puede encontrar información adicional en la página del manual de hwup. Los archivos de configuración hwcfg-static-* se aplican al iniciarse coldplug independientemente del hardware disponible en el sistema. /etc/sysconfig/network/config, dhcp, wireless El archivo config incluye opciones de configuración generales para ifup, ifdown e ifstatus. Este archivo está completamente comentado. También hay comentarios en dhcp y wireless, donde se almacenan las opciones generales de configuración para DHCP y las tarjetas de red inalámbricas. También se pueden utilizar todas las variables de estos archivos en ifcfg-*, donde se les da preferencia. /etc/sysconfig/network/routes, ifroute-* Aquí se define el enrutamiento estático de los paquetes TCP/IP. En el archivo /etc/sysconfig/network/routes pueden introducirse todas las rutas estáticas necesarias para las diversas tareas del sistema: la ruta a un ordenador, a un ordenador a través de una pasarela o a una red. Las rutas individuales requeridas por algunas interfaces pueden introducirse en el archivo /etc/sysconfig/network/ifroute-*, en un archivo individual para cada interfaz. El signo * ha de sustituirse por el nombre de la interfaz. Las entradas podrían presentar el siguiente aspecto: DESTINO GATEWAY MASCARA INTERFACE [TIPO] [OPCIONES] DESTINO GATEWAY PREFIXLEN INTERFACE [TIPO] [OPCIONES] DESTINO/PREFIXLEN GATEWAY INTERFACE [TIPO] [OPCIONES] Página.- 213

217 En caso de que no se especifiquen GATEWAY, MÁSCARA, PREFIXLEN o INTERFACE, debe introducirse en su lugar el signo -. Las entradas TIPE y OPCIONES pueden omitirse sin más. La primera columna contiene el destino de la ruta. Dicho destino puede tratarse de la dirección IP de una red u ordenador o del nombre completo cualificado de una red u ordenador en el caso de servidores de nombres accesibles. En la segunda columna aparece la pasarela predeterminada o una pasarela a través de la cual puede accederse a un ordenador o a una red. La tercera columna contiene la máscara de red de una red u ordenador detrás de una pasarela. La máscara de red para ordenadores que se encuentran detrás de una pasarela es, por ejemplo, La última columna sólo tiene importancia en el caso de redes conectadas al ordenador local (loopback, Ethernet, RDSI, PPP, ). Aquí debe aparecer el nombre del dispositivo Scripts de arranque Además de los archivos de configuración mencionados, existen diferentes scripts (macros) que inician los programas de red cuando el ordenador arranca. Estos scripts se inician cuando el sistema entra en uno de los niveles de ejecución de multiusuario. La siguiente tabla muestra algunos de los scripts de arranque de las aplicaciones de red. Script Descripción /etc/init.d/network Se encarga de la configuración de las interfaces de red. Con este fin, el hardware debe haber sido iniciado a través de /etc/init.d/coldplug (por medio de hotplug). En caso de que el servicio network no se haya iniciado, ninguna interfaz de red será activada mediante hotplug al ser insertada. /etc/init.d/inetd Inicia xinetd. xinetd puede utilizarse para proporcionar servicios de servidor en el sistema. Así por ejemplo, puede activar vsftpd cuando se inicia una conexión FTP. /etc/init.d/portmap Inicia portmapper, el cual se necesita para utilizar servidores RPC tales como un servidor NFS. /etc/init.d/nfsserver Inicia el servidor NFS. /etc/init.d/sendmail Controla el proceso sendmail. /etc/init.d/ypserv Inicia el servidor NIS. /etc/init.dypbind Inicia el cliente NIS. Página.- 214

218 6.7 Actividades 1. Calcular los datos de una red (dirección IP, máscara, dirección de la red, dirección de difusión, nº máximo de direcciones IP y nº máximo de equipos) sabiendo que un equipo está configurado con / En una red configurada para un máximo de 30 equipos, un equipo tiene la dirección IP Calcular los demás datos de la red. 3. Se desea instalar una red con 64 ordenadores. Qué rango de direcciones IP y máscara se les asignaría?. Cuales serían los demás datos de la red?. 4. En una red que admite 126 equipos la dirección de difusión es Calcular el rango de direcciones IP de los equipos y los demás datos de la red. 5. En una red con máscara y dirección de la red hallar el rango de direcciones IP posibles y los demás datos de la red. 6. Haciendo uso de las máquinas virtuales realizar un planteamiento similar a la práctica desarrollada en la documentación pero para dos redes con máscaras diferentes y probar el funcionamiento correcto de la puerta de enlace. 7. Reconfigurar el adaptador de red con valores diferentes a los actuales y comprobar que todo funciona correctamente haciendo uso de la instrucción ping y consultando alguna página de Internet. 8. Modificar la dirección IP del equipo editando el fichero correspondiente y comprobar desde el entorno gráfico que ha quedado modificada. Parar y levantar el funcionamiento del interface afectado y comprobar mediante ifconfig que la modificación efectuada está activa. 9. Añadir un Servidor de nombres editando el fichero adecuado y comprobar la modificación desde el entorno gráfico. 10. Añadir un equipo (con su correspondiente dirección IP) al fichero /etc/hosts y comprobar que se le puede hacer ping tanto por su dirección IP como por su nombre de equipo. 11. Ver el contenido del fichero /etc/networks. 12. Comprobar si existe el fichero /etc/host.conf y explicar la razón de su existencia o inexistencia. 13. Consultar en el fichero adecuado el nombre del equipo. Página.- 215

219 7 ADMINISTRACIÓN DE LA INFORMACIÓN I 7.1 Aspectos didácticos Objetivos: Conocer los sistemas de archivos más comunes y sus características principales. Administrar las particiones de un dispositivo y los sistemas de archivos desde el entorno gráfico. Conocer y practicar las instrucciones de manejo de los sistemas de ficheros. Administrar ficheros y carpetas desde el entorno gráfico. Conocer y practicar las instrucciones de administración de ficheros y carpetas (copiar, borrar, mover, cambiar permisos, cambiar propietario y grupo, ). Practicar el uso de comodines redireccionamientos y filtros. Saber crear los diferentes tipos de enlaces desde el entorno gráfico y mediante comandos. Utilizar herramientas de búsqueda de diferentes tipos de información sobre el sistema. Documentación. La documentación de este tema se puede ampliar a través de la ayuda del S.O. (instrucciones man, info, ) y con la documentación oficial de MaX y de Ubuntu. Resumen. En este tema se dan a conocer los diferentes sistemas de archivos utilizados por los diferentes sistemas operativos y cómo se gestionan tanto desde el entorno gráfico como desde la línea de comandos. Se muestra la organización de los ficheros dentro del sistema de archivos en un área de directorios, otra de inodos y otra con los bloques de información. Se tratan los conceptos de directorio activo, trayectoria, comodines, redireccionamientos y filtros. Y finalmente se recorren las diferentes herramientas y comandos que permiten obtener información del sistema. Temporización: 12 horas. Página.- 216

220 7.2 Sistemas de archivos Antes de pasar a analizar los diferentes sistemas de archivos soportados por MaX es conveniente conocer algunos conceptos: Metadatos.- información sobre la estructura interna de los datos de un sistema de archivos que garantiza su orden y disponibilidad. Todo sistema de archivos posee su propia estructura de metadatos. Aquí es donde radica en parte la causa de las diferencias en cuanto a rendimiento de los sistemas de archivos. Es extremadamente importante mantener intactos los metadatos, ya que de lo contrario se podría dañar todo el sistema de archivos. Inodos.- contienen toda la información sobre un archivo: el nombre, el tamaño, el número de enlaces, la fecha, la hora en que fue creado, modificaciones, accesos como puntero de los bloques del disco duro y dónde se encuentra grabado. Diario (journal).- es una estructura interna del disco con un tipo de protocolo en el que el controlador del sistema de archivos introduce los (meta)datos del sistema de archivos que van a ser modificados. El journaling reduce enormemente el tiempo de elaboración de un sistema Linux, ya que de este modo el controlador del sistema de archivos no debe iniciar una búsqueda de los metadatos modificados en todo el disco. En vez de eso, basta con ver las entradas del diario. El kernel de las nuevas versiones de Linux ofrece una gran selección de sistemas de archivos. El programa Gparted, accesible solamente para usuarios con privilegios de administración (root o madrid), muestra los sistemas de archivos soportados por MaX: Fig 87: Sistemas de archivos mostrados por Gparted Página.- 217

221 Para lanzar la ejecución del programa puede hacerse desde la línea de comandos con gparted o a través del menú Aplicaciones Sistema Administración Editor de particiones Opción Ver - Opción Soporte para sistema de archivos. La ventana muestra además las operaciones permitidas y los paquetes necesarios para cada sistema de ficheros. Hay que tener siempre en cuenta que no existe ningún sistema de archivos que pueda funcionar del mismo modo con todas las aplicaciones. Cada sistema de archivos tiene puntos fuertes y débiles que se deben de tener presentes. Ni el sistema de archivos más desarrollado de todo el mundo puede sustituir a la copia de seguridad. Los conceptos integridad de los datos o coherencia de los datos no se refieren en este capítulo a la coherencia de los datos que un usuario tiene guardados (los datos que una aplicación escribe en los archivos). La coherencia de estos datos debe quedar asegurada por las aplicaciones mismas. En principio, todas las operaciones de particionamiento, así como de creación y edición de sistemas de archivos puede realizarse mediante Gparted Ext2 El origen de Ext2 se remonta a los primeros días de Linux. Su antecesor, el Extended File System fue implementado en abril de 1992 e integrado en Linux 0.96c. Este sufrió una serie de modificaciones y durante años se le conoció como Ext2 a la vez que se le consideró el sistema de archivos más popular de Linux. Con la introducción del sistema Journaling File y de su tiempo de elaboración tan sorprendentemente corto, Ext2 perdió importancia. Algunas de sus características más relevantes son: Estabilidad.- Con el correr del tiempo, Ext2 sufrió muchas mejoras que le hicieron ganarse la reputación de ser sólido como una roca. En caso de una caída del sistema en la que el sistema de archivos no puede desmontarse adecuadamente, e2fsck inicia un análisis de los datos del sistema de archivos. Los metadatos se reconstruyen y los archivos o bloques de datos que quedan sueltos se guardan en un directorio denominado lost+found. En contraposición a la mayoría de los sistemas de archivos transaccionales o journaling, e2fsck analiza todo el sistema de archivos y no sólo los bits de metadatos modificados. Esto lleva más tiempo que la comprobación de los datos de protocolo de un sistema journaling. Dependiendo del tamaño del sistema de archivos, puede llegar a durar más de media hora. Por esta razón, Ext2 no se escoge para ningún servidor que deba tener un alto rendimiento. Dado que Ext2 no debe hacerse cargo de ningún diario y que necesita poca memoria, a menudo es más rápido que otros sistemas de archivos. Fácil actualización.- Tomando como base la fortaleza de Ext2 y Ext3, Ext4 se convertirá en el sistema de archivos de la próxima generación. Su fiabilidad y estabilidad se complementarían perfectamente con las ventajas de los sistemas de archivos journaling. Página.- 218

222 7.2.2 Ext3 Ext3 fue concebido por Stephen Tweedie. A diferencia del resto de los sistemas de archivos de última generación, no está basado en un nuevo diseño, sino en Ext2. Ambos sistemas de archivos están estrechamente vinculados. Un sistema de archivos Ext3 se puede montar fácilmente sobre un sistema Ext2. La diferencia fundamental entre ambos radica en que Ext3 también soporta journaling. Estas son brevemente las ventajas de Ext3: Actualización sencilla y muy fiable de Ext2.- Ya que Ext3 se basa en el código de Ext2, a la vez que comparten formato tanto para el disco como para los metadatos, las actualizaciones no son complicadas. Incluso se pueden llevar a cabo mientras el sistema de archivos Ext2 está montado. El proceso de cambio a otro sistema de archivos journaling, como por ejemplo ReiserFS, JFS, o XFS, puede llegar a ser muy trabajoso debido a que se deben realizar copias de seguridad de todo el sistema de archivos y después instalarlo desde cero. Sin embargo, el cambio a Ext3 puede ser una cuestión de minutos. Además es muy seguro, ya que resulta difícil que la reelaboración de todo un sistema de archivos desde cero no tenga errores. Si se tiene en cuenta la cantidad de sistemas Ext2 disponibles que esperan una actualización a un sistema de archivos journaling, se puede imaginar fácilmente el significado de Ext3 para muchos administradores de sistemas. El pasar de Ext3 a Ext2 es tan fácil como la actualización en sentido contrario. Tan sólo se tiene que desmontar el sistema Ext3 y montarlo como Ext2. Fiabilidad y rendimiento.- Otros sistemas de archivos journaling siguen el principio journaling de sólo metadatos (metadata-only). Esto significa que los metadatos permanecen en un estado coherente, lo que sin embargo no puede garantizarse automáticamente para los datos del sistema de archivos. Ext3 tiene capacidad para cuidar tanto de los metadatos como de los datos mismos. Se puede configurar individualmente el detalle con el que Ext3 debe ocuparse de los datos y metadatos. El grado más alto de seguridad (es decir, integridad de los datos) se consigue al arrancar Ext3 en modo data=journal; esto puede hacer que el sistema sea más lento, ya que se guardarán en el diario tanto los datos como los metadatos. Una posibilidad relativamente nueva consiste en la utilización del modo data=ordered, que garantiza la integridad tanto de los datos como de los metadatos a pesar de que sólo realiza journaling para los metadatos. El controlador del sistema de archivos reúne todos los bloques de datos relacionados con la actualización de los metadatos. Estos bloques de datos se escriben en el disco antes de que los metadatos sean actualizados. Con esto se consigue la coherencia de datos y metadatos sin pérdida de rendimiento. Un tercer tipo de modo es data=writeback. De esta forma se puede escribir datos en el sistema de archivos principal después de que los metadatos hayan pasado al diario. Para muchos, esta opción es la mejor configuración en cuanto a rendimiento. Sin embargo, con esta opción puede ocurrir que aparezcan viejos datos en los archivos después de haberse producido una caída del sistema mientras se garantiza la integridad del sistema de archivos. Mientras no se indique otra opción, Ext3 arrancará con la opción predeterminada data=ordered. Página.- 219

223 7.2.3 Conversión de un sistema de archivos Ext2 a Ext3 Las operaciones a realizar son: Crear el diario (journal).- Hay que ejecutar el comando tune2fs -j como usuario root. tune2fs se encarga de crear el diario Ext3 con parámetros estándar. Si por el contrario se prefiere definir con qué tamaño y en qué dispositivo debe crearse el diario, hay que ejecutar tune2fs -J con los parámetros size=... y device=.... Se puede obtener información adicional sobre tune2fs en las páginas del manual. Determinar el tipo de sistema de archivos en /etc/fstab.- Para que el sistema de archivos Ext3 sea detectado como tal, hay que abrir el archivo /etc/fstab y cambiar el tipo de sistema de archivos de la partición correspondiente de ext2 a ext3. La modificación se aplicará tras reiniciar el sistema. Uso de Ext3 para el sistema de archivos raíz.- Para arrancar el sistema de archivos raíz (root) en ext3, hace falta integrar adicionalmente los módulos ext3 y jbd en el RAM disk inicial initrd. A continuación introduzca estos dos módulos en el archivo /etc/sysconfig/kernel bajo INITRD_MODULES. Posteriormente hay que ejecutar el comando mk_initrd Ext4 Ext4 es el sistema de archivos sucesor de ext3 que actualmente está empezando a utilizarse para Linux. Nace para implementar algunas nuevas características que ext3 no podía implementar. El desarrollo de ext4 empezó en Noviembre de 2006, aunque ha sido desconocido para la mayoría de usuarios de Linux hasta ahora, que empieza a aparecer por defecto en las diferentes distribuciones. Algunas de las ventajas de ext4 son: Rendimiento y tasas de transferencia muy superiores a ext3. Sistemas de ficheros de mayor tamaño.- el tamaño máximo de ext3 es de 32 Tb mientras que el ext4 permitirá tamaños de hasta 1 exabyte (1024 Petabytes Pb) (1024*1024 Tb). Esto puede no ser importante para los usuarios de escritorio, pero sí es importante para servidores con grandes arrays de discos. Extensiones: Se mejora la eficiencia de los descriptores de disco, reduciendo los tiempos de borrado de ficheros largos, además de otras ventajas. Preasignación persistente.- Si una aplicación necesita espacio de disco predefinido previamente a usarlo, la mayoría de Sistemas Operativos lo hacen escribiendo ceros en un espacio de disco no usado. ext4 permite esta preasignación sin hacer esto, mejorando el rendimiento de bases de datos y herramientas multimedia. Página.- 220

224 Ubicación retrasada: ext4 puede retrasar la ubicación de espacio de disco hasta el último momento, mejorando el rendimiento. Más subdirectorios: Si alguna vez te ha fastidiado que un directorio sólo pueda contener subdirectorios en ext3, te alegrará saber que este límite se ha eliminado en ext4. Checksums.- ext4 añade dígitos de control (checksum) a los datos, que aumentan la fiabilidad y el rendimiento. Desfragmentación.- Aunque ext3 apenas se fragmenta, los ficheros almacenados siempre tienen cierta tendencia pequeña a estar fragmentados. ext4 añade soporte para la desfragmentación, que mejorará el rendimiento global. Undelete: ext4 soporta undelete, herramienta para recuperar archivos que han sido borrados de forma accidental. Comprobación de ficheros más rápida: ext4 añade estructuras de datos que permite a fsck saltarse partes no usadas del disco que está comprobando. Timestamp de nanosegundos.- La mayoría de sistemas de archivos, incluyendo ext3, incluyen un timestamp (marca de tiempo) con precisión de un segundo. ext4 añade la precisión de este dato hasta el nanosegundo. Asimismo se dispondrá de marcas de tiempo hasta el año 2514 el lugar del 2038 de ext3. Debido a que ext4 todavía está en una fase temprana de desarrollo, quizá no estaría recomendado para sistemas importantes en producción, aunque llevando más de un año de corrección de bugs, se considera actualmente estable y recomendado para sistemas domésticos o sistemas en producción no estrictamente vitales. Quitando algunas aplicaciones que se muestran incompatibles con ext4 por la utilización de entrada/salida a disco no estándar, el resto de aplicaciones mostrarán un incremento notable de rendimiento ReiserFS ReiserFS es producto elaborado por Hans Reiser y por el equipo de desarrollo Namesys. ReiserFS se perfiló como una alternativa poderosa a Ext2. Sus grandes ventajas eran: una mejor administración de la memoria del disco duro, un rendimiento optimizado del acceso al disco y una recuperación más rápida después de una caída del sistema. A continuación se describen con más detalle: Mejor administración de la memoria del disco duro.- En ReiserFS, todos los datos se organizan en una estructura llamada B*-balanced tree. La estructura de árbol contribuye a una mejor administración de la memoria del disco duro, ya que los archivos pequeños se pueden guardar directamente en las hojas del B*tree (árbol), en lugar de guardarlos en otro lugar y luego tener que administrar el puntero para que apunte al sitio indicado. Además, la memoria no se asignará en unidades de 1 a 4 Kb, Página.- 221

225 sino en la unidad exactamente necesaria. Otra ventaja es el proceso dinámico de inodes. Esto dota al sistema de archivos de una gran flexibilidad frente a los sistemas convencionales, como por ejemplo Ext2, en el que se debe indicar la densidad del inode en el momento de crear el sistema de archivos. Mejor rendimiento del acceso al disco duro.- En los archivos pequeños, tanto los datos del archivo como la información de estado (inodo) se guardan uno al lado del otro. Basta con un único acceso al disco duro para suministrar toda la información necesaria. Rápida recuperación tras una caída del sistema.- Desde el contenido de un diario al seguimiento de las pequeñas modificaciones de metadatos, la comprobación del sistema de archivos se reduce a unos pocos segundos incluso en sistemas de archivos grandes. Fiabilidad gracias al registro de diario (data journaling).- ReiserFS también soporta el diario y el modo ordered de datos. El modo predeterminado es data=ordered, lo que garantiza la integridad tanto de los datos como de los metadatos. No obstante, el diario se utiliza sólo para los metadatos Reiser4 Inmediatamente después de que el kernel 2.6 viera la luz, un nuevo miembro se sumó a la familia de sistemas de archivos transaccionales: Reiser4. Reiser4 se diferencia sustancialmente de su predecesor ReiserFS (versión 3.6), introduce el concepto de plugins para configurar las funciones del sistema de archivos y un concepto de seguridad más elaborado. Concepto de seguridad elaborado.- Durante el diseño de Reiser4, los desarrolladores pusieron especial énfasis en la implementación de funciones relacionadas con la seguridad. Como consecuencia, Reiser4 incorpora un conjunto de plugins de seguridad dedicados, el más importante de los cuales introduce el concepto de elementos de archivo o items. Actualmente, el control de acceso a los archivos se define en función del archivo. Si existe un archivo muy grande que contiene información relevante para varios usuarios, grupos o aplicaciones, los permisos de acceso deben ser poco precisos para incluir a todos los interesados. En Reiser4 es posible dividir este tipo de archivos en porciones más pequeñas o items. Los permisos de acceso pueden definirse para cada elemento y usuario, permitiendo una gestión de seguridad de archivos mucho más precisa. El archivo /etc/passwd constituye un ejemplo perfecto. Actualmente, root es el único usuario que puede leer y editar este archivo mientras que el resto de usuarios sólo tiene permiso de lectura. El concepto de items de Reiser4 hace que sea posible dividir este archivo en un conjunto de elementos (un item por cada usuario) y permitir a usuarios o aplicaciones modificar sus propios datos sin acceder a los datos de otros usuarios. Este concepto favorece tanto la seguridad como la flexibilidad. Página.- 222

226 Extensiones a través de plugins.- Muchas de las funciones inherentes a un sistema de archivos o externas pero usadas normalmente por sistemas de archivos se han implentado en Reiser4 en forma de plugins. Si desea enriquecer el sistema de archivos con nuevas funciones, estos plugins pueden añadirse fácilmente al sistema base sin necesidad de volver a compilar el kernel o reformatear el disco duro. Estructura mejorada del sistema de archivos gracias a la asignación retardada.- Al igual que XFS, Reiser4 soporta la asignación retardada incluso para metadatos, mejorando el rendimiento global del sistema JFS JFS, Journaling File System, fue desarrollado por IBM para AIX. La primera versión beta de JFS portada a Linux llegó al entorno Linux en el verano del año La versión salió a la luz en el año JFS está diseñado para cumplir las exigencias del entorno de un servidor de alto rendimiento. Al ser un sistema de archivos de 64 bits, JFS soporta archivos grandes y particiones LFS (Large File Support), lo cual es una ventaja más para los entornos de servidor. Un análisis más detallado de JFS muestra por qué este sistema de archivos es una buena elección para su servidor Linux: Journaling eficaz.- JFS sigue el principio de metadata only. En vez de una comprobación completa, sólo se tienen en cuenta las modificaciones en los metadatos provocadas por las actividades del sistema. Esto ahorra una gran cantidad de tiempo en la fase de recuperación del sistema tras una caída. Las actividades simultáneas que requieren más entradas de protocolo se pueden unir en un grupo en el que la pérdida de rendimiento del sistema de archivos se reduce en gran medida gracias a múltiples procesos de escritura. Eficiente administración de directorios.- JFS abarca diversas estructuras de directorios. En pequeños directorios se permite el almacenamiento directo del contenido del directorio en su inode. En directorios más grandes se utilizan B +trees, que facilitan considerablemente la administración del directorio. Mejor utilización de la memoria mediante la asignación dinámica de inodes.- En Ext2 es necesario indicar el grosor del inode (la memoria ocupada por la información de administración) por adelantado. Con ello se limita la cantidad máxima de archivos o directorios de su sistema de archivos. Esto no es necesario en JFS, puesto que asigna la memoria inode de forma dinámica y la pone a disposición del sistema cuando no se está utilizando. Página.- 223

227 7.2.8 XFS Pensado originariamente como sistema de archivos para sistemas operativos IRIX, SGI comenzó el desarrollo de XFS ya a principios de la década de los noventa. Con XFS consigue un sistema de archivos journaling de 64 bits de gran rendimiento adaptado a las necesidades extremas de hoy en día. XFS también está indicado para el trabajo con archivos grandes y ofrece un buen rendimiento en hardware de última generación. Sin embargo XFS, al igual que ReiserFS, tiene la desventaja de conceder mucha importancia a la integridad de los metadatos y muy poca a la de los datos. Algunas de sus funciones clave son: Manejo de grupos de asignación (allocation groups).- En el momento de la creación de un sistema de archivos XFS, el dispositivo de bloque (block-device) que sirve de base al sistema de archivos se divide en ocho o más campos lineales de igual tamaño denominados grupos de asignación. Cada grupo de asignación administra inodes así como memoria libre. Se puede considerar a estos grupos prácticamente como sistemas de archivos dentro de sistemas de archivos. Puesto que estos grupos de asignación son bastante independientes, el kernel puede dirigirse a más de uno simultáneamente. Este concepto de grupos de asignación independientes satisface los requisitos de los sistemas con varios procesadores. Alto rendimiento con eficiente administración de la memoria del disco.- B +trees administran la memoria libre y los inodes dentro de los grupos de asignación. El manejo de B+trees contribuye al gran rendimiento de XFS. Una característica de XFS es la llamada asignación retardada. XFS realiza la asignación de la memoria mediante la división en dos de los procesos. Una transacción en suspenso queda guardada en RAM y el espacio en la memoria queda reservado. XFS aún no decide dónde exactamente (en qué bloque del sistema de archivos) se almacenan los datos. Esta decisión se retrasará hasta el último momento. Con esto, algunos datos temporales no quedan nunca almacenados en el disco, ya que cuando llegue el momento de decidir el lugar de almacenamiento ya estarán obsoletos. Así, XFS aumenta el rendimiento y disminuye la fragmentación del sistema de archivos. Debido a que una asignación retardada tiene como consecuencia menos procesos de escritura que en otros sistemas de archivos, es probable que la pérdida de datos tras una caída del sistema durante el proceso de escritura sea mayor. Preasignación para evitar la fragmentación del sistema de archivos.- Antes de la escritura de los datos en el sistema de archivos, XFS reserva el espacio de memoria necesario para un archivo que vaya a ser asignado. De esta forma se reduce enormemente la fragmentación del sistema de archivos y el rendimiento aumenta, ya que el contenido de los archivos no queda dividido por todo el sistema de archivos. Página.- 224

228 7.2.9 Otros sistemas de archivos soportados En la siguiente tabla se incluyen otros sistemas de archivos soportados por Linux, algunos solamente en modo lectura, principalmente para garantizar la compatibilidad y el intercambio de datos entre distintos medios o sistemas operativos: Sistema Descripción cramfs Compressed ROM file system: sistema de archivos comprimido con permiso de lectura para ROMs. hpfs High Performance File System: sistema de archivos estándar de IBM OS/2. iso9660 Sistema de archivos estándar en CD-ROMs minix Sistema de archivos con origen en la universidad y fue el primero empleado en Linux. Hoy en día se utiliza como sistema de archivos para discos flexibles. fat16 Sistema de archivos empleado originariamente por MS-DOS. ncpfs Sistema de archivos que permite montar volúmenes Novell a través de una red. nfs Network File System: posibilita el almacenamiento de datos en el ordenador que se elija dentro de una red y permite garantizar el acceso a través de la red smbfs Server Message Block: utilizado por productos como por ejemplo Windows para el acceso de archivos a través de una red sysv Utilizado en SCO UNIX, Xenix, etc. ufs Utilizado en BSD, SunOS y NeXTstep. umsdos UNIX on MS-DOS: sistema de archivos basado en FAT que emula las características de Unix (derechos, enlaces, nombres de archivo largos) mediante archivos especiales. vfat Virtual FAT: extensión del sistema de archivos fat (soporta nombres de archivo largos). ntfs Windows NT file system: sistema de archivos utilizado por Windows Soporte de archivos grandes en Linux En un principio Linux sólo soportaba archivos con un tamaño máximo de 2 Gb. Debido a la creciente utilización de Linux por ejemplo en la administración de bases de datos o en la edición de datos de audio y vídeo, se ha hecho necesario el modificar el kernel y la librería GNU C (glibc) para que soporten archivos mayores de 2 Gb, y se han introducido nuevas interfaces que pueden ser utilizadas por las aplicaciones. Hoy en día todos los sistemas de archivos importantes soportan LFS (Large File System sistema de archivos grandes), lo que permite la edición de datos de gama alta. La siguiente tabla incluye un resumen de las limitaciones de los archivos y sistemas de archivos bajo Linux: Página.- 225

229 Tamaño máximo de archivo Tamaño máximo del sistema de archivos Ext2 o Ext3 con tamaño de bloque de 1 Kb. 16 Gb (234) 2 Tb (241) Ext2 o Ext3 con tamaño de bloque de 2 Kb. 256 Gb (238) 8 Gb (243) Ext2 o Ext3 con tamaño de bloque de 4 Kb 2 Tb (241) 16 Tb (244) Ext2 o Ext3 con tamaño de bloque de 8 Mb 64 Tb (246) 32 Tb (245) Ext4 16 Tb (244) 1 Eb (260) ReiserFS v3 64 Tb (246) 32 Tb (245) XFS 8 Eb (263) 8 Eb (263) JFS con tamaño de bloque de 512 bytes 8 Eb (263) 512 Tb (249) JFS con tamaño de bloque de 4 Kb. 8 Eb (263) 4Pb (252) NFS v2 2 Gb (231) 8 Eb (263) NFS v3 8 Eb (263) 8 Eb (263) Sistema El núcleo (kernel) del sistema operativo también impone sus restricciones en cuanto a tamaño de los ficheros y sistemas de archivos y si son sobrepasados no podrán ser procesados correctamente. Por ejemplo, para la versión 2.6 el límite para ficheros era de 2 Tb (2 41) y para sistemas de archivos 273 bytes Información adicional Cada proyecto de sistema de archivos cuenta con su propia página web en la que puede encontrar información adicional y listas de correo, así como FAQs: Página.- 226

230 7.3 Estructura de un sistema de archivos Para poder entender el comportamiento de algunos comandos, sobre todo los relacionados con la gestión de enlaces a ficheros, es conveniente conocer la estructura típica de los sistemas de ficheros estándares de linux (ext2, ext3, ). Además, aunque un sistema de ficheros puede contener otros elementos distintos de los ficheros: directorios, enlaces, etc., en este apartado se va a hacer referencia únicamente a los ficheros para simplificar la terminología y delimitar el estudio a la lógica de funcionamiento. Fig 88: Esquema de localización de un fichero Se puede suponer que el sistema de archivos se encuentra dividido en tres áreas: El directorio.- contiene, por cada fichero unos bytes de información con el nombre del fichero y el número del inodo o índice que contiene las propiedades del mismo. Área de inodos.- contiene un inodo o bloque de información por cada fichero. Este bloque de información del fichero (propiedades) contiene entre otros datos: el tipo de fichero, los permisos, el identificador del propietario (ID), el identificador del grupo (GID), cuánto ocupa, la fecha y hora de creación y última modificación, el número de enlaces y los números de los bloques donde se almacena la información contenida en el fichero. Para especificar los bloques donde se encuentra el fichero cada inodo contiene 13 referencias: 10 referencias a bloques directos, una referencia a un bloque indirecto sencillo, una referencia a un bloque indirecto doble y una referencia a un bloque indirecto triple. Las referencias a bloques directos son números de bloque cuyo contenido son datos del fichero. Las referencia al bloque indirecto sencillo es un número de bloque cuyo contenido son referencias a bloques directos. Y así sucesivamente. Ver esquema. Página.- 227

231 Bloques de datos.- son bloques de información con una capacidad determinada (por ejemplo 1 Kb.) que contienen los datos del fichero. Cuando se crea un fichero se le asigna, si es posible, un grupo de 8 bloques de datos contiguos para evitar la fragmentación del fichero a medida que crece de tamaño. 7.4 Gestión de sistemas de archivos desde el entorno gráfico Cuando se habla de sistemas de archivos, no solamente se tienen que considerar los discos duros, CD's y DVD's. Existen multitud de dispositivos de almacenamiento incorporados a un sinfín de aparatos electrónicos: cámaras digitales para almacenar fotos, fotocopiadoras para almacenar copias, faxes, televisores para almacenar películas, lavadoras para almacenar programas, gps's para almacenar mapas, teléfonos que almacenan agendas, imágenes, videos, etc. etc. etc.. Y los sistemas operativos van incorporando programas o herramientas específicas para que el tratamiento de la información de esos dispositivos sea más intuitivo. Ejemplos claros los encontramos en las cámaras digitales, con programas que permiten el agrupamiento de fotos en álbunes, el borrado y duplicación de forma sencilla; para el tratamiento de CD's y DVD's existen programas que permiten su duplicación, formateado, etc. En este apartado vamos a centrarnos en el dispositivo más estandar de un ordenador: el disco duro con sus particiones; todos los conceptos y explicaciones pueden hacerse extensivos para cualquier tipo de sistemas de ficheros, que al fin y al cabo no dejan de ser un tipo de memoria con capacidad de almacenar información en binario. La elección del tipo de sistema de archivos se realiza después de particionar el disco y antes de formatearlo puesto que el formateo precisamente distribuye las diferentes áreas de organización, datos, etc. en función del tipo de sistema de archivos que se elija. Hay dispositivos que no admiten el particionamiento (CD's, DVD's, ) y otros que solamente reconocen un tipo determinado de sistema de archivos. Durante la instalación de MaX se particiona el disco y se elige el tipo de sistema de archivos de cada partición, siendo en la actualidad ext4 el más estandar. Cuando, una vez instalado el sistema operativo, se necesitan crear nuevas particiones, puede utilizarse el programa gparted, al que se accede a través del menú Aplicaciones Sistema Administración Editor de particiones. Página.- 228

232 La siguiente figura muestra su aspecto: Fig 89: Programa Gparted Algunas de las opciones más significativas son: Gparted Refrescar dispositivos.- permite escanear de nuevo los dispositivos disponibles. Útil cuando se trabaja con dispositivos extraibles. Gparted Dispositivos.- permite seleccionar el dispositivo cuyas particiones se desea visualizar o modificar. Gparted Salir.- para finalizar la ejecución del programa. Editar Deshacer la última operación.- anula la última operación realizada si aún no es definitiva. Editar Limpiar todas las operaciones.- anula todas las operaciones que aún no hayan sido llevadas a efecto. Editar Aplicar todas las operaciones.- lleva a efecto todas las operaciones programadas con las particiones. Ver.- permite mostrar información sobre el dispositivo seleccionado, las operaciones programadas pero pendientes de efectuar en el dispositivo y los diferentes sistemas de archivos soportados. Dispositivo Crear tabla de particiones.- Crea una nueva tabla de particiones lo que conlleva la pérdida de las particiones y los datos del dispositivo. Página.- 229

233 Partición.- permite realizar la mayor parte de las operaciones posibles con particiones: crear, borrar, redimensionar, copiar, pegar, dar formato, etc. etc. A través de la opción Gestionar flags se pueden establecer atributos a una partición como son: Establecer la partición activa (boot). Si es una partición oculta (hidden). Si la partición forma parte de un volumen RAID (raid). Etc. Ayuda.- contiene cierta información acerca de gparted. Debe tenerse muy en cuenta que el trabajo con las particiones es extremadamente delicado y que deben hacerse copias de seguridad de la información de los dispositivos antes de realizar cualquier modificación sobre las particiones. Para que el sistema asuma las modificaciones realizadas sobre la tabla de particiones debe reiniciarse el equipo. Después de redimensionar una partición NTFS, antes de realizar cualquier operación en la misma, debe iniciarse el sistema Windows para que efectúe las verificaciones, chequeos y pruebas de consistencia oportunas. Una herramienta interesante es el Analizador de uso de disco que muestra el contenido y tamaños de los directorios de los sistemas de archivos. El programa está accesible a través del menú Aplicaciones Accesorios Analizador de uso de disco. El nombre del programa es baobab. Fig 90: Programa Baobab (analizador de uso de disco) Página.- 230

234 A través del menú Aplicaciones Sistema Preferencias se accede a la utilidad Unidades y soportes extraibles que permite realizar ciertas operaciones con dispositivos como cámaras digitales, PDA's, etc. Otros dos programas accesibles desde el menú Aplicaciones Sistema Administración, relacionados con los sistemas de archivos son el Encargado de limpieza, que muestra y permite eliminar los paquetes que quedan en desuso, y la Herramienta de Configuración NTFS, que permite establecer qué particiones NTFS deben montarse al iniciar el sistema y en qué punto (directorio). Nautilus es la aplicación que permite navegar por las carpetas y archivos de nuestro disco duro, e incluso de otros ordenadores conectados a la red. Puede abrirse desde el menú Aplicaciones Lugares Carpeta personal. 7.5 Gestión de sistemas de archivos mediante comandos Los comandos más significativos, relacionados con los sistemas de archivos son: gpart [opciones] dispositivo Herramienta que intenta recuperar la tabla de particiones de la pista 0 de un disco analizando las particiones existentes en el mismo. También busca y lista los tipos, localizaciones y dimensiones de particiones borradas inintencionadamente, tanto primarias como lógicas. Proporciona la información necesaria para poder volver a crear manualmente las particiones con fdisk, cfdisk, sfdisk, gpart ignora la tabla primaria de particiones y escanea el disco sector a sector buscando los diferentes tipos de sistemas de ficheros y particiones. Esta labor se realiza preguntando a los distintos módulos de reconocimiento de sistemas de ficheros si una determinada secuencia de sectores se corresponde con el inicio de un tipo de sistema de ficheros o partición. La tabla supuesta puede ser grabada en un fichero o, si se está completamente seguro de que la tabla supuesta es correcta, en un disco. Reconoce, entre otros, los siguientes tipos de sistemas de ficheros: swap, ext2, fat, ntfs, reiserfs, etc. La opción -t permite especificar otros tipos siempre y cuando el módulo correspondiente se encuentre instalado. Hay circunstancias en las que gpart no puede reemplazar la tabla de particiones. Para estos casos es interesante haber guardado anteriormente el sector de arranque (MBR), incluida la tabla de particiones, en un fichero; esta operación se puede realizar con: sudo dd if=/dev/sda of=fichero_mbr bs=512 count=1 Página.- 231

235 Para restaurar la tabla de particiones sin sobrescribir el MBR sería: sudo dd if=fichero_mbr of=/dev/sda bs=1 count=64 skip=446 seek=446 Entre sus opciones más utilizadas se encuentran las siguientes. -b fichero Permite copiar el MBR a un fichero antes de sustituir (ver opción -W) la actual tabla de particiones por la tabla propuesta por gpart. -h Muestra ayuda. -i Ejecución en modo interactivo solicitando confirmación al usuario. -k n_sector Salta el nº de sectores especificado antes de proceder con el escaneo. -L Visualiza los módulos de reconocimiento de tipos de sistemas de archivos cargados y su prioridad. -s l_sector Permite especificar la longitud del sector. -t modulo Permite añadir módulos para reconocer más sistemas de ficheros. -W dispositivo Permite grabar la tabla de particiones en el dispositivo especificado. En cualquier caso, es conveniente llevar a tabla de particiones propuesta a un fichero para analizarla y copiarla posteriormente en el sector 0 mediante la instrucción dd. La ayuda del comando (man gpart) contiene varios ejemplos. parted [opciones] [dispositivo [comando [opciones] ] ] Permite crear, borrar, redimensionar, mover y copiar particiones. Para obtener información completa acerca de este comando puede instalarse el paquete parted-doc. Algunas de sus opciones son: -h -v -m Visualiza información de ayuda. Muestra la versión. Muestra el dispositivo activo y permite introducir comandos parted. Cuando no se indica el dispositivo sobre el que tiene que realizarse la operación, parted utiliza el primer dispositivo que encuentra. Se pueden especificar los comandos con las opciones adecuadas o no especificar ninguno y parted mostrará un prompt y esperará a que se introduzcan de forma interactiva. Algunos de estos comandos son: check partición.- Chequea la partición especificada. cp [dispositivo_origen] partición_origen partición_destino.- Copia el sistema de ficheros de la partición_origen del dispositivo_origen en la partición_destino del dispositivo actual. help [comando].- Muestra información general o sobre el comando especificado. Página.- 232

236 mkfs partición tipo_sistema_ficheros.- Crea un sistema de ficheros del tipo especificado en la partición. mkpart tipo_partición [tipo_sistema_ficheros] inicio fin.- Crea una partición con un sistema de ficheros empezando en inicio y terminando en fin (expresados normalmente en Mb). El tipo de partición puede ser uno de los valores: primary, logical o extended. El tipo_sistema_ficheros puede ser: fat32, NTFS, ext2, linux-swap, mkpartfs tipo_partición tipo_sistema_ficheros inicio fin.- Crea una partición. move partición inicio fin.- Mueve la partición llevándola entre inicio y fin. print.- Muestra la tabla de particiones. quit.- Abandona el programa parted. rescue inicio fin.- Recupera una partición perdida que hubiera estado localizada entre inicio y fin. Si se encuentra una partición, parted pregunta si se desea crear una entrada para ella en la tabla de particiones. resize partición inicio fin.- Redimensiona el sistema de ficheros de la partición para que comience en inicio y termine en fin (dados en Mb). rm partición.- Borra la partición. select dispositivo.- Elige el dispositivo como el dispositivo actual a editar. El dispositivo normalmente será un disco duro de Linux pero también puede ser una partición, un dispositivo RAID o un volumen lógico (LVM). set partición atributo estado.- cambia el estado del atributo de una partición. Los atributos soportados son: boot, root, swap, hidden, raid, lvm, lba y palo. Los posibles estados son: on y off. unit unidad.- Establece la unidad a utilizar cuando se visualicen localizaciones o capacidades y cuando se asignen por el usuario sin especificar la unidad. La unidad puede ser: s (sectores), B (bytes), kb, MB, GB, TB, % (porcentaje de la capacidad del dispositivo), cyl (cilindros), chs (cilindros, cabezas, sectores) o compact (MB para entrada y una forma amigable para salida). version.- Muestra información sobre la versión y el copyright. Esta instrucción no permite (aún) el redimensionamiento de sistemas de ficheros ext3 y ext4. Para ello puede utilizarse la instrucción resize2fs. Página.- 233

237 fdisk [opciones] dispositivo Permite manejar las particiones del disco. La forma generalizada de utilizarlo es introducir el comando acompañado del nombre del dispositivo sobre el que se desea actuar, por ejemplo: fdisk /dev/sda. A continuación el comando muestra un mensaje sobre los cilindros del disco e informa de la posibilidad de pulsar la letra m (e <Intro>) para obtener ayuda. Si se pulsa <m> e <Intro> se muestra una lista de las posibles opciones: a b c d l m n o p q s t u v w x Cambia el indicador de iniciable. Modifica la etiqueta de disco bsd. Cambia el indicador de compatibilidad con DOS. Borra una partición. Muestra los tipos de particiones que reconoce. Muestra las opciones disponibles. Añade una partición. Crea una nueva tabla de particiones DOS vacía. Muestra la tabla de particiones. Sale sin guardar los cambios. Crea una nueva etiqueta de disco Sun. Cambia el identificador de sistema de una partición. Cambia las unidades de visualización y entrada. Verifica la tabla de particiones. Escribe la tabla en el disco y sale. Funciones adicionales (sólo para usuarios avanzados). mount [opciones] [dispositivo] punto_de montaje Permite montar o situar la información de un dispositivo dentro del árbol de directorios del sistema. En la instrucción debe indicarse el tipo de sistema de ficheros del dispositivo, el nombre del dispositivo y el directorio donde se va a situar la información. Este directorio debe estar creado previamente y vacío. -r Monta el dispositivo en modo de sólo lectura. -t sistema_archivos Especifica el tipo de sistema de archivos del dispositivo a montar. Los tipos más comunes son: ext3, ext4, ntfs, iso9660, vfat, msdos, El tipo de sistema de archivos debe especificarse cuando las unidades no están definidas en el archivo /etc/fstab y solamente el usuario root podrá montarlo. Para que el sistema de archivos pueda ser montado por otros usuarios debe introducirse la opción user en la línea correspondiente del archivo /etc/fstab, utilizando comas para separar los usuarios y guardando los cambios. Ejemplos: mount -t ntfs /dev/sda1 /media/windows Página.- 234

238 umount [opciones] punto_de_montaje Desmonta un dispositivo del árbol de directorios, quedando así inaccesible. Debe ejecutarse antes de retirar un medio de almacenamiento, por ejemplo las memorias usb, para que los buffers del dispositivo vuelquen toda su información al mismo. Generalmente sólo el usuario root puede ejecutar las operaciones mount y umount, con la excepción de que en el fichero /etc/fstab se incluya la opción user. df [opciones] [directorio] Muestra una estadística del espacio total, el ocupado y el libre de todas las particiones y dispositivos montados. Si se especifica un directorio se mostrarán las estadísticas del volumen que incluya ese directorio. -h -T Muestra la información en Kb, Mb o Gb. Muestra el tipo de volumen. du [opciones] [ruta] Muestra el espacio total de almacenamiento utilizado por los archivos del directorio activo o del especificado y de sus subdirectorios. -a -h -s Indica el tamaño de cada archivo. Utiliza las unidades Kb, Mb, GB, etc. Muestra únicamente el tamaño total. free [opciones] Muestra el tamaño total y el usado de la memoria física y del área de swaping. -b -k -m Utiliza como unidad de medida el byte. Utiliza el Kb. Utiliza el Mb. Instrucciones similares a fdisk están: cfdisk, sfdisk y testdisk. Para modificar la información del disco en hexadecimal se pueden utilizar: El editor hexedit. Ejecutando por ejemplo hexedit /dev/sda. La instrucción dd que permite transferir información entre un fichero y un sector concreto del disco, por ejemplo el sector 0. Para obtener información completa puede ejecutarse info coreutils 'dd invocation'. Página.- 235

239 7.6 Estructura de directorios Herramienta gráfica para administrar directorios y ficheros: Nautilus El programa incluido dentro de gnome para manejo de directorios y ficheros se llama Nautilus. Algunas formas de acceder a este programa son: Doble click sobre el icono Equipo del escritorio. Doble click sobre la carpeta personal del usuario en el escritorio. Menú Aplicaciones Lugares Carpeta personal. Fig 91: Nautilus La ventana de Nautilus muestra, de arriba a abajo y de izquierda a derecha: La barra de título. La barra de menú.- con las opciones Archivo, Editar, Ver, Ir, Marcadores, Solapas y Ayuda. Iconos: Atrás.- permite volver a la última carpeta visitada según el historial. Adelante.- para ir a la siguiente carpeta según el historial. Subir.- permite ir a la carpeta que contiene a la carpeta actual, por ejemplo, si estamos en /home/usprueba01 iríamos a /home. Detener. Recargar. Carpeta personal.- para ir a la carpeta de trabajo del usuario. Equipo.- muestra los dispositivos de almacenamiento del sistema y permite montarlos, expulsarlos, acceder a su contenido, etc. Página.- 236

240 Barra de navegación.- muestra en forma de botones toda la jerarquía de carpetas desde la carpeta raíz del sistema hasta la carpeta que se está visualizando. Permite moverse a las carpetas superiores con un solo click. Mediante el botón de más a la izquierda con forma de libreta con lápiz (o pulsando <Ctrl> + <L>) se puede cambiar la forma de visualizar el camino o ruta hasta la carpeta actual entre los botones o el modo texto. A la derecha hay iconos que permiten modificar el tamaño con que se muestran los archivos y una lista desplegable que permite cambiar la vista de los ficheros entre las opciones: Vista de icono.- cada archivo o carpeta estará representado por un icono sobre el nombre. Vista de lista.- los archivos se mostrarán en forma de listado con información adicional en cada línea. El listado será en forma de árbol de forma que se puede ver el contenido de una carpeta haciendo un click en el triángulo que aparece al lado derecho de la misma, sin tener que hacer doble click sobre ella. Vista compacta.- similar a Vista icono pero con el tamaño de los iconos más pequeño. Panel lateral izquierdo.- su visualización se activa y desactiva desde el menú de opciones Ver Panel lateral y permite seleccionar el tipo de información a mostrar, pudiendo elegir entre: Lugares.- muestra enlaces directos a la carpeta de trabajo, escritorio, red, subcarpetas del usuario, Información.- muestra información sobre la carpeta actual. Árbol.- muestra el árbol de directorios o carpetas permitiendo el movimiento sencillo entre ellas. Histórico.- muestra las últimas carpetas a las que se ha accedido. Notas.- permite poner notas a la carpeta que se está visualizando. Emblemas.- arrastrando cualquiera de los iconos sobre una carpeta, el emblema se añadirá al icono de la carpeta para diferenciarlo, y podrá ser eliminado en las propiedades de la carpeta, ficha Emblemas. Panel derecho.- muestra el contenido de la carpeta actual, tanto subcarpetas como ficheros. Página.- 237

241 Hay que tener muy en cuenta que en los sistemas Linux se guardan los archivos utilizando una estructura de tipo árbol invertido o piramidal donde no existen unidades del tipo C:, D:,, sino que todas las carpetas, subcarpetas y ficheros cuelgan de dicha estructura piramidal estando ocupado el vértice por la carpeta raíz o principal, denominada / Árbol de directorios Fig 92: Directorios Página.- 238

242 La figura muestra las carpetas del primer nivel, las que se encuentran en el directorio raíz. Una breve explicación de su contenido es: / Directorio raíz. /bin Ejecutables. /boot Ficheros de configuración del arranque. /dev Dispositivos. /etc Carpetas y ficheros de configuración. /home Directorios de trabajo de los usuarios. /lib Librerías. /lost+found /mnt Directorio para montar sistemas de archivos. /media Directorio para montar dispositivos. /media/cdrom /media/usbdisk /opt Aplicaciones que se instalan en un único directorio. /proc Archivos virtuales con información del sistema. /root Directorio de trabajo del usuario root. /sbin Ejecutables del sistema. /tmp Ficheros y carpetas temporales. /usr Programas no básicos del sistema. /usr/x11r6 X Windows. /usr/x11r6/bin Ejecutables. /usr/x11r6/include Encabezamientos. /usr/x11r6/lib Librerías. /usr/x11r6/man Manuales. /usr/x11r6/share Archivos comunes. /usr/bin Ejecutables. /usr/doc Documentación. /usr/etc Configuración adicional. /usr/include Encabezamientos. /usr/info Ayuda. /usr/lib Librerías. /usr/local Archivos locales de programas instalados manualmente. /usr/man Manuales. /usr/share Archivos comunes. /usr/sbin Ejecutables. /usr/src Código fuente. /var Archivos administrativos y datos que cambian frecuentemente. /var/lock Archivos de bloqueo. /var/log Registro de eventos / errores. /var/spool Archivos de spool. /var/spool/mail Correo de los usuarios. /var/spool/cups Cola de impresión. Página.- 239

243 A través de la opción Ver de la barra de menú se puede acceder a algunos lugares especiales: Carpeta personal.- directorio de trabajo del usuario. Equipo.- dispositivos y particiones del sistema. Plantillas.- todo documento que se guarde en este directorio aparecerá al pulsar con el botón derecho en un espacio vacío de Nautilus o del escritorio, en la sección Crear documento. Papelera.- lugar donde queda todo lo que se borre con Nautilus. Grabador de CD / DVD.- permite grabar CD's / DVD's Trabajo con ficheros y carpetas Propietarios y permisos En MaX, como en todos los sistemas Linux, los ficheros y directorios tienen propietario y permisos. El propietario de un fichero/directorio es el usuario que lo crea. Además, el fichero/directorio tendrá asociado como grupo el grupo principal al que pertenece el propietario. Los permisos predeterminados que se asignan a los ficheros/directorios creados son los siguientes: Lectura y escritura para el propietario. Lectura para el grupo, es decir, para los usuarios que pertenecen al grupo principal del propietario. Lectura para el resto, es decir, para aquellos usuarios que no son el propietario ni pertenecen al grupo principal del propietario. Práctica (permisos sobre los ficheros) Comprobar los permisos que se asignan a un fichero que el usuario crea en su carpeta de trabajo. Una forma de proceder puede ser la siguiente: Accedemos con Nautilus a la carpeta de trabajo del usuario mediante el icono del escritorio Carpeta personal de usprueba01. En un espacio vacío del panel que muestra los ficheros y carpetas pulsamos con el botón derecho, elegimos las opciones Crear un documento - Archivo vacío y se creará un fichero que, salvo que cambiemos el nombre, se llamará archivo nuevo. Pulsando con el botón derecho sobre el icono de dicho archivo se accede a su menú contextual y se elige la opción Propiedades. Página.- 240

244 Fig 93: Propiedades de un archivo La ficha Permisos muestra y permite modificar los permisos para el propietario, para el grupo (los usuarios que pertenecen al grupo principal del propietario) y para los otros (los demás usuarios). Además, hay que tener muy en cuenta los permisos asignados a la carpeta donde se encuentra el fichero. Las demás fichas permiten obtener más información acerca del fichero, destacando: La ficha Básico muestra el tamaño y las fechas de modificación y último acceso. La ficha Emblemas permite seleccionar un dibujo con el que remarcar el icono del fichero con un distintivo. La ficha Abrir permite asociar el tipo de fichero con los programas que pueden manejarlo. Por ejemplo, en nuestro caso ya se encuentra asociado al editor de textos y al hacer doble click sobre el fichero se lanzará la ejecución del procesador de textos que abrirá el fichero para trabajar con él. Si se cambia la asociación de un fichero con un programa, cambiará para todos los ficheros que tengan la misma extensión. La ficha Notas permite añadir anotaciones o comentarios a los ficheros. Estas notas sólo serán visibles desde Nautilus y únicamente se conservan si siempre se trabaja (copiar / mover9 con Nautilus y no desde la pantalla de comandos. La ficha Lista de control de acceso aparece únicamente si se han activado las ACL's y muestra y permite modificar los permisos asignados con ACL's. El tratamiento de las carpetas es similar al de los ficheros tanto para su creación como para el cambio de permisos y demás operaciones. Página.- 241

245 Otras operaciones: borrar, seleccionar, copiar, mover, renombrar, etc. Para borrar una carpeta o un fichero, basta con hacer click sobre su icono con el botón derecho y seleccionar Mover a la papelera o Borrar. La diferencia consiste en que los que se mueven a la papelera son recuperables accediendo a ésta a través de su icono en la barra de tareas. Para seleccionar varias carpetas o ficheros se puede hacer click con el botón izquierdo en un espacio vacío y, sin soltar el botón, arrastrar hasta que el recuadro que se genera cubra los archivos que se quiere seleccionar. También se puede ir haciendo click con el botón izquierdo en cada fichero manteniendo pulsada la tecla <Ctrl>. Para deseleccionar basta con hacer click en un lugar vacío. Para copiar archivos o carpetas se puede proceder de varias formas. Una de ellas puede ser la siguiente: Seleccionar los ficheros y carpetas que se desea copiar. Se hace click con el botón derecho sobre alguno de los elementos seleccionados. Se pulsa sobre la opción Copiar. Se abre la carpeta donde se desea copiar lo seleccionado. Se pulsa con el botón derecho en un espacio vacío y se elige la opción Pegar. Para mover archivos se puede seguir el mismo procedimiento pero eligiendo la opción Cortar en vez de Copiar. Es posible mover ficheros o carpetas simplemente arrastrándolos a la nueva ubicación. Si la operación se realiza entre dispositivos o particiones diferentes, en vez de moverse, el elemento se copia. Si en vez de mover se desea copiar, basta con mantener pulsada la tecla <Ctrl> mientras se arrastra (en el cursor aparece un + que identifica la operación de copia). Si en vez de la tecla <Ctrl> se pulsa <Alt>, al soltar aparecerá un menú de opciones que permite seleccionar la operación a realizar. Otra posibilidad para copiar / mover elementos consiste en seleccionarlos, pulsar <Ctrl>+<C> para copiar o <Ctrl>+<X> para mover, ir a la carpeta de destino y pulsar <Ctrl>+<V> para pegar. Para cambiar el nombre de un elemento se puede seleccionar y pulsar <F2> o eligiendo la opción Renombrar de su menú contextual (click con botón derecho sobre el elemento). Página.- 242

246 En general, muchas de las ventanas de MaX sólo disponen del botón Cerrar, no tienen ningún Aceptar, Aplicar o Cancelar, con lo cual los cambios se aplican automáticamente al pulsar Cerrar. Ficheros y carpetas ocultos Los ficheros y carpetas ocultos se diferencian de los normales en que su nombre empieza por un punto y normalmente Nautilus no los visualiza. Para hacerlos visibles hay que elegir en Nautilus la opción Ver y marcar la casilla de verificación Mostrar los archivos ocultos. La instrucción ls -a los muestra. La funcionalidad de estos directorios o archivos suele ser la de guardar configuraciones de programas; ocultándolos se evita su borrado accidental. Para crear un archivo/directorio oculto basta con hacer que su nombre comience por un punto, por ejemplo.noseve Gestión de directorios mediante comandos La mayor parte de las instrucciones o comandos del sistema operativo disponen de una gran cantidad de opciones que pueden ser consultadas mediante el comando man instrucción o info instrucción. En ésta sección solamente se tratarán los comandos que realizan las operaciones homólogas a las del apartado anterior de Nautilus con sus opciones más relevantes. Directorio activo Ya se ha visto que toda la información que gestiona MaX se encuentra estructurada en una serie de directorios y subdirectorios en forma arborescente siendo el directorio raíz el que ocupa el nivel más alto, el que engloba a todos los demás elementos (ficheros y subdirectorios) y que recibe el nombre de /. A estas alturas debe estar totalmente claro que los ficheros son los elementos que contienen la información y que los directorios y subdirectorios son elementos organizativos cuya función es la de mantener una estructura que permita tener organizados los ficheros para facilitar el acceso a los mismos. Para evidenciar la diferencia puede tomarse como ejemplo una biblioteca: los libros se corresponden con los ficheros y las diferentes estancias, armarios, baldas, etc. cuya función es mantener una organización en la biblioteca, se corresponderían con los directorios. Hay varias formas de referirse a un fichero o directorio dependiendo de que se tenga en cuenta o no la estructura jerárquica en la que se está situado. El directorio en el que se está situado es lo que se llama directorio activo o actual. Hay varias formas de saber cuál es el directorio activo pero es conveniente conocer previamente el nombre de varios directorios que tienen un significado especial: Página.- 243

247 /.- directorio raíz. ~.- directorio de trabajo del usuario (por defecto /home/usuario)...- directorio activo....- directorio padre (directorio inmediatamente superior en la escala jerárquica que incluye al directorio activo. Por ejemplo, el directorio padre de /home/usuprueba01 es /home. Al abrir un terminal para introducir instrucciones, el sistema operativo muestra el llamado prompt del sistema y espera a que se introduzca una instrucción y se pulse <Intro>. El prompt por defecto muestra la siguiente información: es decir, el nombre del usuario, el el nombre del equipo, el carácter :, el directorio activo y el carácter $. Para el usuario root este último carácter en vez de ser un dólar es una almohadilla (#). Otra forma de conocer cuál es el directorio activo es mediante la instrucción pwd. Trayectoria Partiendo del directorio activo, la posición de un fichero o directorio en el árbol de directorios del sistema es la trayectoria. Dentro de la trayectoria, el carácter / se utiliza para separar los nombres de los directorios, subdirectorios. Hay dos tipos de trayectorias: Fig 94: Ejemplo de árbol de directorios Trayectoria absoluta.- consiste en especificar el nombre de un fichero/directorio empezando desde el directorio raíz, los directorios intermedios hasta el fichero/directorio y finalmente el nombre del fichero/directorio, separando todos ellos por el carácter /. Así, en el ejemplo de la figura, la trayectoria absoluta del fichero f311 es: /d3/d31/f311. El primer carácter / no es un carácter separador sino que hace referencia al directorio raíz. Página.- 244

248 Esta trayectoria no depende del directorio activo y es única. Trayectoria relativa.- consiste en especificar el nombre de un fichero/directorio empezando desde el directorio activo, los directorios intermedios hasta el fichero/directorio y finalmente el nombre del fichero o directorio, separando todos ellos por el carácter /. Así, en el ejemplo de la figura, si el directorio activo es d3, la trayectoria relativa del fichero f311 es: d31/f311. Es muy importante tener en cuenta que en esta trayectoria el primer carácter no es el correspondiente al directorio raíz. Para especificar una trayectoria relativa a veces puede ser necesario hacer uso del nombre del directorio padre (..). Por ejemplo, si el directorio activo es d33, la trayectoria relativa del directorio d212 es:../../d2/d21/d212. Dependiendo del directorio activo, la trayectoria relativa de un fichero será una u otra. Órdenes de gestión de directorios, ficheros y sistemas de archivos ls [opciones] [archivos] Sin opciones ni parámetros muestra el contenido del directorio activo. -l -a Muestra el contenido de forma más detallada, visualizando los permisos. Muestra los ficheros ocultos. Ejemplos: ls -l cp [opciones] original copia Crea una duplicado de original en copia. -r Copia recursiva. Incluye la copia de subdirectorios con su contenido. Ejemplos: cp fichero1 fichero2 cp -r /home/* /media/usbdisk dd {[operando]... opcion} Convierte y copia ficheros. Dispone de infinidad de opciones que permiten, por ejemplo copiar un sector de un disco a un fichero. Ejemplos: info coreutils 'dd invocation' Presenta una ayuda exhaustiva. dd if=/dev/sda of=fich_mbr bs=512 count=1 Copia el MBR. dd if=fich_mbr of=/dev/sda bs=1 count=64 skip=446 seek=446 Restaura la tabla de particiones (sin el MBC). Página.- 245

249 mv [opciones] origen destino Renombra o hace una copia de origen en destino y a continuación borra el archivo original. -b Crea una copia de seguridad antes de desplazar origen. Ejemplos: mv fich1 fichero rm [opciones] [archivos] Borra el/los archivo(s) indicado(s). Para que se borren los directorios y su contenido hay que utilizar la opción -r. -r -i Borrado recursivo. Permite borrar directorios y su contenido. Espera una confirmación antes de borrar cada fichero. Ejemplos: rm fichero rm -r directorio ln [opciones] destino link Crea un acceso directo (link o enlace) a un fichero destino. Normalmente este enlace apunta directamente a la posición de destino (a los datos del fichero) dentro del mismo sistema de archivos. Aparentemente es como si se hubiera duplicado el fichero destino aunque se puede comprobar que las modificaciones en uno de ellos se reflejan en el otro. Si se utiliza la opción -s, se crea un enlace simbólico apuntando al nombre del fichero. -s Crea un enlace simbólico. cd [opciones] [directorio] Cambia el directorio activo. Si no se especifica directorio cambia al directorio de trabajo del usuario. Ejemplos: cd.. cd /etc mkdir [opciones] directorio Crea un directorio Ejemplos: mkdir proyecto Página.- 246

250 rmdir [opciones] directorio Borra directorios, pero sólo si están vacíos. chown [opciones] usuario [ : [ grupo ] ] archivos Cambia el propietario de los archivos al nombre (y grupo) especificado. -R Cambia el propietario de los archivos de los subdirectorios. Ejemplos: chown -R usprueba01:usprueba01 carpeta chown usprueba fichero chgrp [opciones] grupo archivos Cambia el grupo al que pertenece el archivo. El propietario del archivo sólo puede cambiar este valor si pertenece tanto al grupo anterior como al nuevo al que se desea asignar el archivo. Ejemplos: chgrp users fichero chmod [opciones] modo archivos Cambia los permisos de acceso a los ficheros. El parámetro modo tiene tres partes: a quién se aplica, como se aplica y qué derecho se aplica. Para definir a quién se aplica pueden utilizarse los siguientes caracteres: u g o a al propietario. al grupo del propietario. a los otros. a todos (all). Para definir cómo se aplican pueden utilizarse: + = para permitir el acceso. para denegar el acceso. para establecer los permisos. Página.- 247

251 Para definir qué permisos pueden utilizarse: r w x X s t lectura. escritura. ejecución (o búsqueda en directorios). ejecución o búsqueda (ver información mostrada por man chmod. establecer usuario o grupo para ejecución (set uid bit). restringir el borrado. Una alternativa a esta forma de expresar el modo es utilizar un código de 4 cifras donde cada cifra corresponde a la suma de los valores 4, 2 y 1. La primera cifra ocupa el atributo set user ID (4) y/o set group ID (2) y/o el atributo sticky-bit (1), la segunda los derechos del propietario, la tercera los del grupo y la cuarta los de los otros. El derecho de lectura se representa con el valor 4, el de escritura con el 2 y el de ejecución con el 1. Ejemplos: chmod u+x ejecutable chmod a-w fichero chmod 0640 fichero3 gzip [opciones] archivos Comprime el contenido de los ficheros. El nombre del fichero comprimido tendrá extensión.gz y deberá descomprimirse antes de poder usarse. Para comprimir más de un archivo, o directorios completos, deberá utilizarse además el comando tar. -d Descomprime el archivo (se corresponde con el comando gunzip). Ejemplos: gzip fichero gzip -d fichero.gz (gunzip fichero.gz). tar opciones paquete archivos Agrupa uno o más archivos en un paquete para después comprimirlo, copiarlo, Es una instrucción compleja y con gran cantidad de opciones, entre ellas: -f -c -r -t -u -x -z -j -v La información generada por el proceso se escribe en el fichero especificado en vez de mostrarse por pantalla. Crea un nuevo archivo de tipo tar. Agrega archivos a un paquete existente. Muestra el contenido de un paquete. Agrega archivos al paquete sólo si estos son más recientes que los existentes. Extrae o desempaqueta archivos de un paquete. Comprime con gzip el paquete generado. Comprime con bzip2 el paquete generado. Proporciona los nombres de los archivos procesados. Página.- 248

252 Los archivos creados mediante tar tienen extensión.tar. Cuando el archivo tar se comprime con gzip la extensión es.tar.gz y si se comprime con bzip2 será.tar.bz2. Ejemplos: tar tar tar tar -cvf paquete.tar directorio -xvf paquete.tar -tf paquete.tar -xvzf paquete.tar.gz (crea paquete.tar con directorio). (extrae el cont. de paquete.tar). (muestra el contenido). (extrae descomprimiendo). locate ficheros Muestra los directorios donde se encuentran los ficheros especificados. La búsqueda es muy rápida puesto que la búsqueda no se realiza en el sistema de ficheros sino en una base de datos propia creada al efecto. Esta base de datos puede crearla el usuario root con la instrucción updatedb. Ejemplos: locate fichero update [opciones] Permite actualizar de forma sencilla la base de datos utilizada por la instrucción locate. Para que se tengan en cuenta todos los ficheros, debe ser ejecutado por el usuario root. Se puede lanzar su ejecución en segundo plano añadiendo a la instrucción el carácter & (update &), para poder seguir trabajando mientras se genera la base de datos. Habitualmente este comando se ejecuta como tarea cron diaria (ver cron.daily). Ejemplos: updatedb & find [opciones] Permite buscar un archivo en un determinado directorio. Al contrario que locate, find busca en el directorio especificado. Es muy común que el primer argumento utilizado sea el directorio desde el que se realizará la búsqueda. -name Utilizado para especificar el/los fichero(s) a buscar. -print Visualiza los resultados en pantalla. Ejemplos: find / -name fichero -print find. -name pp -print find / -name [0-9]* -print Página.- 249

253 cat [opciones] archivos Muestra el contenido de los archivos especificados. -n Numera las líneas. Ejemplos: cat fichero less [opciones] archivos Permite examinar el contenido de los archivos especificados puesto que admite el uso de las teclas <Av Pág>, <Re Pág>, <Inicio>, <Fin>, etc. La tecla <Q> finaliza la visualización. Ejemplos: less fichero more [opciones] [archivos] Permite visualizar el contenido de los archivos especificados pantalla a pantalla o línea a línea. La tecla <Q> finaliza la visualización. Ejemplos: more fichero grep [opciones] cadena archivos Busca una cadena en los archivos especificados y muestra la línea que contiene la cadena y el nombre del fichero (sólo si se han especificado varios). Dentro de la cadena el carácter ^ identifica el principio de línea y el $ el final de línea. -i -l -n -L Ignora las diferencias entre mayúsculas y minúsculas. Muestra sólo el nombre del archivo y no el número de línea. Numera las líneas donde se encontró la cadena. Muestra los nombres de los archivos que no contienen la cadena. diff [opciones] archivo1 archivo2 Compara el contenido de dos archivos y muestra las líneas en las que se detectan diferencias. Puede utilizarse para enviar los cambios realizados en un programa sin necesidad de enviar todo el texto fuente. -q -u Indica solamente si existen diferencias entre los dos ficheros. Produce un resultado unificado para que sea más legible. Página.- 250

254 Comodines Para hacer referencia a uno o más ficheros/directorios puede hacerse uso de los denominados comodines, cuya función es la de sustituir a uno o más caracteres del nombre de los ficheros/directorios. Existen los siguientes comodines:? Sustituye exactamente un carácter. * Sustituye cualquier cadena de caracteres. [cadena] Sustituye un carácter de los comprendidos en la cadena. Si la cadena está formada por caracteres consecutivos de la tabla de códigos ASCII, puede expresarse poniendo el primer carácter, un guión y el último carácter. Por ejemplo [0-9] sustituye a un número, [a-z] a una letra minúscula y [A-Z] a una letra mayúscula. También admite la forma [0-3,6-9] para identificar dos segmentos de caracteres. [!cadena] Sustituye un carácter que no esté comprendido en la cadena. Por ejemplo, si el directorio activo contiene los ficheros: fich, fich1, fich2, fich3, fich3.txt, fichero, 1.txt y 2.txt, rm fich? rm fich* rm [0-9].txt rm [0-9]* Borra fich1, fich2 y fich3. Borra todos los ficheros cuyo nombre comience por fich. Borra 1.txt y 2.txt. Borra todos los ficheros cuyo nombre empiece por un número. Redireccionamientos Normalmente la salida estándar de los comandos es la pantalla y la entrada estándar es el teclado. Para cambiar tanto la entrada como la salida estándar, pueden utilizarse los siguientes caracteres de redireccionamiento: > Permite redirigir la salida del comando. Si se redirige a un fichero, el fichero se crea antes de ejecutar la instrucción; si el fichero existe previamente, se borra su contenido. Por ejemplo, la instrucción ls > fichero guarda el resultado de la instrucción ls en fichero. Este redireccionamiento se utiliza muy frecuentemente para crear ficheros de forma rápida para probar comandos. Página.- 251

255 >> Redirige la salida añadiendo, es decir, si se redirige a un fichero y éste existe previamente, no se borrará su contenido y el resultado de la ejecución del comando se añadirá a lo que contenía previamente. Si el fichero no existe se crea. Por ejemplo, la instrucción ls >> fichero añade el resultado de la instrucción ls al contenido de fichero. < Redireccionamiento de entrada. Permite modificar la entrada estándar de un comando, por ejemplo, la instrucción sort < fichero ordena las líneas de fichero y las muestra por pantalla; sort < fich > fichero_ordenado ordena las líneas de fich llevando el resultado a fichero_ordenado. 2> Redirecciona la salida estándar de errores. Por ejemplo, cp f1 f2 2>mensaje hace una copia de f1 como f2 y si se produce algún error lo lleva al fichero mensaje. >& Redirecciona la salida estándar y los errores. También se admite la redirección >>& para añadir. Filtros Los filtros se utilizan para convertir la salida de una instrucción en la entrada de otra. El carácter de filtrado, también llamado piping, es (<Alt Gr>+<!>). Por ejemplo, si se desea mostrar ordenadamente el contenido del fichero f1 puede hacerse con la instrucción cat f1 sort ; otro ejemplo es cat f1 more que muestra el contenido de f1 pantalla a pantalla. 7.7 Gestión de enlaces, links o accesos directos Los enlaces, accesos directos o links se utilizan para tener acceso a un objeto, generalmente un fichero o programa, desde un lugar diferente de la carpeta donde se encuentra ubicado. El uso más común es la creación de enlaces en el escritorio que permiten el acceso rápido a los programas, ficheros o carpetas. Algunos programas durante la instalación crean de forma automática, o previa consulta al usuario, un enlace al programa en el escritorio. El hecho de que un fichero pueda ser accedido desde diferentes lugares del árbol de directorios, que pueda tener nombres diferentes e incluso permisos distintos, facilita el acceso y el control del mismo. Pero los enlaces ofrecen otra gran ventaja que es el mantenimiento de la integridad del fichero y la no duplicación de datos. Al ser un único fichero el que es accedido desde diferentes lugares garantiza que las modificaciones que puedan realizar diferentes usuarios, o la apertura del fichero desde diferentes carpetas, queden siempre registradas en el fichero único de datos. Página.- 252

256 7.7.1 Gestión de enlaces desde el entorno gráfico Hay que diferenciar dos formas de crear enlaces: En el escritorio.- situando el cursor en un espacio vacío del escritorio, pulsando el botón derecho y eligiendo la opción Crear un lanzador. Fig 95: Creación de un enlace en el escritorio La ventana permite seleccionar o introducir la siguiente información: El icono que representará al enlace o lanzador. Su selección se realiza pulsando sobre el icono situado en la parte superior izquierda. Tipo.- permite seleccionar, desplegando la lista, si el enlace (lanzador) inicia una aplicación o abre un documento: Aplicación: inicia una aplicación. Aplicación en terminal: inicia una aplicación a través de una ventana del terminal. Lugar: abre un archivo, una página web u otra ubicación. Nombre.- es el nombre que aparecerá debajo del icono. Comando.- este cuadro aparece si en Tipo se ha elegido Aplicación o Aplicación en terminal. Debe introducirse el nombre de la aplicación y, opcionalmente, el fichero a abrir. Algunos ejemplos pueden ser: gedit gedit /home/usprueba01/fichero.txt nautilus /home/usprueba01/carpeta Página.- 253

257 Lugar.- este cuadro aparece si en Tipo se ha elegido Lugar. Permite especificar ficheros, carpetas, sitios web, sitios ftp, Algunos ejemplos pueden ser: file:///home/usprueba01/fichero.txt file:///home/usprueba01/carpeta ftp://ftp.gnome.org Comentario.- nota que se muestra al situar el puntero sobre el icono del lanzador. Al crear el lanzador en el escritorio se crea un fichero con el nombre introducido en el cuadro de texto correspondiente a la etiqueta Nombre y con extensión.desktop en el directorio /home/nombre_usuario/escritorio. El contenido del fichero consta de varias entradas que recogen, entre otra información, los datos introducidos en la ventana de creación del lanzador. Desde el objeto al que se quiere crear el enlace.- para crear un enlace a, por ejemplo, un fichero o carpeta, basta con elegir del menú contextual (botón derecho) del mismo la opción Crear un enlace. De esta forma se crea en la misma carpeta donde se encuentra el objeto un enlace simbólico al mismo, con un icono igual al del objeto pero añadiéndole una flecha verde en la esquina superior derecha que caracteriza a los enlaces y con el nombre Enlace hacia nombre_objeto. Con la opción Renombrar del menú contextual del enlace puede cambiarse el nombre y, además, puede moverse el enlace, igual que se mueve cualquier fichero, al lugar que convenga para tener acceso al mismo fichero desde lugares diferentes Gestión de enlaces mediante comandos Es conveniente recordar que en la estructura de ficheros de MaX cada fichero tiene asignado un número de inodo y que este inodo contiene información relativa al tipo de fichero, permisos, etc., así como los números de los bloques donde se encuentra físicamente el contenido del fichero. Los números de inodos pueden verse con la instrucción ls -i o, mejor aún, con ls -il. Existen dos tipos de enlaces: enlaces rígidos, también llamados duros o físicos, y enlaces simbólicos. Para crear enlaces se utiliza el comando ln; por ejemplo, para crear un enlace rígido con nombre enlace_rigido al fichero llamado fichero habría que ejecutar: ln fichero enlace_rigido Para crear un enlace simbólico la instrucción a ejecutar es: ln -s fichero enlace_simbolico Página.- 254

258 La instrucción ls -il mostrará algo parecido a la figura siguiente: Fig 96: Resultado de la instrucción "ls -il" donde puede observarse que la primera columna contiene el nº de inodo del fichero y la tercera el número de enlaces físicos (duros) del fichero. Un fichero no se borrará físicamente hasta que no le queden enlaces físicos apuntándole. Enlaces duros Cuando se crea un enlace duro a un fichero, se crea una entrada en el directorio con el nombre del enlace pero con el número de inodo del fichero. Así, el fichero pasa a tener dos nombres pero un solo inodo y un único contenido. En el ejemplo de la figura anterior, la tercera columna de la información mostrada por ls -il muestra un 2 para fichero y para enlace_rígido, que indica la existencia de dos nombres para el mismo fichero. También puede comprobarse que los dos nombres tienen el mismo número de inodo, el El fichero no se borrará hasta que se borren todos sus nombres. Los directorios tienen dos enlaces duros, uno apuntando a si mismo (.) y otro apuntando a su directorio padre (..). En el directorio raiz (/) el enlace.. apunta a /. Enlaces simbólicos A diferencia de los enlaces duros, estos enlaces solamente dan otro nombre a un archivo pero no hacen un enlace a nivel de inodo. Serían los homólogos de los accesos directos de Windows. Se crean con la instrucción ln -s nombre_fichero nombre_enlace y, como muestra la figura, la instrucción ls -il muestra a qué archivo está apuntando. Las diferencias más significativas con los enlaces duros son: La instrucción ls -l muestra a qué archivo apuntan los enlaces simbólicos pero no los enlaces duros. Los enlaces simbólicos no apuntan al mismo inodo que el nombre del fichero. Página.- 255

259 Los permisos de los enlaces simbólicos no se utilizan, se usan los de los ficheros a los que apuntan. La instrucción ls -l muestra en el primer carácter de la primera columna, el relativo al tipo de fichero, una l (de link). Pueden crearse enlaces simbólicos, pero no duros, a archivos que no existen. Los enlaces simbólicos son muy utilizados para apuntar a librerías compartidas. 7.8 Búsqueda de información del sistema Existen multitud de herramientas gráficas e instrucciones que reportan información sobre diferentes aspectos del sistema. Algunas pueden ser utilizadas por cualquier usuario y otras solamente por el usuario root o por usuarios con ciertos privilegios Herramientas gráficas Dada la gran diversidad de herramientas existentes, solamente se van a tener en cuenta aquellas que se instalan de forma predeterminada y se describirán en el mismo orden que aparecen en el menú Aplicaciones. Administrador de trabajos de impresión Se accede desde Accesorios Administrar trabajos de impresión. Permite administrar (eliminar, retener, ) los trabajos de impresión enviados a las diferentes colas de impresión de las diferentes impresoras instaladas en el sistema. Analizador de uso de disco Se accede desde Accesorios Analizador de uso de disco. Permite explorar sistemas de archivos y carpetas, tanto locales como remotas, informando del nivel de ocupación, número de ficheros y carpetas que contienen, etc. Página.- 256

260 Buscador de archivos Se accede desde Lugares Buscar archivos. Permite buscar archivos mediante la introducción de algunas características relacionadas con su nombre, la carpeta donde se encuentra, el texto que contiene, la fecha de modificación, el tamaño, el propietario, etc. Aplicaciones al inicio Se accede desde Sistema Preferencias Aplicaciones al inicio. Permite establecer las aplicaciones que se pondrán en ejecución al iniciar la sesión. Comprobación del sistema Se accede desde Sistema Administración Comprobación del sistema. Comprueba la conexión a Internet, el funcionamiento del teclado y el ratón, detecta los controladores de red, de sonido, la resolución de la pantalla, y finalmente elabora un informe detallado que puede mostrarse pulsando sobre el enlace View report o enviarse a una dirección de correo electrónico que se especifique. Editor de particiones Se accede desde Sistema Administración Editor de particiones. Muestra y permite administrar las particiones de los distintos discos duros. Este programa (gparted) ha sido descrito en uno de los apartados anteriores de este capítulo. Gestor de paquetes Synaptic Se accede desde Sistema Administración Gestor de paquetes Synaptic. Permite administrar la instalación de paquetes en el sistema. Este programa ya ha sido descrito anteriormente. Página.- 257

261 Herramientas de red Se accede desde Sistema Administración Herramientas e red. Fig 97: Herramientas de red La ventana que muestra el programa dispone de varias fichas que permiten administrar los dispositivos de red del sistema y hacer uso de herramientas relacionadas con la administración de la red: Dispositivos.- permite seleccionar el dispositivo de red, configurarlo y muestra información y estadísticas de transmisión/recepción del mismo. Ping.- permite enviar, un número determinado o de forma indefinida, tramas ping y presenta información acerca de las tramas enviadas y recibidas y los tiempos necesitados para realizar los envíos/recepciones. Netstat.- permite mostrar tablas de ruteo, servicios de red activos e información multicast. Traceroute.- muestra los routers por los que pasa una trama hasta llegar a una dirección de destino previamente especificada. La dirección puede ser una dirección ip o un nombre de host (equipo). Explorar puerto.- permite detectar los puertos abiertos de un equipo. Página.- 258

262 Lookup.- permite explorar equipos y mostrar cierta información de los mismos. Finger.- Muestra información acerca de los usuarios. Whois.- Muestra información sobre los dominios. Hora y fecha Se accede desde Sistema Administración Hora y fecha. Permite modificar la fecha, la hora y la zona horaria del sistema. Monitor del sistema Se accede desde Sistema Administración Monitor del sistema. El programa muestra varias fichas con información acerca del sistema: Sistema.- muestra la versión del sistema operativo, la memoria y el procesador disponibles, y el espacio disponible en disco. Procesos.- informa sobre los procesos en ejecución, su estado, su identificador, la cantidad de memoria que utilizan, etc. Recursos.- presenta de forma gráfica el porcentaje de uso de CPU, el porcentaje de uso de la memoria RAM y de la memoria de intercambio (swap) y los Kb./seg. Enviados y recibidos a través de los interfaces de red. Sistemas de archivos.- muestra los diferentes sistemas de archivos existentes, el tipo y las capacidades libres y usadas. Servicios Se accede desde Sistema Administración - Servicios Permite seleccionar los servicios que han de iniciarse durante el arranque del sistema. Visor de archivos de sucesos Se accede desde Sistema Administración - Visor de archivos de sucesos. Presenta los mensajes generados por el sistema, ordenados por categorías. Página.- 259

263 7.8.2 Búsqueda de información desde la línea de comandos uname [opcion] Visualiza información del sistema -a -p -r Toda la información (tipo de núcleo, nombre del equipo, versión del núcleo, fecha y hora, arquitectura de la CPU, tipo de procesador y tipo de sistema operativo). Tipo de procesador o unknown. Versión del núcleo. fdisk [opciones] [dispositivo] Permite consultar, crear, borrar, redimensionar, particiones. Para su correcta ejecución se necesitan privilegios de usuario root. -l Visualiza las características y la tabla de particiones del dispositivo especificado. Si no se especifica dispositivo muestra las particiones de /proc/partitions (si existe). Es una opción muy útil por mostrar las particiones de todos los dispositivos existentes. Ejemplos: fdisk -l free [opciones] Muestra la cantidad de memoria RAM y de memoria swap libre y usada. Para el buen funcionamiento del sistema la memoria de swaping no debe estar utilizándose. -m -t Muestra la información en Mb. Muestra una línea totalizando RAM + swap Ejemplos: free -mt mount [opciones] [dispositivo directorio] Se utiliza para montar dispositivos permitiendo una gran variedad de opciones. Sin opciones permite conocer los dispositivos que se encuentran montados y en qué lugar. Su información se complementa con la de la instrucción fdisk -l. lsmod Muestra el estado de los módulos del kernel actualmente cargados. Se complementa con los comandos de inserción (insmod) y borrado (rmmod) de módulos. Página.- 260

264 lspci [opciones] Muestra los dispositivos PCI del sistema. Para analizar la información puede utilizarse la siguiente línea de ejemplo: 05:00.0 Network controller: Intel Corporation PRO/Wireless 3945ABG Network Connection (rev 02) donde se muestra el slot PCI donde se ubica el dispositivo (05), el bus del dispositivo (00) y la función (0), la clase de dispositivo (Network controller), el fabricante (Intel Corporation), el nombre del dispositivo (PRO/Wireless 3945ABG Network Connection) y el número de revisión del mismo (rev 02). -v -vv Muestra información más detallada. Muestra información mucho más detallada. lsusb Lista los dispositivos usb del sistema. -v Muestra información más detallada. blkid Muestra las características de los dispositivos de bloque. dmidecode y lshw Leen la información de la BIOS y muestran un listado completo del hardware del equipo. -q Muestra un resumen de la información. df Muestra la capacidad, el espacio usado y libre y el punto de montaje de las particiones. -h Utiliza el Mb y Gb como unidad de medida. uptime Muestra la hora actual, el tiempo que lleva encendido el equipo, los usuarios conectados y la carga promedio de la CPU (load average) en los últimos 1, 5 y 15 minutos. Para saber quienes son los usuarios conectados puede utilizarse la instrucción w. Página.- 261

265 w Muestra los usuarios conectados y sus programas en ejecución. Como complemento a uptime y w puede utilizarse la instrucción who -b que indica la fecha y hora en que se inició el equipo. lsof Muestra los archivos abiertos por los diferentes procesos en ejecución. Un ejemplo de utilización puede ser el siguiente: para saber los archivos que abre la instrucción man lsof se ejecuta dicha instrucción desde un terminal y desde otro buscamos su PID con, por ejemplo, la instrucción ps -ed grep man ; con la instrucción lsof -p numero_pid se obtiene la información deseada. Es muy útil para conocer las dependencias o ficheros que un programa necesita para ejecutarse. Sin opciones muestra un listado muy extenso. last y lastb last muestra los últimos usuarios que han iniciado sesión en el equipo. lastb muestra los intentos erróneos de inicio de sesión y puede permitir determinar los intentos de hackeo (logins no permitidos) al sistema. Permite conocer el terminal, día, fecha y hora de inicio de sesión, hora de finalización, si el sistema no se apagó adecuadamente (crash), etc. Muy útiles para detectar posibles intrusiones de usuarios. dmesg Muestra los mensajes que se producen durante el inicio del sistema. Permite conocer posibles errores producidos durante la carga de los módulos durante el inicio para determinar posibles problemas de funcionamiento o reconocimiento de los dispositivos. Dada la extensión de la información mostrada, puede redireccionarse a un fichero o hacerse uso de los filtros more, less o grep. ps [opciones] Muestra información acerca de los procesos en ejecución. -a Todos los procesos. top Muestra el estado de los procesos en tiempo real, actualizándose cada 3 segundos. Página.- 262

266 7.9 Actividades 1. Comprobar qué paquetes necesita tener instalado MaX para que pueda manejar el sistema de archivos ntfs. Instalarlos si no lo están. 2. Enumerar las ventajas que presenta el sistema de ficheros ext4. 3. Hacer un gráfico que muestre la estructura de un sistema de ficheros para un fichero de nombre fich que ocupe dos bloques del área de datos. 4. Con Gparted mostrar las particiones del disco duro del equipo. 5. Borrar, crear y redimensionar particiones en un pen drive. 6. Desde el entorno gráfico comprobar el nivel de ocupación de las particiones existentes en el disco duro. 7. Con Nautilus probar a realizar todas las operaciones del apartado Trabajo con ficheros y carpetas : cambio de permisos, copiar, mover, borrar, recuperar de la papelera, renombrar, 8. Crear un fichero y una carpeta ocultos y hacer que Nautilus los muestre. 9. Comprobar los paquetes instalados que han quedado en desuso. 10. Solicitar ayuda sobre el comando parted y mostrar la tabla de particiones usando la opción adecuada. Lo mismo pero con fdisk. 11. Montar una partición de Windows y acceder a su contenido. Desmontarla. 12. Mostrar en Mb el espacio ocupado y el libre de cada partición. 13. Probar el funcionamiento de los comandos du y free. 14. Comprobar la información que muestra Nautilus en el panel lateral izquierdo y las diferentes posibilidades que ofrece. 15. Buscar en el árbol de directorios la carpeta que contiene las subcarpetas de trabajo de los usuarios y la destinada a contener documentación de los diferentes paquetes. 16. Realizar copias, borrados y movimientos de ficheros y directorios de unas carpetas a otras utilizando los comandos y trayectorias adecuadas. 17. Cambiar mediante comandos los permisos, propietarios y grupos de ficheros y directorios. 18. Buscar ejemplos típicos de uso de comodines, redireccionamientos y filtros. 19. Crear en el escritorio un lanzador para un programa de grabación de DVD's. Crear en un directorio enlaces físicos y simbólicos a ficheros y comprobar las diferencias. 20. Probar todas las herramientas gráficas y comandos que gestionen información del sistema. Página.- 263

267 8 ADMINISTRACIÓN DE LA INFORMACIÓN II 8.1 Aspectos didácticos Objetivos: Configurar y utilizar el gestor de paquetes Synaptic. Instalar, comprobar y desinstalar paquetes con la instrucción apt-get. Saber manejar los procesos en ejecución. Monitorizar el uso de la CPU, de la memoria y de la red. Conocer las instrucciones más relevantes que muestran información el sistema. Saber montar y desmontar sistemas de ficheros, tanto desde el entorno gráfico como desde la línea de comandos. Saber administrar las particiones, grupos de volúmenes y volúmenes lógicos de un sistema. Conocer en qué consiste la fragmentación de un sistema de ficheros y saber cómo medirla y reducirla o anularla. Documentación. La documentación de este tema se puede ampliar a través de la ayuda del S.O. (instrucciones man, info, ), con la documentación oficial de MaX y de Ubuntu y con la Ayuda o manuales incluidos en los propios paquetes. Resumen. En este tema se profundiza en la utilización de paquetes e instrucciones que permiten: Administrar el software instalado. Monitorizar los recursos del sistema. Montar y desmontar sitemas de archivos de diferentes dispositivos. Gestionar particiones y volúmenes. Temporización: 12 horas. Página.- 264

268 8.2 Identificación del software instalado mediante herramientas gráficas y comandos Herramientas gráficas El software distribuido con un sistema operativo se compone de un gran número de programas y ficheros. De ellos, una pequeña parte son imprescindibles para el funcionamiento del sistema y la gran mayoría son utilidades que facilitan la gestión y administración del sistema, programas ofimáticos, programas relativos al uso de Internet, programas educativos, juegos, etc. Generalmente un programa necesita más de un fichero para su correcto funcionamiento. Para facilitar la distribución e instalación de programas se forman paquetes de software que contienen los ficheros necesarios para el correcto funcionamiento de un programa. Si el volumen de software de un programa es muy pequeño, o excesivamente grande, pueden conformarse paquetes que contengan varios programas o paquetes que contengan una parte de un programa. También puede ocurrir que un programa o paquete tenga dependencias con otros, de tal forma que, para el funcionamiento de un programa o paquete, se necesite la instalación de otro. Los sitios de Internet donde se encuentran y desde donde se pueden bajar los paquetes se llaman Repositorios. Cada sistema operativo dispone de varios repositorios donde se almacena todo el software que lo componen. De esta forma, si en un momento determinado uno de los repositorios no está disponible, existirán otros que proporcionarán los paquetes solicitados. Synaptic es uno de los programas incluidos en MaX que permite la gestión de paquetes. A él se puede acceder a través de: Aplicaciones Sistema Administración Gestor de paquetes Synaptic. Para poder utilizarlo es necesario iniciar la sesión con un usuario con privilegios de administrador (madrid) y saber su clave (cmadrid). La primera vez que se ejecuta Synaptic muestra una pantalla de bienvenida con información interesante y a continuación se mostrará una ventana similar a la de la figura. Página.- 265

269 Fig 98: Gestor de paquetes Synaptic En la ventana del programa se distinguen varias partes: En la parte superior se encuentran las barras de menús y de accesos rápidos cuyas acciones más relevantes son: Configurar las preferencias del programa. Configurar los repositorios u orígenes del software y las actualizaciones. Mostrar el Manual de usuario de Synaptic a través de la opción Ayuda. Recargar los listados de paquetes de los distintos repositorios para que MaX pueda comprobar si existen actualizaciones. Marcar todas las actualizaciones o paquetes que dispongan de actualización para su instalación. Aplicar las acciones de instalación y desinstalación programadas. Cuando se selecciona un paquete para ser instalado (o desinstalado), la operación no se efectúa hasta que se pulsa el botón Aplicar o se elige la opción Editar Aplicar cambios marcados. Ver las propiedades (versión, dependencias, descripción, ) de un paquete previamente seleccionado. Página.- 266

270 Buscar los paquetes que en su nombre o descripción contienen una determinada cadena. Si se desea hacer una búsqueda teniendo en cuenta únicamente el nombre del paquete puede hacerse a través de las opciones Editar - Buscar, seleccionando en la lista desplegable Buscar en el elemento Nombre. El cuadro selector en la parte de la izquierda, donde aparecen elementos que permiten hacer un filtrado o restringir el ámbito de los paquetes a mostrar. Así, se puede hacer un filtrado de paquetes según la sección a la que pertenezcan, su estado (instalados o no), su origen (local o de la red), etc. La parte central que muestra el listado de paquetes, indicando su estado, el nombre, la versión y una breve descripción. Los diferentes iconos que pueden aparecer en el estado están descritos en la opción Ayuda Leyenda de iconos. En principio, si el cuadro de verificación es verde indica que el paquete está instalado, si está en blanco el paquete no está instalado. Una forma simple de instalar o desinstalar un paquete es hacer doble click en el cuadro de verificación de estado correspondiente y a continuación pulsar sobre el botón Aplicar. El cuadro inferior derecho muestra información sobre el paquete seleccionado en el cuadro anterior. Si no hay seleccionado ningún paquete, esta parte solamente muestra el texto No hay ningún paquete seleccionado. Por ejemplo, para instalar el paquete wireshark, que es un programa que permite analizar el tráfico en la red, se puede proceder de la forma: Pulsar sobre la opción Secciones del cuadro selector. Pulsar sobre Todo para tener en cuenta todas las secciones. En el cuadro de texto Busqueda rápida introducir wireshark y pulsar sobre el icono Buscar. En el cuadro de la lista de paquetes aparecerán varios paquetes, los que en su nombre o en su descripción contengan la palabra buscada. Hacer doble click sobre el cuadro de verificación correspondiente al estado del paquete. Aparecerá un cuadro informando que se requiere instalar otros paquetes de los que depende wireshark, y pulsaremos sobre Marcar. Por último, para que se lleve a efecto la instalación hay que pulsar sobre el botón Aplicar, en la parte superior de la ventana. El acceso al programa recién instalado se encuentra en: Aplicaciones Internet Wireshark. Para instalar software de otros distribuidores, que no se encuentra en la lista de paquetes de MaX, habrá que proceder siguiendo las instrucciones del distribuidor. Página.- 267

271 Por ejemplo, para instalar la utilidad Webmin hay que seguir los pasos: Conectarse mediante el explorador de Internet Firefox a la dirección Seleccionar de la lista Download webmin x.xxx la opción Debian Package. Así se podrá descargar en nuestro ordenador el paquete correspondiente. Para instalarlo bastará con hacer click sobre el fichero descargado. Debe tenerse en cuenta que la sesión debe haber sido iniciada por el usuario madrid, u otro usuario con privilegios de administrador. Por último, para lanzar la ejecución del programa habrá que hacerlo desde Firefox a través de la dirección https://localhost: El programa informará que no puede comprobar si la conexión es segura y, aceptando las advertencias, solicitará un nombre de usuario y contraseña, que pueden ser root y cmadrid respectivamente, y se ejecutará correctamente Instrucciones de línea de comandos Además del programa synaptic del apartado anterior, existen otros como dselect, aptitude, gnome-apt, wajig, etc., pero la utilidad más generalizada de manejo de paquetes desde la línea de comandos es apt-get. Su formato, como se puede comprobar a través de man apt-get es el siguiente: apt-get [-hvs][-o=cadena_de_configuración][-c=fichero]{update upgrade dselect-upgrade install paquete remove paquete source paquete build-dep paquete check clean autoclean } A menos que se utilice la opción -h, que muestra una información de ayuda muy precisa, hay que especificar una de las siguientes órdenes: update.- actualiza el índice de paquetes respecto a sus fuentes. Los índices de los paquetes disponibles se obtienen de los lugares especificados en /etc/apt/sources.list. Siempre debe realizarse un update antes de un upgrade o un dist-upgrade. upgrade.- permite actualizar los paquetes instalados provenientes de las fuentes especificadas en /etc/apt/sources.list. No se desinstalan paquetes ni se instalan paquetes nuevos. Las nuevas versiones de programas instalados que no puedan ser actualizados sin cambiar el estado de instalación de otros paquetes no se instalarán. Antes de upgrade debe realizarse un update para que apt-get sepa cuales son las versiones disponibles de los paquetes. Página.- 268

272 dselect-upgrade.- se usa junto con la utilidad dselect. dselect-upgrade recoge los cambios realizados por dselect al campo Status de los paquetes disponibles y realiza las acciones necesarias para que los cambios se lleven a efecto (por ejemplo, borrar paquetes antiguos e instalar las nuevas versiones). dist-upgrade.- además de realizar las acciones de upgrade, maneja inteligentemente los cambios de dependencias debidos a nuevas versiones de paquetes; apt-get tiene un sofisticado sistema de resolución de conflictos, si es necesario tratará de actualizar los paquetes más importantes a costa de los menos importantes. El fichero /etc/apt/sources.list contiene la lista de los sitios de descarga. También se puede consultar apt_preferences(5) si se quiere modificar este comportamiento para paquetes individuales. install.- instala los paquetes que siguen a la palabra install. Cada nombre de paquete no es el nombre completo del paquete junto con la versión sino sólo el nombre del paquete. Se obtendrán e instalarán todos los paquetes especificados para la instalación, así como los requeridos por estos. El fichero /etc/apt/sources.list se usa para localizar los paquetes. Si al nombre del paquete se le antepone un guión (sin ningún espacio), el paquete será desinstalado en vez de instalado. Similarmente el signo de la suma se puede usar para especificar que un paquete debe de ser instalado. Estas últimas características se pueden usar para modificar decisiones tomadas por el sistema de resolución de conflictos de apt-get. Se puede seleccionar una versión especifica de un paquete poniendo a continuación del paquete un igual (=) seguido de la versión deseada. Alternativamente se puede seleccionar una distribución especifica poniendo a continuación del nombre del paquete una barra (/) seguido de la versión de la distribución (stable, testing, unstable). Cualquiera de estos dos métodos de selección puede instalar una versión anterior de los paquetes y debe ser usada con cuidado. Finalmente, apt_preferences(5) permite modificar las normas de selección para paquetes individuales. Si ningún paquete coincide con la expresión que se ha dado y la expresión contiene un punto (.), una interrogación (?), o un asterisco (*), entonces se asume que es una expresión regular de acuerdo con el estándar POSIX, y es aplicada a todos los nombres de paquetes de la base de datos. Cualquier coincidencia se instala (o desinstala). Hay que tener en cuenta que la comparación se hace en subcadenas, de manera que lo.* es válido para "how-lo" y para "lowest". Si este no es el comportamiento deseado se debe anclar la expresión regular con un "^" o un "$", o bien crear una expresión regular más específica. remove.- se comporta de forma similar a install pero desinstalando los paquetes. Si el nombre del paquete es precedido por un carácter más (+) el paquete en cuestión será instalado en vez de eliminado. Página.- 269

273 source.- hace que apt-get descargue paquetes fuente. APT examinará los paquetes disponibles para decidir que paquete fuente cogerá. Entones descargará en el directorio actual la versión más reciente del paquete fuente. Los paquetes fuente se obtienen de sitios distintos a los binarios; estos sitios se especifican mediante líneas del tipo deb-src en el fichero sources.list(5). Esto puede provocar que la versión que se descargará del paquete fuente no coincida con la del paquete binario que tenga instalado o pueda instalar. Si se especifica el argumento --compile entonces el paquete se compilará usando dpkg-buildpackage para producir un.deb binario, si se especifica el argumento --download-only entonces el paquete fuente no se desempaquetará. Una versión especifica de un paquete fuente puede requerirse poniendo un signo igual ("=") seguido de la versión a descargar después del nombre del paquete. Es un mecanismo similar al que se usa con los paquetes binarios. Esto permite seleccionar exactamente el nombre y versión del paquete fuente, activando implícitamente la opción APT::Get::Only-Source. Hay que tener en cuenta que los paquetes fuentes no se tratan como los binarios, sólo existen en el directorio actual, es parecido a descargar los paquetes tar comprimidos con las fuentes. build-dep.- hace que apt-get instale/desinstale paquetes en un intento de satisfacer las dependencias de compilación de un paquete fuente. Si hay varios paquetes que satisfacen la misma dependencia, apt-get elige uno aleatoriamente. check.- es una herramienta de diagnóstico. Actualiza la caché de paquetes (/var/cache/apt/pkgcache.bin), vuelve a crear un nuevo árbol de dependencias y busca dependencias imposibles de resolver. clean.- borra totalmente el repositorio local que contiene los ficheros.deb descargados. Borra todo excepto el fichero de bloqueo de los directorios /var/cache/apt/archives/ y /var/cache/apt/archives/partial/. Cuando APT se usa como un método de dselect(8), clean se ejecuta automáticamente. Si no se usa dselect es probable que desee ejecutar apt-get clean de vez en cuando para liberar algo de espacio en disco. autoclean.- borra el repositorio local de paquetes descargados, pero solamente aquellos paquetes que ya no pueden ser descargados, o son claramente inservibles. Esto permite mantener la caché durante largos periodos de tiempo sin que aumente su tamaño sin control. Si la opción de configuración APT::Clean-Installed está desactivada impedirá que se borren paquetes instalados. En cuanto a las opciones, éstas pueden ser especificadas mediante el fichero de configuración; en la descripción de cada opción se indica la opción de configuración que hay que modificar. Para opciones booleanas se puede modificar el fichero de configuración usando formatos tales como: -f-, --no-f, -f=no y alguna variante más. Página.- 270

274 -d (--download-only).- descarga los ficheros con los paquetes pero no los desempaqueta ni los instala. Opción de configuración: APT::Get::Download-Only. -f (--fix-broken).- intenta arreglar un sistema con dependencias actualmente rotas. Esta opción usada conjuntamente con install/remove, puede omitir cualquier paquete para permitir a APT deducir una posible solución. Cualquier paquete especificado debe de corregir totalmente el problema. La opción es a veces necesaria cuando se ejecuta apt por primera vez. APT no permite que existan dependencias de paquetes rotas en un sistema. Es posible que la estructura de dependencias de un sistema esté tan deteriorada que requiera una intervención manual (usualmente ejecutar dselect(8) o dpkg --remove para desinstalar alguno de los paquetes que crean el conflicto). El uso de esta opción junto con -m puede producir un error en algunas situaciones. Opción de Configuración: APT::Get::Fix-Broken. -m (--ignore-missing) (--fix-missing).- no tiene en cuenta los paquetes que no se hayan podido descargar o que después de la descarga se encuentren dañados, estos paquetes se tratan como no modificables y se continúa con el resto. El uso de esta opción junto con -f puede producir un error en algunas situaciones. Si un paquete se selecciona para su normal instalación (particularmente si se hace mediante la línea de órdenes) y no puede ser descargado, será tratado como no modificable. Opción de configuración: APT::Get::Fix-Missing. (--no-download).- deshabilita la descarga de paquetes. Usada junto con --ignoremissing es la mejor manera de forzar a APT a usar solo los ficheros que ya se han descargado con anterioridad. Opción de configuración: APT::Get::Download. -q (--quiet).- silencioso. Produce una salida adecuada para un registro, omitiendo los indicadores de progreso. Si se especifican dos q's se conseguirá una salida más silenciosa. También es posible usar -q=# para seleccionar el nivel de silenciosidad, no teniendo en cuenta el fichero de configuración. Hay que tener en cuenta que un nivel silencioso de 2 implica -y, por lo tanto nunca se deberá usar -qq sin añadir un modificador para que no realice ninguna acción como -d, --print-uris o -s para evitar que APT realice algo que no se espera. Opción de configuración: quiet. -s (--simulate) (--just-print) (--dry-run) (--recon) (--no-act).- no realiza ninguna acción; simula lo que hubiese ocurrido, pero sin hacer cambios reales en el sistema. Opción de configuración: APT::Get::Simulate. La simulación muestra por pantalla una serie de líneas, cada una de las cuales representa una operación de dpkg, configurar (Conf), desinstalar (Remv), o desempaquetar (Inst). Un par de corchetes indican paquetes con dependencias rotas, si no hay nada entre ellos significa que no hay ningún problema (poco probable). Página.- 271

275 -y (--yes) (--assume-yes).- asume una respuesta afirmativa a todas las preguntas, de esta forma apt-get se ejecuta sin necesidad de intervención posterior para tomar decisiones. apt-get terminará sin hacer nada si se produjese una situación no deseada, como cambiar un paquete puesto en hold (un paquete puesto en hold es un paquete que no debe de ser modificado) o desinstalar un paquete esencial. Opción de Configuración: APT::Get::Assume-Yes. -u (--show-upgraded).- muestra los paquetes que se van a actualizar. Opción de Configuración: APT::Get::Show-Upgraded. -V (--verbose-versions).- muestra la versión completa para los paquetes actualizados e instalados. Opción de configuración: APT::Get::Show-Versions. -b (--compile) (--build).- descarga las fuentes y luego las compila. Opción de configuración: APT::Get::Compile. (--ignore-hold).- no respeta los paquetes retenidos. Esto puede ser interesante junto con dist-upgrade para no tener en cuenta un gran número de paquetes en hold. Opción de configuración: APT::Ignore-Hold. (--no-upgrade).- no actualiza los paquetes. Cuando se usa juntamente con install, noupgrade evita que se actualicen los paquetes listados en la línea de órdenes si ya están previamente instalados. Opción de configuración: APT::Get::Upgrade. (--force-yes).- supone una respuesta afirmativa a todas las preguntas. Ésta es una opción peligrosa que hará que apt-get continúe incluso si va a realizar algo potencialmente peligros. No se debe usar excepto en situaciones muy especiales. force-yes puede destruir el sistema!. Opción de configuración: APT::Get::force-yes. (--print-uris).- muestra las URIs de los ficheros a instalar en vez de descargarlos. Cada URI tiene la dirección de donde se obtendrá el paquete, el fichero de destino, su tamaño y la suma de control md5 esperada. Hay que tener en cuenta que el nombre de fichero no siempre coincide con el nombre de fichero en el sitio remoto. Esto también funciona con las ordenes source y update. Cuando se usa con la orden update, no se incluyen ni la suma de control MD5 ni el tamaño, y es tarea del usuario descomprimir cualquier fichero comprimido. Opción de configuración: APT::Get::Print-URIs. (--purge).- borra los archivos de configuración de todos los paquetes que sean desinstalados. Se mostrará un asterisco "*" a continuación de los paquetes que se encuentren en esta situación. Opción de configuración: APT::Get::Purge. Página.- 272

276 (--reinstall).- reinstala los paquetes ya instalados, incluso si son la última versión disponible del paquete. Opción de Configuración: APT::Get::ReInstall. (--list-cleanup).- esta opción está activada por omisión, si quiere desactivarla use --nolist-cleanup. Cuando está activada apt-get administra automáticamente los contenidos de /var/lib/apt/lists para asegurarse de que se borran los ficheros obsoletos. La única razón para desactivarla es un cambio frecuente en la lista de repositorios que usa apt-get. Opción de Configuración: APT::Get::List-Cleanup. -t (--target-release) (--default-release).- esta opción permite tener un control sobre la versión de la distribución desde la cual se instalan los paquetes de manera sencilla, creando un pin de 990 usando la cadena de caracteres proporcionada que hace referencia a la distribución. Algunos ejemplos comunes pueden ser -t '2.1*' o -t unstable. Opción de configuración: APT::Default-Release. Ver además la página del manual de apt_preferences(5). (--trivial-only).- sólo realiza acciones consideradas triviales. Esta opción está relacionada con --assume-yes, donde --assume-yes responderá afirmativamente a cualquier pregunta, --trivial-only responderá negativamente. Opción de configuración: APT::Get::Trivial-Only. (--no-remove).- si algún paquete va a ser desinstalado apt-get termina inmediatamente. Opción de Configuración: APT::Get::Remove. (--only-source).- sólo tiene sentido para la orden source. Indica que los nombres de paquetes fuente dados no deben ser tratados a través de la tabla de binarios. Esto significa que si se especifica esta opción, la orden source sólo aceptará como argumentos nombres de paquetes fuente, en vez de aceptar nombres de paquetes binarios y luego buscar el nombre del paquete fuente correspondiente. Opción de configuración: APT::Get::Only-Source. (--diff-only) (--tar-only).- descarga sólo el fichero diff o tar del archivo fuente. Opciones de configuración: APT::Get::Diff-Only y APT::Get::Tar-Only. (--arch-only).- procesa sólo las dependencias de construcción dependientes de la arquitectura. Opción de configuración: APT::Get::Arch-Only. -h (--help).- muestra un breve resumen del modo de uso. -v (--version).- muestra la versión del programa. -c (--config-file).- especifica el fichero de configuración a usar. El programa leerá el fichero de configuración por omisión y luego este otro. Leer apt.conf(5) para más información acerca de la sintaxis. Página.- 273

277 -o (--option).- establece una opción de configuración. La sintaxis es -o Foo::Bar=bar. Los ficheros utilizados por apt-get son: /etc/apt/sources.list.- fichero que contiene los sitios de donde se obtienen los paquetes. Opción de configuración: Dir::Etc::SourceList. /etc/apt/apt.conf.- fichero de configuración de APT. Opción de configuración: Dir::Etc::Main. /etc/apt/apt.conf.d/.- directorio con fragmentos de ficheros de configuración APT. Opción de Configuración: Dir::Etc::Parts. /etc/apt/preferences.-fichero de configuración que contiene preferencias sobre versiones de paquetes, por ejemplo, puede especificar que un cierto paquete se descargue de un sitio diferente, o de una distribución con una versión diferente. Opción de configuración: Dir::Etc::Preferences. /var/cache/apt/archives/.- directorio donde se guardan los paquetes obtenidos. Opción de configuración: Dir::Cache::Archives. /var/cache/apt/archives/partial/.- directorio donde se guardan los ficheros en tránsito. Opción de configuración: Dir::Cache::Archives (Implica partial). /var/lib/apt/lists/.- directorio donde se almacena información de estado por cada sitio especificado en sources.list(5). Opción de configuración: Dir::State::Lists. /var/lib/apt/lists/partial/.- directorio de almacenamiento para la información de estado en tránsito. Opción de configuración: Dir::State::Lists (Implica partial). Otros comandos relacionados con la administración de paquetes son: apt-cache(8), apt-cdrom(8), dpkg(8), dselect(8), sources.list(5), apt.conf(5) y apt-config(8) Puede ser interesante leer la guía de usuario de APT en /usr/share/doc/apt/, apt_preferences(5) y el Cómo de APT. En cuanto a los diagnósticos, apt-get devuelve cero en operaciones satisfactorias y 100 en caso de error. Página.- 274

278 8.3 Gestión de la información del sistema En el tema anterior se mostró una breve descripción de algunas de las herramientas y comandos que proporcionan información sobre los diferentes aspectos del sistema. En éste apartado se va a profundizar en la herramienta Monitor del sistema (gnome-systemmonitor) Monitor del sistema La aplicación Monitor del sistema permite mostrar información básica del sistema y monitorizar los procesos del sistema, el uso de los recursos del sistema y de los sistemas de archivos. También se puede usar el Monitor del sistema para modificar el comportamiento de su sistema. Hay dos formas de iniciar el Monitor del sistema: A través del menú Aplicaciones Sistema Administración Monitor del sistema. Desde la línea de comandos con la instrucción gnome-system-monitor. Fig 99: Monitor del sistema: etiqueta Procesos La ventana del Monitor del sistema contiene cuatro secciones (fichas) con sus correspondientes etiquetas o solapas: Sistema.- muestra información básica sobre la versión del sistema operativo, el hardware del sistema y el espacio disponible en el disco. Página.- 275

279 Fig 100: Monitor del sistema: etiqueta Sistema Procesos.- muestra los procesos activos y cómo están relacionados los procesos entre ellos. Proporciona información detallada acerca de procesos individuales y permite controlar los procesos activos. Recursos.- muestra el uso actual de la CPU, de la memoria y espacio de intercambio y de la red. Fig 101: Monitor del sistema: etiqueta Recursos Sistemas de archivos.- lista todos los sistemas de archivos montados junto con información básica acerca de cada uno. Página.- 276

280 El programa muestra una ventana con los siguientes elementos: Barra de menús.- contiene las opciones que permiten realizar todas las operaciones del programa. Área de visualización.- muestra la información a través de las fichas anteriormente comentadas. Barra de estado.- muestra información sobre la actividad actual del Monitor del sistema, así como información contextual acerca de los elementos del menú. Las operaciones fundamentales que pueden realizarse a través de las diferentes opciones de la barra de menú y de las diferentes fichas son las siguientes: Mostrar la información básica del sistema.- que como ya se ha comentado se realiza a través de la etiqueta Sistema. Mostrar la lista de procesos.- a través de la etiqueta Procesos. La información se muestra tabulada conteniendo cada fila información de un proceso y las columnas los diferentes tipos de información: nombre del proceso, estado, porcentaje de CPU utilizado, prioridad, nº identificativo de proceso, cantidad de memoria utilizada, propietario del proceso, etc. Las columnas a mostrar se pueden seleccionar a través de la opción Editar - Preferencias Ficha Procesos. Un proceso puede crear otro proceso. El proceso creado es un proceso hijo del proceso que lo creó, que se llamará proceso padre. De forma predeterminada el Monitor del sistema no muestra las dependencias de los procesos pero puede configurarse para que así sea, como se describirá más adelante. Cada proceso tiene una prioridad que se establece mediante un valor numérico. La prioridad determina el orden de ejecución de los procesos: los procesos con prioridad alta se ejecutan antes que los de prioridad baja. El orden de prioridad es inverso al valor de prioridad asignado a un proceso; así un valor de prioridad alto indicará menor prioridad del proceso que otro con un valor de prioridad más bajo. El valor asignado por defecto es 0. Los procesos hijo generalmente heredan su prioridad de los procesos padre que los crean. Ordenar la lista de procesos.- de forma predeterminada los procesos aparecen ordenados alfabéticamente y de manera ascendente por su nombre. Para ordenarlos por la información de otra columna basta con pulsar sobre el título de dicha columna. Si se vuelve a pulsar sobre el título se invierte el orden. Página.- 277

281 Modificar el contenido de la lista de procesos.- puede elegirse qué procesos deben mostrarse a través de la opción Ver del menú de opciones. Las opciones disponibles son: Procesos activos. Todos los procesos. Mis procesos. Dependencias.- si este cuadro de verificación no se encuentra activado los procesos se mostrarán en orden alfabético ascendente, sin diferenciar entre procesos padre y procesos hijo; si se encuentra activado, los nombres e iconos de los procesos padre estarán precedidos por un triangulo pequeño que permitirá, pulsando sobre él, desplegar y ocultar sus procesos hijo. Mostrar el mapa de memoria para un proceso.- se selecciona el proceso y se elige la opción Ver Mapas de memoria. La información se muestra de forma tabulada, con el nombre del proceso sobre la tabla y las columnas siguientes: Archivo.- contiene el nombre del archivo o biblioteca compartida que está siendo usada actualmente por el proceso. Si este campo está vacío, la fila describe la memoria ocupada por el proceso seleccionado. Inicio MV.- dirección de inicio del segmento de memoria. Fin MV.- dirección donde finaliza el segmento de memoria. Tamaño MV.- tamaño del segmento de memoria. Banderas.- describe los diferentes tipos de acceso que el proceso puede realizar a los segmentos de memoria: p r s w x El segmento de memoria es privado al proceso y no es accesible por otros procesos. El proceso tiene permiso de lectura en el segmento de memoria. El segmento de memoria está compartido con otros procesos. El proceso tiene permiso de escritura en el segmento de memoria. El proceso tiene permiso para ejecutar instrucciones contenidas en ese segmento de memoria. Desplazamiento MV.- desplazamiento de la memoria virtual sobre el segmento de memoria. Dispositivo.- contiene los nombres de los dispositivos donde se encuentra la biblioteca compartida. Página.- 278

282 nodo-i.- inodo del dispositivo desde el que se carga en memoria la biblioteca compartida. Para ordenar la información por el contenido de alguna columna hay que pulsar sobre el título de la columna. Pulsando de nuevo se invierte el orden. Cambiar la prioridad de un proceso.- se selecciona el proceso y se elige la opción Editar Cambiar la prioridad; aparecerá una ventana que permitirá modificar la prioridad mediante un deslizador y pulsando finalmente el botón Cambiar prioridad. Debe tenerse en cuenta que la prioridad (orden de ejecución) de los procesos es inversa al valor asignado: valores bajos indican prioridades altas y viceversa. Finalizar un proceso.- se selecciona el proceso y se elige la opción Editar Finalizar proceso o se pulsa sobre el botón Finalizar proceso situado en la esquina inferior derecha de la ventana que muestra la tabla de procesos. Terminar ( matar ) un proceso.- se selecciona el proceso y se elige la opción Editar Matar proceso. Esta opción fuerza la finalización del proceso inmediatamente y suele utilizarse en aquellos casos en los que no se puede finalizar un proceso de forma normal. Monitorizar el uso de la CPU.- se realiza desde la ficha Recursos y muestra el uso histórico de la CPU de forma gráfica y, debajo de la gráfica, el uso actual en porcentaje. Monitorizar el uso de la memoria de intercambio.- similar al de la CPU. Debajo de la gráfica se muestra la cantidad de memoria RAM y de intercambio en uso. Monitorizar la actividad de red.- similar a las anteriores. Debajo de la gráfica se muestran los datos recibidos y enviados por segundo y total. Monitorizar el sistema de archivos.- se realiza desde la ficha Sistemas de archivos. Muestra, para los sistemas de archivos montados, la siguiente información: Dispositivo.- ubicación del archivo de bloques. Directorio.- punto de montaje (directorio de acceso) del dispositivo. Tipo.- tipo de sistema de archivos. Total.- capacidad total del dispositivo. Libre.- espacio sin usar del dispositivo. Disponible.- espacio del que se puede disponer. Usado.- espacio usado (y porcentaje del total). Página.- 279

283 Personalizar la información mostrada por las diferentes fichas.- se realiza desde la opción Editar Preferencias y permite seleccionar valores como: La frecuencia con que se actualiza la información relativa a los procesos. Las columnas de información para los procesos. La frecuencia de actualización de las gráficas. La frecuencia de actualización de los sistemas de archivos montados. Las columnas de información para los sistemas de archivos. Etc. El cuadro de verificación de Editar Preferencias Ficha Procesos Cuadro de verificación Modo Solaris mostrará el porcentaje de CPU de cada proceso de la tabla de procesos dividido entre el número de CPU's. Los posibles estados en que pueden encontrarse los procesos son: durmiendo y ejecutándose. Mostrar la columna de línea de comandos para los procesos puede ser interesante para conocer el nombre de algún programa en ejecución y las opciones con que ha sido lanzado. Puede consultarse la ayuda del programa para obtener información más detallada Instrucciones que muestran información del sistema Una selección de instrucciones, vistas anteriormente, que muestran información similar a la que muestra la herramienta gráfica Monitor del sistema, pero en el entorno no gráfico, pueden ser: uname [opcion] Visualiza información del sistema -a -p -r Toda la información (tipo de núcleo, nombre del equipo, versión del núcleo, fecha y hora, arquitectura de la CPU, tipo de procesador y tipo de sistema operativo). Tipo de procesador o unknown. Versión del núcleo. Página.- 280

284 fdisk [opciones] [dispositivo] Permite consultar, crear, borrar, redimensionar, particiones. Para su correcta ejecución se necesitan privilegios de usuario root. -l Visualiza las características y la tabla de particiones del dispositivo especificado. Si no se especifica dispositivo muestra las particiones de /proc/partitions (si existe). Es una opción muy útil por mostrar las particiones de todos los dispositivos existentes. Ejemplos: fdisk -l free [opciones] Muestra la cantidad de memoria RAM y de memoria swap libre y usada. Para el buen funcionamiento del sistema la memoria de swaping no debe estar utilizándose. -m -t Muestra la información en Mb. Muestra una línea totalizando RAM + swap Ejemplos: free -mt lsmod Muestra el estado de los módulos del kernel actualmente cargados. Se complementa con los comandos de inserción (insmod) y borrado (rmmod) de módulos. df Muestra la capacidad, el espacio usado y libre y el punto de montaje de las particiones. -h Utiliza el Mb y Gb como unidad de medida. uptime Muestra la hora actual, el tiempo que lleva encendido el equipo, los usuarios conectados y la carga promedio de la CPU (load average) en los últimos 1, 5 y 15 minutos. Para saber quienes son los usuarios conectados puede utilizarse la instrucción w. w Muestra los usuarios conectados y sus programas en ejecución. Como complemento a uptime y w puede utilizarse la instrucción who -b que indica la fecha y hora en que se inició el equipo. Página.- 281

285 lsof Muestra los archivos abiertos por los diferentes procesos en ejecución. Un ejemplo de utilización puede ser el siguiente: para saber los archivos que abre la instrucción man lsof se ejecuta dicha instrucción desde un terminal y desde otro buscamos su PID con, por ejemplo, la instrucción ps -ed grep man ; con la instrucción lsof -p numero_pid se obtiene la información deseada. Es muy útil para conocer las dependencias o ficheros que un programa necesita para ejecutarse. Sin opciones muestra un listado muy extenso. ps [opciones] Muestra información acerca de los procesos en ejecución. -a Todos los procesos. top Muestra el estado de los procesos en tiempo real, actualizándose cada 3 segundos. 8.4 Montaje y desmontaje de dispositivos en sistemas operativos. Automatización La operación de montar un dispositivo en un sistema de ficheros conlleva dos operaciones diferentes: Reconocer el dispositivo.- se necesita que el sistema operativo tenga cargados los drivers necesarios para que durante el arranque (si es un dispositivo fijo) o en el momento de su inserción (si es un dispositivo extraible) pueda reconocerlo y asignarle un nombre de dispositivo. Montar el dispositivo.- una vez que el sistema operativo reconoce el dispositivo, la operación de montaje consiste en asignar al sistema de ficheros del dispositivo un directorio dentro del sistema de archivos general. Lo mismo ocurre con las demás particiones del propio disco duro: en principio MaX monta las particiones que se le han asignado durante la instalación (la de swap, la utilizada para contener el directorio raíz (/), la utilizada para contener los directorios de los usuarios (/home), etc.) y para poder acceder a las demás particiones del disco duro (windows, otros linux, ) deberán ser montadas en un directorio dentro de la estructura de directorios general. La partición de swap tiene un tratamiento especial y no se monta en ningún directorio. Página.- 282

286 Tres de las utilidades que permiten el manejo de particiones y dispositivos son: el propio Nautilus, el programa gparted (menú Aplicaciones Sistema Administración Editor de particiones) y gnome-volume-properties (menú Aplicaciones Sistema Preferencias Unidades y soportes extraibles). Por otra parte, hay que considerar si el usuario tiene privilegios para acceder y usar el dispositivo y para montar el sistema de ficheros. Esto se puede comprobar con el programa users-admin (menú Aplicaciones Sistema Administración Usuarios y grupos). Fig 102: Privilegios de los usuarios Dada la diversidad de herramientas, dispositivos y diferencias en el comportamiento del sistema operativo en la detección y tratamiento de dichos dispositivos, vamos a analizar el uso de tres de los más comunes: otras particiones en el mismo disco duro, una memoria conectada al puerto usb (pen drive) y una cámara de fotos digital. Una de las herramientas gráficas que permite administrar de forma eficiente las diferentes particiones de los discos duros y que ya ha sido comentada en apartados anteriores es gparted (menú Aplicaciones Sistema Administración Editor de particiones). Este programa informa del software que se necesita instalar para que el sistema operativo reconozca los diferentes tipos de particiones a través de la opción Ver Soporte para sistemas de archivos. La opción Gparted Refrescar dispositivos realiza una detección de dispositivos con sus correspondientes sistemas de ficheros. gparted permite crear, redimensionar, borrar, desmontar, particiones pero no dispone de ninguna opción que permita montar una partición. Página.- 283

287 Según esto, con gparted puede comprobarse cómo se encuentra particionado un disco, de qué tipo es cada partición y a continuación ejecutar el comando que realiza la operación de montaje. Debe tenerse presente que antes de lanzar la ejecución del comando mount debe haberse creado (y estar vacío) el directorio donde se montará la partición. Suele utilizarse el directorio /media para crear el subdirectorio donde montar la partición. Algunos ejemplos pueden ser los siguientes: Para montar una partición ntfs de windows, habiendo iniciado sesión como usuario root: mkdir /media/windows (crea directorio) mount -t ntfs /dev/sda1 /media/windows (monta la partición) Para montar una partición de MaX de tipo ext4: mkdir /media/max mount /dev/sda3 /media/max (crea directorio) (no hace falta especificar el tipo). Si lo que se pretende es que las particiones se monten de forma automática al iniciar el sistema, habrá que incluir una línea por cada partición a montar en el fichero /etc/fstab. Las líneas del fichero tienen la forma: sistema_ficheros punto_montaje tipo opciones dump pas El sistema de ficheros puede ser el nombre del dispositivo, que tendrá la forma /dev/sdan, o el UUID del dispositivo, que tendrá la forma UUID=fd562ad3-jk nf6. El punto de montaje será el directorio donde se visualizará la información de la partición. Las opciones harán referencia al tipo de acceso, modo de montaje en caso de error, etc. Las nuevas líneas se añadirán al final del fichero, sin tocar las existentes para no generar ningún tipo de problema. Algunos ejemplos pueden ser los siguientes: /dev/hdb2 /media/datos2 ntfs nls=utf8,umask= (partición ntfs) /dev/hdb2 /media/datos2 vfat iocharset=utf8,umask= (partición fat32) /dev/hdb2 /media/datos2 ext3 defaults 0 0 (partición ext3) Pueden asumirse las modificaciones del fichero /etc/fstab sin reiniciar el equipo mediante la instrucción mount -a ejecutada por un usuario con privilegios de administrador. Para desmontar una partición puede utilizarse la opción correspondiente del programa gparted (Partición Desmontar). Esta operación también puede realizarse desde la línea de comandos mediante la instrucción umount, con el usuario adecuado, por ejemplo: umount /media/windows Si el dispositivo es un pen drive que se conecta al puerto USB, lo más normal es que disponga de una partición con un sistema de ficheros común, seguramente de tipo FAT en Página.- 284

288 alguna de sus modalidades (FAT16 o FAT32) y que la operación de montaje se realice de forma automática si el usuario que ha iniciado la sesión tiene los privilegios adecuados. Así, al acceder desde el escritorio al contenido del icono Equipo aparecerá el icono que da acceso a la información del pen drive. La figura muestra un ejemplo. Fig 103: Pen drive montado automáticamente Para desmontar el dispositivo basta con pulsar con el botón derecho sobre el icono correspondiente y elegir la opción Desmontar el volumen. La figura del icono cambiará y el pen drive podrá extraerse sin riesgo de pérdida de información. También podrá ser administrado a través de gparted. Dado que a veces surgen complicaciones para montar este tipo de dispositivos, otra forma de proceder desde la línea de comandos sería la siguiente: En primer lugar hay que averiguar qué dispositivo (/dev) es el que se corresponde con el pen drive. Para ello hay que comprobar si el paquete sg3-utils se encuentra instalado, e instalarlo si es necesario. A continuación se ejecuta la instrucción sg_scan -i cuyo resultado puede ser similar al de la figura, donde la línea /dev/sg2:.. corresponde al pen drive. Fig 104: Instrucción "sg_scan -i" Página.- 285

289 A continuación se ejecuta la instrucción sg_map que deberá mostrar los nombres de dispositivo que corresponden a cada elemento mostrado por la instrucción anterior, de forma similar a como muestra la figura. Fig 105: Instrucción "sg_map" En el ejemplo es /dev/sdc el dispositivo buscado. Quedaría montar el dispositivo en un directorio creado al efecto, con una instrucción similar a: mount /dev/sdc /mnt/directorio Si el pen drive tiene particiones el montaje deberá efectuarse sobre cada partición, que normalmente tendrán el mismo nombre del dispositivo añadiendo un número (/dev/sdc1, /dev/sdc2, ). La instrucción cfdisk /dev/sdc puede ayudar a conocer si contiene o no particiones. Para el caso de una cámara de fotos digital deberá considerarse: Conocer las instrucciones de la cámara de fotos para realizar en ella las operaciones que permitan la comunicación con el ordenador. Saber si el usuario tiene el privilegio de acceder a dispositivos de almacenamiento externo. Si es conveniente que al insertar la cámara se lance la ejecución de algún programa concreto. Para este caso puede ser recomendable la ejecución de f-spot-import que permite pasar las fotos de la cámara al ordenador, agruparlas por álbumes y muestra información característica de las fotografías (resolución, histograma, ). Página.- 286

290 Fig 106: Preferencias de algunos dispositivos Por lo demás, el sistema de archivos de la cámara de fotos puede ser manejado a través de gparted, Nautilus, etc. como cualquier otro sistema de ficheros. 8.5 Herramientas de administración de discos. Particiones y volúmenes. Desfragmentación y chequeo MaX dispone de una gran variedad de herramientas gráficas y en modo comando que permiten administrar los discos duros. Cada una de ellas tiene sus particularidades, ventajas e inconvenientes. Algunas de ellas ya han sido tratadas en temas o apartados anteriores, como es el caso de gparted (editor de particiones), fdisk, etc., y que ahora sencillamente se mencionarán Particiones Para hacer uso de las herramientas que permiten administrar particiones es necesario disponer de privilegios de administrador. Entre las herramientas más utilizadas se encuentran: gparted Herramienta gráfica que permite administrar las particiones de los discos: crear, borrar, redimensionar, Es accesible mediante la instrucción gparted o a través del menú Aplicaciones Sistema Administración Editor de particiones. Su deficiencia más acusada es que no permite montar las particiones creadas. Ya ha sido analizada en secciones anteriores. pysdm Herramienta gráfica que permite administrar discos y particiones. No se instala por defecto. Su ejecución se lanza a través de la instrucción pysdm o del menú Aplicaciones Sistema Administración Dispositivos de almacenamiento. Página.- 287

291 Fig 107: Utilidad pysdm Las opciones que se pueden asignar a cada partición pueden seleccionarse a través del botón Asistente que muestra una breve explicación de cada una de ellas. mountmanager Utilidad gráfica muy completa con gran diversidad de opciones para manipular, montar, desmontar, recuperar, particiones. Funciona correctamente con el escritorio KDE pero con Gnome puede presentar algunos problemas (QGtkStyle cannot be used together with the GTK_Qt engine) dependiendo de la configuración de la apariencia del escritorio. Fig 108: Utilidad mountmanager Página.- 288

292 partitionmanager Utilidad gráfica para KDE que permite manejar discos, particiones y una gran variedad de tipos de sistemas de ficheros. También funciona con GNOME y puede lanzarse desde la línea de comandos o a través del menú Aplicaciones Herramientas del sistema Gestor de particiones de KDE. Fig 109: Utilidad partitionmanager fdisk Instrucción que permite administrar las particiones de los discos. testdisk Permite escanear, reparar y recuperar particiones de los discos. Trabaja con gran variedad de tipos de particiones: ext2, ext3, swap, raid, LVM, FAT 16, FAT 32, NTFS, etc. Puede obtenerse información más detallada en y mediante la instrucción man testdisk. Si se ejecuta sin opciones, permitirá elegir entre crear un fichero para registrar la información generada, añadirla a un fichero existente o simplemente no registrarla. Página.- 289

293 Fig 110: Instrucción "testdisk" A continuación permitirá elegir el disco a analizar o salir del programa. Si se selecciona un disco, solicitará el tipo de tabla de particiones y a continuación permitirá analizar, cambiar la geometría, borrar la tabla de particiones, cargar el MBR, etc. Fig 111: Opciones de testdisk / list Muestra las particiones. Ejemplo: testdisk /list Página.- 290

294 ddrescue y gddrescue Son herramientas que permiten recuperar datos de particiones que presentan errores. Intentan leer y si se producen fallos continúan con los siguientes sectores donde herramientas como dd no funcionarían. Si el proceso de copia se interrumpe por el usuario es posible continuar a partir de esa posición más tarde. parted Utilidad que mediante comandos permite crear etiquetas, crear tablas de particiones, mover, redimensionar, copiar particiones, etc. Fig 112: Instrucción "parted" Y una gran variedad de utilidades más que permiten operar con discos, particiones y sistemas de ficheros, entre las que se encuentran: e2tools. grub-disk. filelight. ext3grep. gdecrypt. easycrypt. partimage. recoverdm. recover. secure-delete. gpart. Diskmanager. Etc. Página.- 291

295 8.5.2 Volúmenes Debe tenerse muy en cuenta que el empleo del gestor de volúmenes lógicos (LVM) conlleva un alto riesgo de pérdida de la información. El bloqueo de aplicaciones, cortes de alimentación y ejecución de comandos erróneos son una fuente de riesgo. Se recomienda realizar una copia de seguridad antes de implementar LVM o reconfigurar volúmenes. El gestor de volúmenes lógicos (Logical Volume Manager o LVM) permite distribuir el espacio del disco de forma flexible en diferentes sistemas de archivos. El LVM se desarrolló por la dificultad que supone modificar las particiones en un sistema en ejecución. LVM pone en común un depósito o pool virtual (Volume Group abreviado VG) de espacio en disco. De este VG se forman los volúmenes lógicos en caso necesario. El sistema operativo accede entonces a éstos en lugar de a las particiones físicas. Los VG se pueden extender por varios discos, de tal forma que un solo VG puede estar constituido por más de una unidad o partes de ellas. Así, el LVM proporciona un cierto nivel de abstracción en relación al espacio físico del disco que permite que su organización pueda ser modificada de una forma mucho más fácil y segura que un reparticionamiento físico. DISCO DISCO 1 PART PART PART DISCO 2 PART PART PART PART PART GV 1 PM PM PM GV 2 VL 1 VL 2 PM PM VL 3 VL 4 PM PM Fig 113: Particiones frente a LVM En las tablas puede puede verse una comparación entre el particionamiento físico (izquierda) y el uso del LVM (derecha). En el lado izquierdo, se ha dividido un solo disco en tres particiones físicas (PART), con un punto de montaje (PM) para cada una, de tal forma que el sistema operativo pueda acceder a ellas. A la derecha, se han dividido dos discos en dos y tres particiones físicas cada uno. Se han definido dos grupos de volúmenes LVM (GV 1 y GV 2). GV 1 contiene dos particiones del disco DISCO 1 y una del DISCO 2. GV 2 emplea las dos particiones restantes del DISC0 2. En LVM, las particiones físicas que son incorporadas a un grupo de volúmenes se denominan volúmenes físicos (Physical volume, PV). Dentro de los grupos de volúmenes se han definido cuatro volúmenes lógicos (desde VL 1 hasta VL 4). Estos volúmenes pueden emplearse por el sistema operativo mediante los puntos de montaje asociados. La línea divisoria entre los diferentes volúmenes lógicos no tiene por qué coincidir con la división de una partición. Página.- 292

296 Por ejemplo, los límites de los volúmenes VL 1 y VL 2 no coinciden con los de las particiones. Características de LVM: Es posible juntar varias particiones o discos para formar una gran partición lógica. Si un VL se queda sin espacio (por ejemplo /home), es posible aumentar su tamaño si está correctamente configurado. LVM permite añadir discos duros o VL incluso cuando el sistema está en marcha. Esto requiere, evidentemente, hardware que se pueda cambiar en caliente (hot swap). Es posible utilizar varios discos duros en modo RAID 0 (striping) con el consiguiente incremento de rendimiento. La función snapshot permite, sobre todo en servidores, realizar copias de seguridad coherentes mientras el sistema está en funcionamiento. El uso de LVM vale la pena ya a partir de PCs domésticos muy utilizados o en servidores pequeños. LVM resulta ideal para un volumen de datos creciente como por ejemplo en el caso de bases de datos, archivos de música, directorios de usuarios, etc. En tal caso es posible configurar sistemas de archivos más grandes que un solo disco duro. Otra ventaja del LVM es la de poder crear hasta 256 VL's. Sin embargo, es importante considerar que el trabajo con el LVM se diferencia mucho del trabajo con particiones convencionales. Puede encontrarse información en inglés sobre la configuración del Logical Volume Manager (LVM) en el HowTo oficial de LVM Con la versión 2.6 del kernel, LVM se actualizó a la versión 2. Esta versión, que es compatible con la versión previa de LVM, puede seguir administrando grupos de volúmenes ya existentes. LVM2 no necesita parches del kernel y utiliza el mapeador de dispositivos (device mapper) integrado en el kernel 2.6. A partir de este kernel, LVM sólo puede utilizarse en su versión 2. Por este motivo, cuando en el capítulo se habla de LVM nos referimos siempre a LVM2. Para comprender el correcto funcionamiento de los volúmenes lógicos se propone la realización de la siguiente práctica. Práctica (volúmenes lógicos) Utilizando un pen drive realizar las siguientes operaciones: Crear cinco particiones, tres primarias y dos lógicas sobre una extendida. Instalar si es necesario lvm2 y system-config-lvm. Página.- 293

297 Inicializar las particiones las particiones primarias y las lógicas. Crear dos grupos de volúmenes: GV1 que incluya las dos primeras particiones (primarias) y GV2 que incluya las tres últimas (una primaria y dos lógicas). Crear tres volúmenes lógicos: uno, llamado VL1, que ocupe GV1 completamente y que se montará en /media/vl1, otro, llamado VL2, dentro de GV2 que ocupe la mitad del espacio y que se montará en /media/vl2 y el último, llamado VL3, que ocupará el resto de GV2 y que se montará en /media/vl3. Antes de proceder a la realización de esta práctica, para evitar desastres debidos a confusiones del usuario o errores del sistema, debe realizarse copia de seguridad de la información del equipo. Para evitar problemas con los permisos y autorizaciones se puede iniciar una sesión en un terminal y a continuación hacer uso de la instrucción su root. También puede realizarse con el usuario madrid u otro con privilegios de administrador. A continuación se procede a la creación de las particiones con la instrucción gparted (menú Aplicaciones Sistema Administración Editor de particiones), teniendo cuidado de seleccionar el dispositivo correspondiente al pen drive. Fig 114: Creación de particiones El orden de creación de las particiones debe ser: primero se crean tres primarias, después una extendida que ocupe todo el espacio restante y finalmente las dos lógicas dentro de la extendida. Las operaciones no se realizan hasta que se pulsa el botón Aplicar. Finalizado este proceso el resultado será similar al que muestra la figura siguiente. Página.- 294

298 Fig 115: Pen drive particionado A continuación se comprueba si se encuentra instalado el paquete lvm2 que gestiona los volúmenes lógicos y el paquete system-config-lvm que es un programa gráfico que permite configurar LVM, instalándolos si es necesario. Se lanza la ejecución de system-config-lvm tecleando la instrucción o a través de la opción menú Aplicaciones Herramientas del sistema Administración de Volúmenes Lógicos. Puede producirse un error al leer o guardar la información de configuración del programa que podría hacer que algunas opciones no funcionen pero que permite continuar perfectamente con el proceso. Aparecerá una ventana con una subventana a la izquierda que deberá mostrar una lista de Entidades no inicializadas que contendrá los dispositivos de almacenamiento del equipo, y entre ellos el pen drive. Desplegando el elemento de la lista correspondiente al pen drive aparecerán las particiones creadas anteriormente. Si no aparecen deberán inicializarse una a una (/dev/sdb1, /dev/sdb2, ) a través de las opciones Herramientas Inicializar.... Fig 116: Ventana del programa system-config-lvm Página.- 295

299 Hay que inicializar las particiones primarias y las lógicas que van a formar parte del LVM; en este caso todas las lineas (particiones) de /dev/sdb a excepción de las correspondientes a la partición extendida y al espacio sin particionar. Para ello habrá que ir seleccionando una a una y pulsando sobre el botón Inicializar Entidad. Al inicializar la primera, en la subventana de la izquierda aparecerá una nueva lista de Volúmenes no asignados. Al finalizar esta operación las particiones seleccionadas formarán parte del sistema LVM aunque aún no estarán asignadas a ningún grupo de volúmenes lógicos. Para crear los grupos de volúmenes GV1 y GV2 se selecciona, por ejemplo, la partición primera y el tubo de la ventana central se volverá rojo y aparecerán los botones Crear un nuevo Grupo Volumen, Agregar al Grupo Volumen existente y Eliminar Volumen de la AVL (Administración de Volúmenes Lógicos). Pulsando sobre el botón Crear un nuevo Grupo Volumen aparece una ventana (ver figura) solicitando: Nombre del grupo volumen.- en este ejemplo vamos a llamar a un grupo volumen GV1 y al otro GV2. Máximo de volúmenes físicos.- los volúmenes físicos son las particiones. Por defecto toma el valor 256 que suele ser más que suficiente. Máximo de volúmenes lógicos.- por defecto toma el valor 256 que suele ser más que suficiente. Los volúmenes lógicos son partes en las que se dividen los grupos de volúmenes y que van a tener su propio punto de montaje; no tienen por qué coincidir con los volúmenes físicos. Tamaño físico.- es la unidad mínima en que se va a dividir el grupo de volúmenes. Para tener una idea más precisa, sería como la correspondiente a los sectores de una partición o a los inodos de un sistema de ficheros ext4. Por defecto toma 4 Mb. que permitirá volúmenes físicos y lógicos de hasta 256 Gb. Si se prevé sobrepasar esta capacidad deberá aumentarse el valor del tamaño físico. Con clúster.- este cuadro de verificación debe activarse cuando el grupo volumen va a formar parte de un sistema compuesto por varios equipos. Generalmente un ordenador personal dispone de un disco duro donde almacena toda la información; si el volumen de información aumenta pueden instalarse discos duros adicionales; en sistemas que manejan gran cantidad de información, ésta podrá distribuirse (compartiéndola) en varios equipos que formarán lo que se denomina un clúster. Página.- 296

300 Fig 117: Creación de grupos de volúmenes Hay que tener en cuenta que al crear un grupo de volúmenes, el programa incluye en él el volumen físico (partición) que se encontraba seleccionado al pulsar el botón para la creación del grupo volumen. En cualquier caso, la operación es reversible y si nos equivocamos se puede deshacer por medio del botón Eliminar volumen de la AVL. Para crear el grupo volumen GV2 bastará con seleccionar la tercera partición y proceder de forma similar a la creación de GV1. Una vez creados los dos grupos de volúmenes habrá que añadirles las particiones que correspondan para que GV1 contenga las dos primeras particiones y GV2 las tres últimas. Puesto que la primera partición ya debe estar incluida en GV1, se procede con la segunda: se selecciona dicha partición de la lista de Volúmenes no asignados y se pulsa sobre el botón Agregar al Grupo Volumen. Aparecerá una lista con los grupos creados, se selecciona GV1 y se pulsa sobre el botón Añadir. Se procede de forma similar para el resto de particiones, finalizando así el proceso de asignación de volúmenes físicos (particiones) a los grupos de volúmenes. Fig 118: Grupo Volumen con Volúmenes físicos incorporados Dependiendo del elemento que se seleccione en las listas de la izquierda se mostrará un gráfico u otro con sus propiedades en las subventanas central y derecha. Página.- 297

301 Para crear el primer volumen lógico, VL1, se selecciona en la izquierda el elemento GV1 Vista Lógica y se pulsa sobre el botón Crear nuevo Volumen Lógico. Aparecerá una ventana solicitando los datos correspondientes: Fig 119: Creación de volumen lógico Nombre del volumen lógico.- en nuestro caso los nombres que se asignarán serán VL1, VL2 y VL3 respectivamente. Propiedades del volumen.- dependiendo de las opciones que se elijan permite crear volúmenes normales, RAID 0 o RAID 1. La tecnología RAID establece varios niveles de seguridad y eficacia para los volúmenes. Un volumen RAID 0 distribuye la información de los volúmenes lógicos entre varios volúmenes físicos (striping). Si los volúmenes físicos residen en diferentes discos duros los procesos de lectura/escritura se aceleran puesto que los equipos pueden leer/escribir en varios discos diferentes a la vez (franjas). Si, por ejemplo, un fichero que ocupa 8 Kb. se graba en dos discos diferentes, los primeros 4 Kb. en uno y los otros 4 Kb. en el otro, el proceso de lectura/escritura se optimiza. Sin embargo, un volumen lógico de n franjas o bandas sólo puede crearse correctamente cuando el espacio de disco requerido por el volumen lógico puede distribuirse de forma uniforme en n volúmenes físicos. Si sólo están disponibles dos volúmenes físicos, un volumen lógico de tres franjas no sería viable. Para configurar un volumen RAID 0 hay que seleccionar Striped (distribuido), el número de franjas del volumen y la capacidad de las partes (gránulos) en las que se van a dividir los ficheros para distribuirlas en cada franja. Si, por ejemplo, un fichero ocupa 12 Kb y disponemos de cinco discos duros en los que se ha creado un volumen Página.- 298

302 lógico de cinco franjas con una granularidad de 2 Kb., el fichero se dividirá en partes o gránulos de 2 Kb. que se irán grabando de forma consecutiva en cada franja, quedando distribuido el fichero de la forma: en el primer disco los gránulos 1º, 6º y 11º, en el segundo disco los gránulos 2º y 7º, etc., como muestra la figura. Fig 120: Distribución RAID 0 Si el equipo puede leer/escribir en los 5 discos a la vez, en cada operación de lectura/escritura abarcará una gran cantidad de información del fichero, incrementando eficazmente el tratamiento de la información. Un volumen RAID 1 utiliza dos discos, el segundo para contener una copia exacta del primero de tal forma que, si uno de ellos se estropea, la información se recuperará a partir del otro. Esta técnica también se llama mirroring o disco espejo. Para generar un volumen lógico RAID 1 deberá activarse el cuadro de verificación Espejado y podrá observarse como la capacidad del volumen pasa automáticamente a ser la mitad (aprox.). Evidentemente este método es efectivo si el volumen lógico cuenta con dos volúmenes físicos (particiones), cada uno en un disco y a ser posible tanto los discos como los volúmenes físicos exactamente iguales. En nuestro caso, los tres volúmenes serán lineales sin espejar. Tamaño del volumen lógico.- se mide en extensiones, teniendo en cuenta que la capacidad de la extensión se establece como Tamaño físico al crear el grupo volumen. En el ejemplo, VL1 constará de 250 extensiones de 4 Mb. cada una, lo que supone un total de 1 Gb., Vl2 constara de 188 extensiones y VL3 de 187. Con esta distribución VL1 ocupará las dos primeras particiones primarias (volúmenes físicos), VL2 la tercera partición primaria y parte de la primera partición lógica y VL3 parte de la primera partición lógica y la segunda partición lógica. Sistema de archivos.- se recomienda utilizar ext3 o ext4. Además mediante los cuadros de verificación Cantidad y Cantidad cuando reinicie permite especificar el punto de montaje (directorio) del volumen y si será montado automáticamente al reiniciar el Página.- 299

303 equipo. Si el directorio especificado no existe dará opción a crearlo en ese momento. Por defecto, el directorio de montaje se creará con los permisos rwxr-xr-x, es decir, lectura, escritura y ejecución para el propietario, lectura y ejecución para el grupo al que pertenece el propietario y lectura y ejecución para los otros, teniendo en cuenta que el significado del permiso de ejecución para los directorios consiste en la posibilidad de establecerlo como directorio activo. En nuestra práctica los tres volúmenes serán de tipo ext3, en los tres se marcará el cuadro de verificación Cantidad y los puntos de montaje serán respectivamente /media/vl1, /media/vl2 y /media/vl3. No se marcará el cuadro de verificación Cantidad cuando reinicie porque al estar realizando la práctica sobre un pen drive conectado a un puerto USB puede ocurrir que al reiniciar el equipo el pen drive no se encuentre insertado. Se permitirá la creación automática de los directorios de montaje y para que todos los usuarios puedan escribir en los volúmenes se añadirá el permiso de escritura con la instrucción: chmod a+w /media/vl1 /media/vl2 /media/vl3 Fig 121: Vistas física y lógica del grupo de volúmenes Esta práctica puede ser ampliada realizando las operaciones: Crear otra partición lógica e inicializarla. Añadir el nuevo volumen físico a GV2 y a VL3. Todas las operaciones relativas a LVM pueden realizarse desde la línea de comandos como se indica a continuación: Para instalar LVM junto con algunas utilidades: sudo aptitude install lvm2 dmsetup mdadmin Página.- 300

304 Para asignar las particiones (/dev/sdb1 /dev/sdb6) al sistema lvm: sudo pvcreate /dev/sdb1 /dev/sdb2 /dev/sdb3 /dev/sdb5 /dev/sdb6 Para crear los grupos de volúmenes: sudo vgcreate VG1 /dev/sdb1 /dev/sdb2 sudo vgcreate VG2 /dev/sdb3 /dev/sdb5 /dev/sdb6 Para crear los volúmenes lógicos: sudo lvcreate --name VL1 --size 1G GV1 sudo lvcreate --name VL2 --size 752M GV2 sudo lvcreate --name VL3 --size 748M GV2 Para crear los sistemas de archivos dentro de los volúmenes lógicos: sudo mkfs.ext3 /dev/gv1/vl1 /dev/gv2/vl2 /dev/gv2/vl3 Si los sistemas de ficheros hubieran sido de otro tipo habría que haber utilizado alguno de los comandos: mkfs.ext2, mkfs.xfs, etc. Para crear los directorios y montar los volúmenes lógicos: sudo mkdir /media/vl1 /media/vl2 /media/vl3 mount /dev/gv1/vl1 /media/vl1 mount /dev/gv2/vl2 /media/vl2 mount /dev/gv2/vl3 /media/vl3 Y por último, si se desea que los volúmenes lógicos estén accesibles sin necesidad de usar la cuenta de un usuario administrador, pueden crearse las lineas correspondientes en el fichero /etc/fstab cuyo formato será similar a: /dev/gv1/vl1 /media/vl1 ext3 defaults,users,noatime 0 0 /dev/gv2/vl2 /media/vl2 ext3 defaults,users,noatime 0 0 /dev/gv2/vl3 /media/vl3 ext3 defaults,users,noatime Desfragmentación y chequeo Los sistemas de ficheros están sometidos a un constante trasiego de archivos: creación, borrado, modificación del tamaño,, que provoca, por una parte, que los ficheros se fragmenten y, por otra, que aparezcan huecos sin información útil. La fragmentación de los ficheros produce una ralentización en el acceso a los mismos puesto que las cabezas de lectura/escritura de los discos duros tienen que desplazarse a distintos lugares para leer la información de un mismo fichero. Página.- 301

305 Los huecos se generan con el borrado de ficheros o con la disminución de su tamaño y serán los causantes de la fragmentación y dispersión de los nuevos ficheros y, por lo tanto, de reducir el rendimiento y la capacidad de los discos. Entre los factores más influyentes en el rendimiento de los sistemas de archivos a causa de la fragmentación se encuentran: La organización o algoritmos que utilizan los diferentes tipos de ficheros para localizar o situar los archivos. Los sistemas de archivos de tipo FAT y NTFS utilizan un procedimiento simple para situar los archivos que no optimiza la fragmentación: a la hora de grabar un fichero se van ocupando los espacios libres del disco aunque para ello se fragmente enormemente el fichero. Los sistemas ext2, ext3 y ext4, cuando graban el primer bloque se datos del fichero, reservan, si es posible, ocho bloques contiguos para minimizar la fragmentación cuando el fichero crezca. Las reorganizaciones automáticas que realiza el sistema operativo para mantener los sistemas de ficheros en niveles bajos de fragmentación. MaX realiza periódicamente la comprobación de sus sistemas de archivos y efectúa operaciones de optimización si es necesario. La forma o algoritmos de acceso que utilizan los sistemas operativos para acceder a los archivos según el tipo de sistema de ficheros donde se encuentran. Los algoritmos de MaX para acceder a sus sistemas de archivos más típicos (ext3, ext4, ) reducen el impacto de la fragmentación de los ficheros en el incremento de los tiempos de acceso a los mismos.. El tipo de ficheros y de accesos a los mismos. En este sentido tiene gran importancia la capacidad de la unidad de asignación de ficheros elegida para el sistema de archivos al formatear o inicializar los volúmenes. Si se eligen unidades de asignación de ficheros muy grandes y las aplicaciones que se utilizan gestionan gran cantidad de ficheros pequeños puede ocurrir que un gran número de unidades de asignación de ficheros se queden sin completar, desperdiciando así una parte considerable de la capacidad del disco. En el caso contrario, si se eligen unidades pequeñas y las aplicaciones utilizan bases de datos o ficheros enormes, puede ocurrir que el sistema utilice demasiado tiempo en realizar las consultas sobre cuál es el siguiente bloque de información a tratar. En cuanto al tipo de accesos, influye la frecuencia de creación, borrado y modificación de ficheros: generalmente, a mayor frecuencia mayor índice de fragmentación. Página.- 302

306 En Linux escasean las herramientas de tratamiento de la fragmentación por haberse desarrollado técnicas de gestión de los sistemas de archivos y tipos de sistemas de archivos que minimizan la fragmentación o su impacto. Una forma de comprobar el nivel de fragmentación de un volumen consiste en desmontarlo y hacer uso de la instrucción fsck. Por ejemplo: umount /media/vl1 fsck -nvf /dev/gv1/vl1 La instrucción fsck informará de las comprobaciones o chequeos que se realizan, así como del número de inodos utilizados, de ficheros fragmentados, etc. Para desfragmentar un volumen puede hacerse una copia de seguridad comprimida de la información que contiene, borrar completamente toda la información del fichero y volver a recuperarla desde la copia de seguridad. 8.6 Actividades Ver los repositorios configurados en Synaptic. Comprobar las dependencias y archivos instalados del paquete apache2. Buscar los paquetes que en su nombre o descripción contienen la palabra backup. Instalar con apt-get el programa de copias de seguridad keep. Comprobar si el proceso gnome-system-monitor se encuentra activo. Visualizar la lista de procesos ordenada por el nombre del proceso. Eliminar la columna Memoria del servidor X. 7. Abrir un archivo con el editor de textos, buscar el proceso que le corresponde y comprobar si en la lista de ficheros abiertos por el proceso se encuentra el fichero editado. Matar el proceso. 8. Comprobar el uso de la CPU, de la memoria y de la red. 9. Comprobar la ocupación de los sistemas de archivos montados. 10. Probar el funcionamiento de las instrucciones que muestran información del sistema, con sus diferentes opciones. 11. Montar un sistema NTFS y acceder a su contenido consultando sus ficheros y carpetas. Desmontarlo. 12. Montar y desmontar un pen drive. 13. Conectar una cámara de fotos digital al puerto USB y extraer sus fotos. 14. Realizar la práctica relativa a la creación de particiones y volúmenes en un pen drive. Ampliar con un volumen físico el grupo de volúmenes GV1 y el volumen lógico VL3. Comprobar la fragmentación de VL1, VL2 y VL Escribir las instrucciones que permitirían desfragmentar el directorio /home, que podemos suponer que se encuentra montado individualmente sobre una partición. Página.- 303

307 9 VOLÚMENES Y NIVELES RAID 9.1 Aspectos didácticos Objetivos: Conocer las características de los RAID hardware y software. Diferenciar los niveles RAID y conocer sus ventajas e inconvenientes. Conocer el software disponible en MaX para gestión de RAID's y utilizarlo. Saber administrar volúmenes RAID anulando discos defectuosos e incorporando discos nuevos. Documentación. La documentación de este tema se puede ampliar a través de la ayuda del S.O. (instrucciones man, info, ), con la documentación oficial de MaX y de Ubuntu, con la Ayuda o manuales incluidos en los propios paquetes y con la información sobre RAID incorporada en Wikipedia. Resumen. Este tema trata las características de los volúmenes RAID hardware y software, los diferentes niveles existentes de RAID, incorporando esquemas muy intuitivos que facilitan la comprensión. Se da a conocer el software que MaX incorpora para administrar volúmenes RAID y se realiza una práctica para crear un RAID 5 sobre un pen drive. Temporización: 16 horas. Página.- 304

308 9.2 Introducción El apartado muestra las características de los volúmenes y las ventajas de gestionar los discos mediante volúmenes lógicos frente a la gestión de particiones. RAID (Redundant Array of Independent Disk, conjunto redundante de discos independientes) (anteriormente Redundant Array of Inexpensive Disks) hace referencia a un sistema de almacenamiento que usa múltiples discos duros entre los que distribuye o replica los datos. Dependiendo de su configuración o «nivel», los beneficios de un RAID respecto a un único disco son uno o varios de los siguientes: mayor integridad, mayor tolerancia a fallos, mayor rendimiento y mayor capacidad. La integridad es la capacidad para la detección de datos erróneos o incompletos en, por ejemplo, las bases de datos, la tolerancia a fallos es la capacidad para acceder a la información cuando se produce un error que puede ser físico, el rendimiento es el volumen de información que puede gestionar por unidad de tiempo y la capacidad el volumen de información que puede almacenar. En sus implementaciones originales, su ventaja clave era la habilidad de combinar varios dispositivos de bajo coste y tecnología más antigua en un conjunto que ofrecía mayor capacidad, fiabilidad, velocidad o una combinación de éstas que un solo dispositivo de última generación y coste más alto. En el nivel más simple, un RAID combina varios discos duros en un solo volumen lógico. Así, en lugar de ver varios discos duros diferentes, el sistema operativo ve uno solo. Los volúmenes RAID suelen usarse en servidores y normalmente (aunque no es necesario) se implementan con unidades de disco de la misma capacidad. Debido al decremento en el precio de los discos duros y la mayor disponibilidad de las opciones RAID incluidas en los chipsets de las placas base, los niveles RAID se encuentran también como opción en los ordenadores personales más avanzados. Esto es especialmente frecuente en los computadores dedicados a tareas intensivas de almacenamiento, como edición de audio y vídeo. La especificación RAID original sugería cierto número de «niveles RAID» o combinaciones diferentes de discos. Cada una tenía ventajas y desventajas teóricas. Con el paso de los años, han aparecido diferentes implementaciones del concepto RAID. La mayoría difieren sustancialmente de los niveles RAID idealizados originalmente, pero se ha conservado la costumbre de llamarlas con números. Esto puede resultar confuso, dado que una implementación RAID 5, por ejemplo, puede diferir sustancialmente de otra. Los niveles RAID 3 y RAID 4 son confundidos con frecuencia e incluso usados indistintamente. La misma definición de RAID ha estado en disputa durante años. El uso de término «redundante» hace que muchos objeten sobre que el RAID 0 sea realmente un RAID. De igual forma, el cambio de «barato» a «independiente» confunde a muchos sobre el pretendido propósito del RAID. Incluso hay algunas implementaciones del concepto RAID que usan un solo disco. Pero en general, puede decirse que cualquier sistema que emplee los conceptos RAID básicos de combinar espacio físico en disco para los fines de mejorar la fiabilidad, capacidad o rendimiento es un sistema RAID. Página.- 305

309 9.3 Implementación por hardware y por software La distribución de datos en varios discos puede ser gestionada por hardware o por software. Además, existen sistemas RAID híbridos basados en software y hardware específico. Con la implementación por software, el sistema operativo gestiona los discos del conjunto a través de una controladora de disco normal (IDE/ATA, SATA, SCSI, SAS o Fibre Channel). Considerada tradicionalmente una solución más lenta, con el rendimiento de las CPU's modernas puede llegar a ser más rápida que algunas implementaciones hardware, a expensas de dejar menos tiempo de proceso al resto de tareas del sistema. Evidentemente es una solución más barata dado que no se necesita hardware especial y los sistemas operativos de los servidores incorporan el software necesario para configurar y gestionar los diferentes niveles RAID. Una implementación de RAID basada en hardware requiere al menos una controladora RAID específica, ya sea como una tarjeta de expansión independiente o integrada en la placa base, que gestione la administración de los discos y efectúe los cálculos de paridad necesarios para algunos niveles RAID. Esta opción suele ofrecer un mejor rendimiento y hace que el soporte por parte del sistema operativo sea más sencillo (de hecho, puede ser totalmente transparente para éste). Las implementaciones basadas en hardware suelen soportar sustitución en caliente (hot swapping), permitiendo que los discos que fallen puedan reemplazarse sin necesidad de detener el sistema. En los RAID mayores, la controladora y los discos suelen montarse en una caja externa específica, que a su vez se conecta al sistema principal mediante una o varias conexiones SCSI, Fibre Channel o iscsi. A veces el sistema RAID es totalmente autónomo, conectándose al resto del sistema como un NAS (Network Attached Storage). Los RAID híbridos se han hecho muy populares con la introducción de controladoras RAID hardware baratas. En realidad, el hardware es una controladora de disco normal sin características RAID, pero el sistema incorpora una aplicación de bajo nivel que permite a los usuarios construir RAID controlados por la BIOS. Será necesario usar un controlador de dispositivo específico para que el sistema operativo reconozca la controladora como un único dispositivo RAID. Estos sistemas efectúan en realidad todos los cálculos por software (es decir, los realiza la CPU), con la consiguiente pérdida de rendimiento, y típicamente están restringidos a una única controladora de disco. Una importante característica de los sistemas RAID por hardware es que pueden incorporar un caché de escritura no volátil (con alimentación de respaldo por batería) que permite aumentar el rendimiento del conjunto de discos sin comprometer la integridad de los datos en caso de fallo del sistema. Esta característica no está obviamente disponible en los sistemas RAID por software, que suelen presentar por tanto el problema de reconstruir el conjunto de discos cuando el sistema es reiniciado tras un fallo para asegurar la integridad de los datos. Página.- 306

310 Por el contrario, los sistemas basados en software son mucho más flexibles (permitiendo, por ejemplo, construir RAID de particiones en lugar de discos completos y agrupar en un mismo RAID discos conectados en varias controladoras) y los basados en hardware añaden un punto de fallo más al sistema (la controladora RAID). Todas las implementaciones pueden soportar el uso de uno o más discos de reserva (hot spare), unidades preinstaladas que pueden usarse inmediatamente (y casi siempre automáticamente) tras el fallo de un disco del RAID. Esto reduce el tiempo del período de reparación al acortar el tiempo de reconstrucción del RAID. En resumen, las ventajas e inconvenientes de la implementación hardware son: Ni el sistema operativo ni el procesador necesitan dedicar recursos para atender al RAID, la tarjeta realiza todas las funciones. Es muy fácil de configurar. En caso de fallo se reinstala un nuevo disco y la tarjeta realiza la réplica. El hardware conlleva un gasto adicional. 9.4 Niveles RAID RAID 0 Un nivel RAID 0 distribuye los datos equitativamente entre dos o más discos, incrementando así la velocidad de acceso a los mismos. Es importante señalar que el RAID 0 no era uno de los niveles RAID originales y que no es redundante. El RAID 0 se usa normalmente para incrementar el rendimiento, aunque también puede utilizarse como forma de crear volúmenes grandes a partir de discos duros pequeños. Un RAID 0 puede ser creado con discos de diferentes tamaños, pero el espacio de almacenamiento añadido al conjunto estará limitado por el tamaño del disco más pequeño. Así, si se forma un RAID 0 con un disco de 300 Gb y otro de 100 Gb, el tamaño del conjunto resultante será sólo de 200 GB, ya que cada disco aporta 100 Gb. Una buena implementación de un RAID 0 dividirá las operaciones de lectura y escritura en bloques de igual tamaño, por lo que distribuirá la información equitativamente entre los discos. La fiabilidad del volumen RAID 0 será igual a la fiabilidad media de cada disco entre el número de discos del conjunto; es decir, la fiabilidad total es inversamente proporcional al número de discos del conjunto. Si un disco se estropea se pierde la información del conjunto que forma el volumen. Página.- 307

311 Fig 122: Esquema de RAID 0 Entonces, las dos grandes ventajas de un nivel RAID 0 son el incremento de la velocidad de transmisión de datos y la posibilidad de obtener un volumen de gran capacidad a partir de discos de baja capacidad. Una forma de crear en MaX un volumen RAID 0 ya se contempló en el apartado 8.5.2; basta con seleccionar en la ventana de creación de volúmenes lógicos, en la sección de propiedades de VL, la opción Striped, el número de franjas o discos y la capacidad de los bloques en los que se va a dividir la información para distribuirlos por las franjas. Fig 123: Crear volumen lógico RAID lineal o JBOD (Just a Bunch Of Drivers) Aunque este no es uno de los niveles RAID numerados, si es un método popular de combinar múltiples discos duros físicos en un solo disco virtual. Los discos son meramente concatenados uno tras otro comportándose como un solo disco. Se utiliza a veces para combinar varias unidades pequeñas (obsoletas) en una unidad mayor con un tamaño útil. JBOD es muy parecido al gestor de volúmenes lógicos LVM con la diferencia de que en el primer caso la traducción de la dirección lógica del dispositivo concatenado a la dirección física del disco puede ser realizada por el hardware RAID y en el segundo la traducción es realizada por el núcleo. Página.- 308

312 Una ventaja de JBOD sobre RAID 0 es que, en caso de fallo de un disco, en RAID 0 suele producirse la pérdida de todos los datos del conjunto mientras que en JBOD sólo se pierden los datos del disco afectado. Como inconveniente, JBOD no supone ninguna mejora en el rendimiento del sistema. De forma similar al RAID 0, para crear en MaX un volumen lineal o JBOD basta con seleccionar en la ventana de creación de volúmenes lógicos, la opción Lineal; de hecho, los volúmenes lógicos creados en la práctica del apartado son de este tipo RAID 1 (disco espejo o mirroring) El RAID 1 crea una copia exacta (o espejo) de un conjunto de datos en dos o más discos. Esto resulta útil cuando el rendimiento en lectura es más importante que la capacidad. Un conjunto RAID 1 sólo puede ser tan grande como el más pequeño de sus discos. Un RAID 1 clásico consiste en dos discos en espejo, lo que incrementa exponencialmente la fiabilidad respecto a un solo disco; es decir, la probabilidad de fallo del conjunto es igual al producto de las probabilidades de fallo de cada uno de los discos (pues para que el conjunto falle es necesario que lo hagan todos sus discos). Adicionalmente, dado que todos los datos están en dos o más discos, con hardware habitualmente independiente, el rendimiento de lectura se incrementa aproximadamente como múltiplo lineal del número del copias; es decir, un RAID 1 puede estar leyendo simultáneamente dos datos diferentes en dos discos diferentes, por lo que su rendimiento se duplica. Para maximizar los beneficios sobre el rendimiento del RAID 1 se recomienda el uso de controladoras de disco independientes, una para cada disco (práctica a veces denominada splitting o duplexing). Fig 124: Esquema de RAID 1 Como en el RAID 0, el tiempo medio de lectura se reduce, ya que los sectores a buscar pueden dividirse entre los discos, bajando el tiempo de búsqueda y subiendo la tasa de transferencia, con el único límite de la velocidad soportada por la controladora RAID. Página.- 309

313 Sin embargo, muchas tarjetas RAID 1 IDE antiguas leen sólo de un disco de la pareja, por lo que su rendimiento es igual al de un único disco. Algunas implementaciones RAID 1 antiguas también leen de ambos discos simultáneamente y comparan los datos para detectar errores. La detección y corrección de errores en los discos duros modernos hacen esta práctica poco útil. Al escribir, el conjunto se comporta como un único disco, dado que los datos deben ser escritos en todos los discos del RAID 1. Por tanto, el rendimiento no mejora. El RAID 1 tiene muchas ventajas de administración. Por ejemplo, en algunos entornos con más de un disco espejo, es posible «dividir el espejo» marcando un disco como inactivo, hacer una copia de seguridad de dicho disco y al finalizar actualizar el espejo. Esto requiere que la aplicación de gestión del conjunto soporte la recuperación de los datos del disco en el momento de la división. Este procedimiento es menos crítico que la presencia de una característica de snapshot (copia instantánea de un volumen en un momento dado) en algunos sistemas de ficheros, en la que se reserva algún espacio para los cambios, presentando una vista estática en un punto temporal dado del sistema de ficheros. Alternativamente, un conjunto de discos puede ser almacenado de forma parecida a como se hace con las tradicionales cintas. En MaX, un volumen RAID 1 puede crearse seleccionando en la ventana de creación de volúmenes lógicos la opción Lineal y marcando el cuadro de verificación Espejado. Fig 125: Propiedades del volumen lógico RAID 2 Un RAID 2 distribuye los datos en varios discos a nivel de bits en lugar de a nivel de bloques de información y usa un código de Hamming para la corrección de errores, que permite detectar y corregir errores a nivel de bit. Los discos son sincronizados por la controladora para funcionar al unísono. Este nivel de RAID, que permite tasas de transferencia de datos extremadamente altas, actualmente no se utiliza. Teóricamente, un RAID 2 necesitaría 39 discos en un sistema informático moderno: 32 se usarían para almacenar los bits individuales que forman cada palabra y 7 se usarían para la corrección de errores. Página.- 310

314 9.4.5 RAID 3 Un RAID 3 distribuye los datos por varios discos, a nivel de bytes, dedicando un disco exclusivamente para la paridad. Prácticamente no se usa por presentar el problema de no poder atender varias peticiones simultáneas, debido a que por definición cualquier simple bloque de datos se dividirá por todos los discos del conjunto, residiendo la misma dirección dentro de cada uno de ellos. Así, cualquier operación de lectura o escritura exige activar todos los discos del conjunto. Fig 126: Esquema de RAID 3 En el ejemplo de la figura, una petición del bloque «A» formado por los bytes A1 a A6 requeriría que los tres discos de datos buscaran el comienzo (A1) y devolvieran su contenido. Una petición simultánea del bloque «B» tendría que esperar a que la anterior concluyese RAID 4 Fig 127: Esquema de RAID 4 Un RAID 4 usa división a nivel de bloques con un disco de paridad dedicado. Necesita un mínimo de 3 discos físicos. El RAID 4 es parecido al RAID 3 con la diferencia que divide a nivel de bloques en lugar de a nivel de bytes. Esto permite que cada miembro del conjunto funcione independientemente cuando se solicita un único bloque. Si la controladora de disco lo permite, un conjunto RAID 4 puede servir varias peticiones de lectura simultáneamente. Página.- 311

315 En principio también sería posible servir varias peticiones de escritura simultáneamente, pero al estar toda la información de paridad en un solo disco, éste se convertiría en el cuello de botella del conjunto. En la figura de ejemplo, una petición del bloque «A1» sería servida por el disco 0. Una petición simultánea del bloque «B1» tendría que esperar, pero una petición de «B2» podría atenderse concurrentemente RAID 5 Un RAID 5 usa división de datos a nivel de bloques distribuyendo la información de paridad entre todos los discos miembros del conjunto. El RAID 5 ha logrado popularidad gracias a su bajo coste de redundancia. Generalmente, el RAID 5 se implementa con soporte hardware para el cálculo de la paridad. Fig 128: Esquema de RAID 5 En la figura anterior, una petición de lectura del bloque «A1» sería servida por el disco 0. Una petición de lectura simultánea del bloque «B1» tendría que esperar, pero una petición de lectura de «B2» podría atenderse concurrentemente ya que seria servida por el disco 1. Cada vez que un bloque de datos se escribe en un RAID 5, se genera un bloque de paridad dentro de la misma división (stripe). Un bloque se compone a menudo de muchos sectores consecutivos de disco. Una serie de bloques (un bloque de cada uno de los discos del conjunto) recibe el nombre colectivo de división (stripe). Si otro bloque, o alguna porción de un bloque, es escrita en esa misma división, el bloque de paridad (o una parte del mismo) es recalculada y vuelta a escribir. El disco utilizado por el bloque de paridad está escalonado de una división a la siguiente, de ahí el término «bloques de paridad distribuidos». Las escrituras en un RAID 5 son costosas en términos de operaciones de disco y tráfico entre los discos y la controladora. Página.- 312

316 Los bloques de paridad no se leen en las operaciones de lectura de datos, ya que esto sería una sobrecarga innecesaria y disminuiría el rendimiento. Sin embargo, los bloques de paridad se leen cuando la lectura de un sector de datos provoca un error de CRC o verificación de bits. En este caso, el sector en la misma posición relativa dentro de cada uno de los bloques de datos restantes en la división y dentro del bloque de paridad en la división se utilizan para reconstruir el sector erróneo. El error CRC se oculta así al resto del sistema. De la misma forma, si falla un disco del conjunto, los bloques de paridad de los restantes discos son combinados matemáticamente con los bloques de datos de los restantes discos para reconstruir los datos del disco que ha fallado «al vuelo». La operación anterior se denomina a veces Modo Interino de Recuperación de Datos (Interim Data Recovery Mode). El sistema sabe que un disco ha fallado, pero sólo con el fin de que el sistema operativo pueda notificar al administrador que una unidad necesita ser reemplazada: las aplicaciones en ejecución siguen funcionando ajenas al fallo. Las lecturas y escrituras continúan normalmente en el conjunto de discos, aunque con alguna degradación de rendimiento. La diferencia entre el RAID 4 y el RAID 5 es que, en el Modo Interno de Recuperación de Datos, el RAID 5 puede ser ligeramente más rápido, debido a que, cuando el CRC y la paridad están en el disco que falló, los cálculos no tienen que realizarse, mientras que en el RAID 4, si uno de los discos de datos falla, los cálculos tienen que ser realizados en cada acceso. El RAID 5 requiere al menos tres unidades de disco para ser implementado. El fallo de un segundo disco provoca la pérdida completa de los datos. El número máximo de discos en un grupo de redundancia RAID 5 es teóricamente ilimitado, pero en la práctica es común limitar el número de unidades. Los inconvenientes de usar grupos de redundancia mayores son una mayor probabilidad de fallo simultáneo de dos discos, un mayor tiempo de reconstrucción y una mayor probabilidad de hallar un sector irrecuperable durante una reconstrucción. A medida que el número de discos en un conjunto RAID 5 crece, el tiempo medio entre fallos (MTBF) puede ser más bajo que el de un único disco. Esto sucede cuando la probabilidad de que falle un segundo disco en los N-1 discos restantes de un conjunto en el que ha fallado un disco en el tiempo necesario para detectar, reemplazar y recrear dicho disco es mayor que la probabilidad de fallo de un único disco. Una alternativa que proporciona una protección de paridad dual, permitiendo así mayor número de discos por grupo, es el RAID 6. Algunos vendedores RAID evitan montar discos de los mismos lotes en un grupo de redundancia para minimizar la probabilidad de fallos simultáneos al principio y el final de su vida útil. Las implementaciones RAID 5 presentan un rendimiento malo cuando se someten a cargas de trabajo que incluyen muchas escrituras más pequeñas que el tamaño de una división (stripe). Esto se debe a que la paridad debe ser actualizada para cada escritura, lo que exige realizar secuencias de lectura, modificación y escritura tanto para el bloque de datos como para el de paridad. Implementaciones más complejas incluyen a menudo cachés de escritura no volátiles para reducir este problema de rendimiento. Página.- 313

317 En el caso de un fallo del sistema cuando hay escrituras activas, la paridad de una división (stripe) puede quedar en un estado inconsistente con los datos. Si esto no se detecta y repara antes de que un disco o bloque falle, pueden perderse datos debido a que se usará una paridad incorrecta para reconstruir el bloque perdido en dicha división. Esta potencial vulnerabilidad se conoce a veces como «agujero de escritura». Son comunes el uso de caché no volátiles y otras técnicas para reducir la probabilidad de ocurrencia de esta vulnerabilidad RAID 6 El RAID 6, que no era uno de los niveles RAID originales, amplía el nivel RAID 5 añadiendo otro bloque de paridad, por lo que divide los datos a nivel de bloques y distribuye los dos bloques de paridad entre todos los miembros del conjunto. Fig 129: Esquema de RAID 6 Puede ser considerado un caso especial de código Reed-Solomon, que es un código que utilizando unos bits adicionales permite detectar y corregir los errores de los datos en el receptor. Al añadir códigos adicionales es posible alcanzar cualquier número de discos redundantes, y recuperarse de un fallo de ese mismo número de discos en cualquier punto del conjunto, pero en el nivel RAID 6 se usan dos únicos códigos. Al igual que en el RAID 5, en el RAID 6 la paridad se distribuye en divisiones (stripes), con los bloques de paridad en un lugar diferente en cada división. El RAID 6 es ineficiente cuando se usa un pequeño número de discos pero a medida que el conjunto crece y se dispone de más discos la pérdida en capacidad de almacenamiento se hace menos importante, creciendo al mismo tiempo la probabilidad de que dos discos fallen simultáneamente. El RAID 6 proporciona protección contra fallos dobles de discos y contra fallos cuando se está reconstruyendo un disco. En caso de que sólo tengamos un conjunto puede ser más adecuado que usar un RAID 5 con un disco de reserva (hot spare). La capacidad de datos de un conjunto RAID 6 es n-2, siendo n el número total de discos del conjunto. Página.- 314

318 Un RAID 6 no penaliza el rendimiento de las operaciones de lectura, pero sí el de las de escritura debido al proceso que exigen los cálculos adicionales de paridad. Esta penalización puede minimizarse agrupando las escrituras en el menor número posible de divisiones (stripes), lo que puede lograrse mediante el uso de un sistema de ficheros WAFL RAID 5E y RAID 6E Se llama RAID 5E y RAID 6E a las variantes de RAID 5 y RAID 6 que incluyen discos de reserva. Estos discos pueden estar conectados y preparados (hot spare) o en espera (standby spare). En los RAID 5E y RAID 6E, los discos de reserva están disponibles para cualquiera de las unidades miembro. No suponen mejora alguna del rendimiento, pero sí se minimiza el tiempo de reconstrucción (en el caso de los discos hot spare) y las labores de administración cuando se producen fallos. Un disco de reserva no es realmente parte del conjunto hasta que un disco falla y el conjunto se reconstruye sobre el de reserva. 9.5 Niveles RAID anidados Muchas controladoras permiten anidar niveles RAID, es decir, que un RAID pueda usarse como elemento básico de otro en lugar de discos físicos. Resulta instructivo pensar en estos conjuntos como capas dispuestas unas sobre otras, con los discos físicos en la inferior. Los RAID anidados se indican normalmente uniendo en un solo número los correspondientes a los niveles RAID usados, añadiendo a veces un «+» entre ellos. Por ejemplo, el RAID 10 (o RAID 1+0) consiste conceptualmente en múltiples conjuntos de nivel 1 almacenados en discos físicos con un nivel 0 encima, agrupando los anteriores niveles 1. En el caso del RAID 0+1 se usa más esta forma que RAID 01 para evitar la confusión con el RAID 1. Sin embargo, cuando el conjunto de más alto nivel es un RAID 0 (como en el RAID 10 y en el RAID 50), la mayoría de los vendedores eligen omitir el «+», a pesar de que RAID 5+0 sea más informativo. Al anidar niveles RAID, se suele combinar un nivel RAID que proporcione redundancia con un RAID 0 que aumenta el rendimiento. Con estas configuraciones es preferible tener el RAID 0 como nivel más alto y los conjuntos redundantes debajo, porque así será necesario reconstruir menos discos cuando uno falle. Así, el RAID 10 es preferible al RAID 0+1 aunque las ventajas administrativas de «dividir el espejo» del RAID 1 se perderían. Los niveles RAID anidados más usados son: RAID 0+1: Un espejo de divisiones. RAID 1+0: Una división de espejos. RAID 30: Una división de niveles RAID con paridad dedicada. RAID 100: Una división de una división de espejos. Página.- 315

319 9.5.1 RAID 0+1 Un RAID 0+1 (también llamado RAID 01, que no debe confundirse con RAID 1) es un RAID usado para replicar y compartir datos entre varios discos. La diferencia entre un RAID 0+1 y un RAID 1+0 es la localización de cada nivel RAID dentro del conjunto final: un RAID 0+1 es un espejo de divisiones. Fig 130: Esquema de RAID 0+1 Como puede verse en la figura, primero se crean dos conjuntos RAID 0 (dividiendo los datos en discos) y luego, sobre los anteriores, se crea un conjunto RAID 1 (realizando un espejo de los anteriores). La ventaja de un RAID 0+1 es que cuando un disco duro falla, los datos perdidos pueden ser copiados del otro conjunto de nivel 0 para reconstruir el conjunto global. Sin embargo, si se añade un disco duro adicional en una división, es obligatorio añadir otro al de la otra división para equilibrar el tamaño del conjunto. Además, el RAID 0+1 no es tan robusto como un RAID 1+0, no pudiendo tolerar dos fallos simultáneos de discos salvo que sean en la misma división. Es decir, cuando un disco falla, la otra división se convierte en un punto de fallo único. Además, cuando se sustituye el disco que falló, se necesita que todos los discos del conjunto participen en la reconstrucción de los datos. Con la cada vez mayor capacidad de las unidades de discos, el riesgo de fallo de los discos es cada vez mayor. Además, las tecnologías de corrección de errores de bit no han sido capaces de mantener el ritmo de rápido incremento de las capacidades de los discos, provocando un mayor riesgo de hallar errores físicos irrecuperables. Dados estos cada vez mayores riesgos del RAID 0+1 (y su vulnerabilidad ante los fallos dobles simultáneos), muchos entornos empresariales críticos están empezando a evaluar configuraciones RAID más tolerantes a fallos que añaden un mecanismo de paridad subyacente. Entre los más prometedores están los enfoques híbridos como el RAID (espejo sobre paridad única) o RAID (espejo sobre paridad dual). Son los más habituales en las empresas. Página.- 316

320 9.5.2 RAID 1+0 Un RAID 1+0, también llamado RAID 10, es parecido a un RAID 0+1 con la excepción de que los niveles RAID que lo forman se invierte: el RAID 10 es una división de espejos. Fig 131: Esquema de RAID 10 En cada división RAID 1 pueden fallar todos los discos salvo uno sin que se pierdan datos. Sin embargo, si los discos que han fallado no se reemplazan, el restante pasa a ser un punto único de fallo para todo el conjunto. Si ese disco falla entonces, se perderán todos los datos del conjunto completo. Como en el caso del RAID 0+1, si un disco que ha fallado no se reemplaza, entonces un solo error de medio irrecuperable que ocurra en el disco espejado resultaría en pérdida de datos. Debido a estos mayores riesgos del RAID 1+0, muchos entornos empresariales críticos están empezando a evaluar configuraciones RAID más tolerantes a fallos que añaden un mecanismo de paridad subyacente. Entre los más prometedores están los enfoques híbridos como el RAID (espejo sobre paridad única) o RAID (espejo sobre paridad dual). El RAID 10 es a menudo la mejor elección para bases de datos de altas prestaciones, debido a que la ausencia de cálculos de paridad proporciona mayor velocidad de escritura RAID 30 El RAID 30 o división con conjunto de paridad dedicado es una combinación de un RAID 3 y un RAID 0. El RAID 30 proporciona tasas de transferencia elevadas combinadas con una alta fiabilidad a cambio de un coste de implementación muy alto. La mejor forma de construir un RAID 30 es combinar dos conjuntos RAID 3 con los datos divididos en ambos conjuntos. El RAID 30 trocea los datos en bloques más pequeños y los divide en cada conjunto RAID 3, que a su vez lo divide en trozos aún menores, calcula la paridad aplicando un XOR a cada uno y los escribe en todos los discos del conjunto salvo en uno, donde se almacena la información de paridad. El tamaño de cada bloque se decide en el momento de construir el RAID. Página.- 317

321 Fig 132: Esquema de RAID 30 El RAID 30 permite que falle un disco de cada conjunto RAID 3. Hasta que estos discos que fallaron sean reemplazados, los otros discos de cada conjunto que sufrió el fallo son puntos únicos de fallo para el conjunto RAID 30 completo. En otras palabras, si alguno de ellos falla se perderán todos los datos del conjunto. El tiempo de recuperación necesario (detectar y responder al fallo del disco y reconstruir el conjunto sobre el disco nuevo) representa un periodo de vulnerabilidad para el RAID RAID 100 Un RAID 100 (RAID 10+0) es una división de conjuntos RAID 10. El RAID 100 es un ejemplo de «RAID cuadriculado», un RAID en el que conjuntos divididos son a su vez divididos conjuntamente de nuevo. Todos los discos menos uno podrían fallar en cada RAID 1 sin perder datos. Sin embargo, el disco restante de un RAID 1 se convierte así en un punto único de fallo para el conjunto degradado. A menudo el nivel superior de división se hace por software. Algunos vendedores llaman a este nivel más alto un MetaLun o Soft Stripe. Los principales beneficios de un RAID 100 (y de los RAID cuadriculados en general) sobre un único nivel RAID son el mejor rendimiento para lecturas aleatorias y la mitigación de los puntos calientes de riesgo en el conjunto. Por estas razones, el RAID 100 es a menudo la mejor elección para bases de datos muy grandes, donde el conjunto software subyacente limita la cantidad de discos físicos permitidos en cada conjunto estándar. Implementar niveles RAID anidados permite eliminar virtualmente el límite de unidades físicas en un único volumen lógico RAID 50 Un RAID 50 (RAID 5+0) combina la división a nivel de bloques de un RAID 0 con la paridad distribuida de un RAID 5, siendo pues un conjunto RAID 0 dividido de elementos RAID 5. Página.- 318

322 Un disco de cada conjunto RAID 5 puede fallar sin que se pierdan datos. Sin embargo, si el disco que falla no se reemplaza, los discos restantes de dicho conjunto se convierten en un punto único de fallo para todo el conjunto. Si uno falla, todos los datos del conjunto global se pierden. El tiempo necesario para recuperar (detectar y responder al fallo de disco y reconstruir el conjunto sobre el nuevo disco) representa un periodo de vulnerabilidad del conjunto RAID. La configuración de los conjuntos RAID repercute sobre la tolerancia a fallos general. Una configuración de tres conjuntos RAID 5 de siete discos cada uno tiene la mayor capacidad y eficiencia de almacenamiento, pero sólo puede tolerar un máximo de tres fallos potenciales de disco. Debido a que la fiabilidad del sistema depende del rápido reemplazo de los discos averiados para que el conjunto pueda reconstruirse, es común construir conjuntos RAID 5 de seis discos con un disco de reserva en línea (hot spare) que permite empezar de inmediato la reconstrucción en caso de fallo del conjunto. Esto no soluciona el problema de que el conjunto sufre un estrés máximo durante la reconstrucción dado que es necesario leer cada bit, justo cuando es más vulnerable. Una configuración de siete conjuntos RAID 5 de tres discos cada uno puede tolerar hasta siete fallos de disco pero tiene menor capacidad y eficiencia de almacenamiento. El RAID 50 mejora el rendimiento del RAID 5, especialmente en escritura, y proporciona mejor tolerancia a fallos que un nivel RAID único. Este nivel se recomienda para aplicaciones que necesitan gran tolerancia a fallos, capacidad y rendimiento de búsqueda aleatoria. A medida que el número de unidades del conjunto RAID 50 crece y la capacidad de los discos aumenta, el tiempo de recuperación lo hace también. 9.6 Niveles RAID propietarios Aunque todas las implementaciones de RAID difieren en algún grado de la especificación idealizada, algunas compañías han desarrollado implementaciones RAID completamente propietarias que difieren sustancialmente de todas las demás Paridad doble Una ampliación frecuente a los niveles RAID existentes es la paridad doble, a veces implementada y conocida como paridad diagonal. Como en el RAID 6, hay dos conjuntos de información de chequeo de paridad, pero a diferencia de aquél, el segundo conjunto no es otro conjunto de puntos calculado sobre un síndrome polinomial diferente para los mismos grupos de bloques de datos, sino que se calcula la paridad extra a partir de un grupo diferente de bloques de datos. Por ejemplo, sobre el gráfico tanto el RAID 5 como el RAID 6 calcularían la paridad sobre todos los bloques de la letra A para generar uno o dos bloques de paridad. Página.- 319

323 Sin embargo, es bastante fácil calcular la paridad contra múltiples grupos de bloques, en lugar de sólo sobre los bloques de la letra A: puede calcularse la paridad sobre los bloques de la letra A y un grupo permutado de bloques. Fig 133: Esquema de RAID de paridad doble Sobre el esquema de la figura, los bloques Q son los de la paridad doble. El bloque Q2 se calcularía como A2 xor B3 'xor P3, mientras el bloque Q3 se calcularía como A3 xor P2 xor C1 y el Q1 sería A1 xor B2 xor C3. Debido a que los bloques de paridad doble se distribuyen correctamente, es posible reconstruir dos discos de datos que fallen mediante recuperación iterativa. Por ejemplo, B2 podría recuperarse sin usar ninguno de los bloque x1 ni x2 mediante el cálculo de B3 xor P3 xor Q2 = A2, luego A2 xor A3 xor P1 = A1, y finalmente A1 xor C3 xor Q1 = B2. No es recomendable que el sistema de paridad doble funcione en modo degradado debido a su bajo rendimiento RAID 1.5 RAID 1.5 es un nivel RAID propietario de HighPoint a veces incorrectamente denominado RAID 15. Por la poca información disponible, parece ser una implementación correcta de un RAID 1. Cuando se lee, los datos se recuperan de ambos discos simultáneamente y la mayoría del trabajo se hace en hardware en lugar de en el controlador software RAID 7 RAID 7 es una marca registrada de Storage Computer Corporation, que añade cachés a RAID 3 o RAID 4 para mejorar el rendimiento. Página.- 320

324 9.6.4 RAID S o RAID de paridad RAID S es un sistema RAID de paridad distribuida propietario de EMC Corporation usado en sus sistemas de almacenamiento Symmetrix. Cada volumen reside en un único disco físico, y se combinan arbitrariamente varios volúmenes para el cálculo de paridad. EMC llamaba originalmente a esta característica RAID S y luego la rebautizó RAID de paridad (Parity RAID) para su plataforma Symmetrix DMX. EMC ofrece también actualmente un RAID 5 estándar para el Symmetrix DMX Matrix RAID Matrix RAID (matriz RAID) es una característica que apareció por vez primera en la BIOS RAID Intel ICH6R. No es un nuevo nivel RAID. El Matrix RAID utiliza dos o más discos físicos, asignando partes de idéntico tamaño de cada uno de ellos a diferentes niveles de RAID. Así, por ejemplo, sobre 4 discos de un total de 600GB, se pueden usar 200 en raid 0, 200 en raid 10 y 200 en raid 5. Actualmente, la mayoría de los otros productos RAID BIOS de gama baja sólo permiten que un disco participen en un único conjunto. Fig 134: Esquema de matrix RAID Este producto está dirigido a los usuarios domésticos, proporcionando una zona segura (la sección RAID 1) para documentos y otros ficheros que se desean almacenar redundantemente y una zona más rápida (la sección RAID 0) para el sistema operativo, aplicaciones, etcétera Linux MD RAID 10 La controladora RAID software del kernel de Linux, llamada md (multiple disk, disco múltiple) puede ser usada para construir un conjunto RAID 1+0 clásico, pero también permite un único nivel RAID 10 con algunas extensiones interesantes. Página.- 321

325 En particular, soporta un espejado de k bloques en n unidades cuando k no es divisible por n. Esto se hace repitiendo cada bloque k veces al escribirlo en un conjunto RAID 0 subyacente de n unidades. Evidentemente esto equivale a la configuración RAID 10 estándar. Linux también permite crear otras configuraciones RAID usando la controladora md (niveles 0, 1, 4, 5 y 6) además de otros usos no RAID como almacenamiento multirruta y LVM IBM ServeRAID 1E La serie de adaptadores IBM ServeRAID soportan un espejado doble de un número arbitrario de discos, como se ilustra en la figura. Fig 135: Esquema de ServeRAID 1E Esta configuración es tolerante a fallos de unidades no adyacentes. Otros sistemas de almacenamiento como el StorEdge T3 de Sun soportan también este modo RAID Z El sistema de ficheros ZFS de Sun Microsystems implementa un esquema de redundancia integrado parecido al RAID 5 que se denomina RAID Z. Esta configuración evita el «agujero de escritura» del RAID 5 y la necesidad de la secuencia leer-modificar-escribir para operaciones de escrituras pequeñas efectuando sólo escrituras de divisiones (stripes) completas, espejando los bloques pequeños en lugar de protegerlos con el cálculo de paridad, lo que resulta posible gracias a que el sistema de ficheros conoce la estructura de almacenamiento subyacente y puede gestionar el espacio adicional cuando lo necesita. Página.- 322

326 9.7 Posibilidades de RAID Lo que RAID puede hacer RAID puede mejorar el rendimiento del disco. Los niveles RAID 1, 0+1 o 10, 5 y 6 (sus variantes, como el 50) permiten que un disco falle mecánicamente y que aun así los datos del conjunto sigan siendo accesibles para los usuarios. En lugar de exigir que se realice una restauración costosa en tiempo desde una cinta, DVD o algún otro medio de respaldo lento, un RAID permite que los datos se recuperen en un disco de reemplazo a partir de los restantes discos del conjunto, mientras al mismo tiempo permanece disponible para los usuarios en un modo degradado. Esto es muy valorado por las empresas, ya que el tiempo de no disponibilidad suele tener graves repercusiones. Para usuarios domésticos, puede permitir el ahorro del tiempo de restauración de volúmenes grandes, que requerirían varios DVD o cintas para las copias de seguridad. RAID puede mejorar el rendimiento de ciertas aplicaciones. Los niveles RAID 0, 5 y 6 usan variantes de división (striping) de datos, lo que permite que varios discos atiendan simultáneamente las operaciones de lectura lineales, aumentando la tasa de transferencia sostenida. Las aplicaciones de escritorio que trabajan con ficheros grandes, como la edición de vídeo e imágenes, se benefician de esta mejora. También es útil para las operaciones de copia de respaldo de disco a disco. Además, si se usa un RAID 1 o un RAID basado en división con un tamaño de bloque lo suficientemente grande se logran mejoras de rendimiento para patrones de acceso que implique múltiples lecturas simultáneas (por ejemplo, bases de datos multiusuario) Lo que RAID no puede hacer RAID no protege los datos. Un conjunto RAID tiene un sistema de ficheros, lo que supone un punto único de fallo al ser vulnerable a una amplia variedad de riesgos aparte del fallo físico de disco, por lo que RAID no evita la pérdida de datos por estas causas. RAID no impedirá que un virus destruya los datos, que éstos se corrompan, que sufran la modificación o borrado accidental por parte del usuario ni que un fallo físico en otro componente del sistema afecten a los datos. RAID no simplifica la recuperación de un desastre. Cuando se trabaja con un solo disco, éste es accesible normalmente mediante un controlador ATA o SCSI incluido en la mayoría de los sistemas operativos. Sin embargo, las controladoras RAID necesitan controladores software específicos. Las herramientas de recuperación que trabajan con discos simples en controladoras genéricas necesitarán controladores especiales para acceder a los datos de los conjuntos RAID. Si estas herramientas no los soportan, los datos serán inaccesibles para ellas. Página.- 323

327 RAID no mejora el rendimiento de todas las aplicaciones. Esto resulta especialmente cierto en las configuraciones típicas de escritorio. La mayoría de aplicaciones de escritorio y videojuegos hacen énfasis en la estrategia de buffering y los tiempos de búsqueda de los discos. Una mayor tasa de transferencia sostenida supone poco beneficio para los usuarios de estas aplicaciones, al ser la mayoría de los ficheros a los que se accede muy pequeños. La división de discos de un RAID 0 mejora el rendimiento de transferencia lineal pero no lo demás, lo que hace que la mayoría de las aplicaciones de escritorio y juegos no muestren mejora alguna, salvo excepciones. Para estos usos, lo mejor es comprar un disco más grande, rápido y caro en lugar de dos discos más lentos y pequeños en una configuración RAID 0. RAID no facilita el traslado a un sistema nuevo. Cuando se usa un solo disco, es relativamente fácil trasladar el disco a un sistema nuevo: basta con conectarlo, si cuenta con la misma interfaz. Con un RAID no es tan sencillo: la BIOS RAID debe ser capaz de leer los metadatos de los miembros del conjunto para reconocerlo adecuadamente y hacerlo disponible al sistema operativo. Dado que los distintos fabricantes de controladoras RAID usan diferentes formatos de metadatos (incluso controladoras de un mismo fabricante son incompatibles si corresponden a series diferentes) es virtualmente imposible mover un conjunto RAID a una controladora diferente, por lo que suele ser necesario mover también la controladora. Esto resulta imposible en aquellos sistemas donde está integrada en la placa base. Esta limitación puede obviarse con el uso de RAID por software, que a su vez añaden otras diferentes (especialmente relacionadas con el rendimiento). 9.8 Software RAID en MaX. El paquete mdadm La antigua colección de utilidades para RAD raidtools y raidtools 2 ha quedado en desuso por su funcionalidad limitada y la dependencia de un fichero de configuración (etc/raidtab) dificil de mantener. En la actualidad el paquete mdadm (multiple devices admin) se ha convertido en un estandard de gestión simple y robusta de RAID's por software Instalación y carga de mdadm En principio, el paquete mdadm se instala por defecto. Si no se encuentra instalado puede incorporarse con el Gestor de paquetes Synaptic o con la instrucción: sudo apt-get install mdadm Puede comprobarse qué módulos raid se encuentran cargados mediante la instrucción: sudo modprobe -l raid* Página.- 324

328 Si el módulo raid correspondiente al nivel RAID con el que se pretende trabajar no se encuentra cargado puede cargarse con la instrucción correspondiente, que será similar a alguna de las siguientes: sudo modprobe -l raid1 sudo modprobe -l raid0 sudo modprobe -l. ó ó Crear un RAID Este apartado se desarrolla tomando como caso concreto y práctico la creación de un RAID 5 con 4 particiones sobre un pen drive. El procedimiento para crear otro RAID sobre discos duros sería análogo. Los pasos previos a la creación del RAID pueden ser: 1. Para no tener problemas con los permisos ejecuto la instrucción su root que otorga al usuario (usprueba01) los privilegios de root. 2. Compruebo con synaptic que mdadm se encuentra instalado. 3. Compruebo si se encuentra instalado el módulo raid5 mediante la instrucción modprobe -l raid* : Fig 136: Resultado de "modprobe -l raid*" Una vez realizadas las comprobaciones iniciales deben prepararse las particiones a utilizar en el RAID, independientemente de que cada partición ocupe o no la capacidad completa del disco. Por lo general las particiones que componen el RAID ocupan completamente la capacidad del disco. 4. Con gparted se crean 4 particiones primarias de 500 Mb. cada una y sin formatear, puesto que el formato se dará sobre el RAID que se forme. Si gparted no estuviera instalado puede utilizarse la instrucción apt-get install gparted. 5. Hay que declarar que estas 4 particiones van a ser utilizadas para formar un RAID. Esta operación, que se tiene que repetir para las cuatro particiones, se puede realizar con gparted a través de la opción Partición Gestionar flags y marcando el cuadro de verificación raid. Esta operación no es obligatoria pero si recomendable porque ayuda a distinguir las particiones que forman parte de un RAID de las que no. Página.- 325

329 El resultado será similar al de la figura. Fig 137: Pen drive con cuatro particiones para el RAID Puede comprobarse el resultado con la instrucción fdisk -l o fdisk -l /dev/sdb. Fig 138: Instrucción "fdisk -l /dev/sdb" fdisk muestra el flag o la marca de raid como Linux raid autodetect en la columna Sistema y con fd en la columna Id. 6. A continuación crearemos el RAID pero previamente se puede comprobar si ya existe algún RAID activo mostrando el contenido del fichero /proc/mdstat, es decir, realizando la instrucción cat /proc/mdstat. Fig 139: Instrucción "cat /proc/mdstat" Página.- 326

MAX: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Red. Índice de contenidos

MAX: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Red. Índice de contenidos Índice de contenidos 1 INTRODUCCIÓN...7 1.1 Información preliminar...7 1.2 Laboratorio...7 1.2.1 Características del equipo de trabajo...7 1.2.2 Instalación de los sistemas operativos...8 2 INTRODUCCIÓN

Más detalles

CONCEPTOS BÁSICOS DE INFORMÁTICA. REPRESENTACIÓN DE LA INFORMACIÓN.

CONCEPTOS BÁSICOS DE INFORMÁTICA. REPRESENTACIÓN DE LA INFORMACIÓN. INDICE. CONCEPTOS BÁSICOS DE INFORMÁTICA. REPRESENTACIÓN DE LA INFORMACIÓN. TÉRMINOS BÁSICOS DE LA INFORMÁTICA. REPRESENTACIÓN INTERNA DE LA INFORMACIÓN. El SISTEMA BINARIO DE NUMERACION. El sistema decimal

Más detalles

UNIDAD DIDACTICA 14 REQUISITOS PREVIOS PARA CONFIGURAR LINUX UBUNTU SERVER COMO CONTROLADOR DE DOMINIO

UNIDAD DIDACTICA 14 REQUISITOS PREVIOS PARA CONFIGURAR LINUX UBUNTU SERVER COMO CONTROLADOR DE DOMINIO UNIDAD DIDACTICA 14 REQUISITOS PREVIOS PARA CONFIGURAR LINUX UBUNTU SERVER COMO CONTROLADOR DE DOMINIO Eduard Lara 1 1. COMPROBACIONES PREVIAS ANTES DE INSTALAR EL CONTROLADOR Antes de hacer que Linux

Más detalles

Proceso de Clonado por Multicast

Proceso de Clonado por Multicast Proceso de Clonado por Multicast Con el fin de lograr un clonado de imagen de disco lo más homogéneo y rápido se puede recurrir a diversas herramientas, mucha de ellas licenciadas que requieren un costo

Más detalles

Instalación del sistema operativo Microsoft Windows Server 2008 Standard Edition x86

Instalación del sistema operativo Microsoft Windows Server 2008 Standard Edition x86 Instalación del sistema operativo Microsoft Windows Server 2008 Standard Edition x86 1. CONSIDERACIONES PREVIAS Antes de empezar con la instalación vamos a revisar los requerimientos necesarios para poder

Más detalles

1 LA INFORMACION Y SU REPRESENTACION

1 LA INFORMACION Y SU REPRESENTACION 1 LA INFORMACION Y SU REPRESENTACION 1.1 Sistemas de numeración Para empezar a comprender cómo una computadora procesa información, debemos primero entender cómo representar las cantidades. Para poder

Más detalles

Funcionamiento de los dispositivos de un sistema microinformático.

Funcionamiento de los dispositivos de un sistema microinformático. Funcionamiento de los dispositivos de un sistema microinformático. En esta sección nos centraremos en los conceptos más generalizados sobre el disco duro: Las particiones Formatos Sector de arranque Se

Más detalles

Curso de Informática básica

Curso de Informática básica Universidad Rey Juan Carlos Curso de Informática básica Estefanía Martín Barroso Liliana Patricia Santacruz Valencia Laboratorio de Tecnologías de la Información en la Educación Contenidos 2 Bloque 1:

Más detalles

TEMA 1: SISTEMAS INFORMÁTICOS. Parte 2: representación de la información

TEMA 1: SISTEMAS INFORMÁTICOS. Parte 2: representación de la información TEMA 1: SISTEMAS INFORMÁTICOS Parte 2: representación de la información Qué vamos a ver? Cómo se representa y almacena la información en un ordenador Cómo podemos relacionar la información que entendemos

Más detalles

MÁSTER ONLINE EN ADMINISTRACIÓN LINUX

MÁSTER ONLINE EN ADMINISTRACIÓN LINUX MÁSTER ONLINE EN ADMINISTRACIÓN LINUX Módulo 1 Hardware & Arquitectura de sistemas - 20 horas Este módulo permite conocer y configurar los elementos básicos del hardware del sistema, como también otros

Más detalles

Hardware I - Datos e información en el ordenador

Hardware I - Datos e información en el ordenador Hardware I - 1. El tratamiento de la información. Datos e información. Conviene, en primer lugar, diferenciar el significado de los términos datos e información. La información es un concepto muy amplio,

Más detalles

Instalación Windows XP Profesional

Instalación Windows XP Profesional Antes de empezar Instalación Windows XP Microsoft Windows XP Antes de instalar Windows XP, debe completar las siguientes tareas, que se describen a continuación, para asegurar que la instalación será correcta:

Más detalles

Pasos para instalar XUbuntu 14.04 LTS bajo VirtualBox INDICE

Pasos para instalar XUbuntu 14.04 LTS bajo VirtualBox INDICE Pasos para instalar XUbuntu 14.04 LTS bajo VirtualBox Ignacio Alvarez García Septiembre 2014 INDICE Pasos para instalar XUbuntu 14.04 LTS bajo VirtualBox... 1 INDICE... 1 1. Instalación completa... 1 1.1.

Más detalles

Índice. agradecimientos...19

Índice. agradecimientos...19 Índice agradecimientos...19 CAPÍTULO 1. CARACTERIZACIÓN DE SISTEMAS OPERATIVOS...21 1.1 El sistema informático...22 1.1.1 Clasificación de los sistemas informáticos...24 1.2 El sistema operativo... 26

Más detalles

EL ORDENADOR. HARDWARE Y SOFTWARE

EL ORDENADOR. HARDWARE Y SOFTWARE de juegos, etc. EL ORDENADOR. HARDWARE Y SOFTWARE El ordenador es una máquina electrónica utilizada para procesar información a gran velocidad. Es un sistema que recibe, procesa, almacena y presenta la

Más detalles

Unidad 2: El sistema operativo. Trabajo sin conexión.

Unidad 2: El sistema operativo. Trabajo sin conexión. Unidad 2: El sistema operativo. Trabajo sin conexión. Un sistema operativo es un conjunto de programas de control que actúa como intermediario entre el usuario y el hardware de un sistema informático,

Más detalles

Ministerio de Educación, Cultura y Deporte. Aulas en Red. Windows. Módulo 1: Tareas Iniciales. Instalación Servidor

Ministerio de Educación, Cultura y Deporte. Aulas en Red. Windows. Módulo 1: Tareas Iniciales. Instalación Servidor Ministerio de Educación, Cultura y Deporte. Aulas en Red. Windows Módulo 1: Tareas Iniciales. Instalación Servidor Aulas en red. Aplicaciones y servicios. Windows Windows Server 2008 En este apartado de

Más detalles

Backharddi. 1.1. Introducción. 1.2. Cómo obtener Backharddi? MAX 3.1: Madrid_LinuX Manual de Utilización

Backharddi. 1.1. Introducción. 1.2. Cómo obtener Backharddi? MAX 3.1: Madrid_LinuX Manual de Utilización Backharddi Nota: Este manual solamente cubre la creación de imágenes en dispositivos locales, discos duros tanto internos como conectados a un puerto usb. Posteriormente se completará con la posibilidad

Más detalles

TALLER DE TECNOLOGÍAS PARA LA EDUCACIÓN: PerúEduca Guía de Instalación y Configuración para Servidores

TALLER DE TECNOLOGÍAS PARA LA EDUCACIÓN: PerúEduca Guía de Instalación y Configuración para Servidores TALLER DE TECNOLOGÍAS PARA LA EDUCACIÓN: PerúEduca Guía de Instalación y Configuración para Servidores 1 GUÍA DE INSTALACIÓN Y CONFIGURACIÓN PARA SERVIDORES 1. INTRODUCCIÓN El sistema para servidores

Más detalles

TEMA 1. CONCEPTO DE ORDENADOR: ESTRUCTURA Y FUNCIONAMIENTO

TEMA 1. CONCEPTO DE ORDENADOR: ESTRUCTURA Y FUNCIONAMIENTO TEMA 1. CONCEPTO DE ORDENADOR: ESTRUCTURA Y FUNCIONAMIENTO 1.1 Introducción Los ordenadores necesitan para su funcionamiento programas. Sin un programa un ordenador es completamente inútil. Para escribir

Más detalles

Prácticas de Introducción a los Computadores Curso 2000-2001 1 WINDOWS 95

Prácticas de Introducción a los Computadores Curso 2000-2001 1 WINDOWS 95 Prácticas de Introducción a los Computadores Curso 2000-2001 1 Novedades WINDOWS 95 Windows 95 es un sistema operativo orientado a documentos. Permite la asociación de la extensión de cada fichero a un

Más detalles

servidor escuela Introducción Hardware servidor escuela Adicionalmente, se han realizado configuraciones para poder agregar otros recursos:

servidor escuela Introducción Hardware servidor escuela Adicionalmente, se han realizado configuraciones para poder agregar otros recursos: Adicionalmente, se han realizado configuraciones para poder agregar otros recursos: Introducción servidor escuela El sistema para servidores está basado en Fedora 14, un sistema estable y con un entorno

Más detalles

Módulos: Módulo 1. Hardware & Arquitectura de sistemas - 20 Horas

Módulos: Módulo 1. Hardware & Arquitectura de sistemas - 20 Horas Módulos: Módulo 1 Hardware & Arquitectura de sistemas - 20 Horas Este módulo permite conocer y configurar los elementos básicos del hardware del sistema, como también otros componentes adicionales como

Más detalles

Unidad 3: El sistema operativo. Trabajo con conexión.

Unidad 3: El sistema operativo. Trabajo con conexión. Unidad 3: El sistema operativo. Trabajo con conexión. 1.- Red de ordenadores Vamos a describir que es una red informática o red de ordenadores. Una red informática es un sistema de interconexión entre

Más detalles

convenciones usadas...15 capítulo 1. Las novedades de windows 8...17 capítulo 2. Conceptos previos...21

convenciones usadas...15 capítulo 1. Las novedades de windows 8...17 capítulo 2. Conceptos previos...21 índice convenciones usadas...15 capítulo 1. Las novedades de windows 8...17 1.1 Introducción...17 1.2 Novedades...18 capítulo 2. Conceptos previos...21 2.1 Requisitos del sistema windows 8...21 2.1.1 Requisitos

Más detalles

La informática es el conjunto de técnicas y conocimientos necesarios para el tratamiento automático de la información mediante el ordenador.

La informática es el conjunto de técnicas y conocimientos necesarios para el tratamiento automático de la información mediante el ordenador. Qué es la informática? La informática es el conjunto de técnicas y conocimientos necesarios para el tratamiento automático de la información mediante el ordenador. Se llama sistema informático al sistema

Más detalles

TEMA 4: TEORÍA DE LOS ORDENADORES

TEMA 4: TEORÍA DE LOS ORDENADORES TEMA 4: TEORÍA DE LOS ORDENADORES Francisco Raposo Tecnología 3ºESO 1. TEORÍA DE ORDENADORES Llamamos Informática a la ciencia que estudia el tratamiento automático de la información. La herramienta que

Más detalles

Compartir recursos en red bajo Windows XP.

Compartir recursos en red bajo Windows XP. Inicio> SAU> Servicios Conexión a RIUJA Compartir recursos en red bajo Windows XP. 1.- Introducción. 2.- Compartir Archivos en una Red Local. 2.1.- Comprobaciones Iniciales. 2.2.- Compartir Carpetas. 2.2.1.-

Más detalles

Informática y Programación Escuela de Ingenierías Industriales y Civiles Grado en Ingeniería en Ingeniería Química Curso 2010/2011

Informática y Programación Escuela de Ingenierías Industriales y Civiles Grado en Ingeniería en Ingeniería Química Curso 2010/2011 Módulo 1. Fundamentos de Computadores Informática y Programación Escuela de Ingenierías Industriales y Civiles Grado en Ingeniería en Ingeniería Química Curso 2010/2011 1 CONTENIDO Tema 1. Introducción

Más detalles

C.F.G.S. DESARROLLO DE APLICACIONES INFORMÁTICAS

C.F.G.S. DESARROLLO DE APLICACIONES INFORMÁTICAS C.F.G.S. DESARROLLO DE APLICACIONES INFORMÁTICAS MÓDULO: Sistemas Informáticos Multiusuario y en Red Unidad 1 Sistemas Informáticos 1 INDICE DE CONTENIDOS OBJETIVOS... Error! Marcador no definido. 1. INTRODUCCIÓN...

Más detalles

INTRODUCCIÓN...15 TEORÍA...17

INTRODUCCIÓN...15 TEORÍA...17 ÍNDICE INTRODUCCIÓN...15 TEORÍA...17 CAPÍTULO 1. ASPECTOS BÁSICOS...19 1.1 TAREAS DEL ADMINISTRADOR...19 1.2 HARDWARE DEL SERVIDOR...21 1.2.1 CPD...21 1.2.2 Sistema de rack...23 1.2.3 Servidores...24 1.2.4

Más detalles

EXAMEN FINAL. Virtual. P C v i r t u a l

EXAMEN FINAL. Virtual. P C v i r t u a l EXAMEN FINAL Realizar una configuración de una Red LAN, donde la computadora que hará el papel de servidor tenga instalado un software libre y haya una PC real y otra PC virtual. La PC real contara con

Más detalles

Tema 2. La Información y su representación

Tema 2. La Información y su representación Tema 2. La Información y su representación 2.1 Introducción. Un ordenador es una máquina que procesa información. La ejecución de un programa implica la realización de unos tratamientos, según especifica

Más detalles

Unidad de trabajo 2: INFORMÁTICA BÁSICA (primera parte)

Unidad de trabajo 2: INFORMÁTICA BÁSICA (primera parte) Unidad de trabajo 2: INFORMÁTICA BÁSICA (primera parte) Unidad de trabajo 2: INFORMÁTICA BÁSICA... 1 1. Representación interna de datos.... 1 1.2. Sistemas de numeración.... 2 1.3. Aritmética binaria...

Más detalles

ÍNDICE DE CONTENIDOS

ÍNDICE DE CONTENIDOS ÍNDICE DE CONTENIDOS 1. Conceptos generales sobre redes... 1. 2. Elementos básicos de una red. Hardware y Software... 3. 3. Configuración de una LAN. Protocolo TCP IP... 5. 4. Recursos compartidos en una

Más detalles

REDES DE COMPUTADORES Laboratorio

REDES DE COMPUTADORES Laboratorio 1nsloo.cl REDES DE COMPUTADORES Laboratorio Práctica 1: Emulación de redes con NetGUI. 1. OBJETIVOS. El objetivo de esta práctica es aprender a utilizar la herramienta de emulación de redes Netkit / NetGUI,

Más detalles

Guía de instalación de Presto 2015.01 (20/07/2015)

Guía de instalación de Presto 2015.01 (20/07/2015) Guía de instalación de Presto 2015.01 (20/07/2015) Guía de instalación 1 Requisitos del sistema 1 Permisos necesarios 1 Presto 2 Instalación de Presto: Monopuesto 2 Instalación de Presto: Servidor de red

Más detalles

Unidad 0. Preparación del material. Implantación y administración remota y centralizada de Sistemas Operativos. Manuel Morán Vaquero

Unidad 0. Preparación del material. Implantación y administración remota y centralizada de Sistemas Operativos. Manuel Morán Vaquero Unidad 0 Preparación del material Implantación y administración remota y centralizada de Sistemas Operativos Manuel Morán Vaquero mmv@edu.xunta.es http://www.immv.es Contenidos 1 Introducción 2 Máquina

Más detalles

ebox: Servidor de dominio Windows libre y gratuito

ebox: Servidor de dominio Windows libre y gratuito ebox: Servidor de dominio Windows libre y gratuito Guía de instalación y configuración Manuel Morán Vaquero mmv@edu.xunta.es Febrero 2010 Esta guía está basada en la versión 1.2 de ebox Índice 1 Introducción

Más detalles

Índice. agradecimientos...15

Índice. agradecimientos...15 Índice agradecimientos...15 CAPÍTULO 1. LOS SISTEMAS OPERATIVOS EN RED...17 1.1 La Arquitectura cliente/servidor...18 1.2 Características de los sistemas operativos de red... 20 1.2.1 La gestión de los

Más detalles

INSTALACIÓN DE UBUNTU SERVER 12.4 EN MÁQUINA VIRTUAL

INSTALACIÓN DE UBUNTU SERVER 12.4 EN MÁQUINA VIRTUAL INSTALACIÓN DE UBUNTU SERVER 12.4 EN MÁQUINA VIRTUAL Grupo de Innovación y Apropiación de Tecnologías de la Información Archivística Compilador: Pedro Antonio Gómez Guarín 1 INSTALACIÓN DE UBUNTU SERVER

Más detalles

UNIDAD DIDACTICA 2 DOMINIOS EN REDES WINDOWS

UNIDAD DIDACTICA 2 DOMINIOS EN REDES WINDOWS UNIDAD DIDACTICA 2 DOMINIOS EN REDES WINDOWS Eduard Lara 1 1. DEFINICIÓN DE DOMINIO Y SERVICIO DE DIRECTORIO Un dominio de sistemas permite tener centralizada la información administrativa de una red (cuentas

Más detalles

Instalación de un aula LliureX

Instalación de un aula LliureX Instalación de un aula LliureX El objetivo principal del modelo de aula es conseguir que el aula de informática de los centros docentes de la Comunidad Valenciana disponga de todos los recursos necesarios

Más detalles

FUNDAMENTOS DE INFORMATICA

FUNDAMENTOS DE INFORMATICA FUNDAMENTOS DE INFORMATICA TEMAS QUE SE TRATARÁN: Arquitectura Interna Sistemas Operativos Programación en Visual Basic Bases de Datos Redes e Internet 1 FUNDAMENTOS DE INFORMATICA Tema 1: Arquitectura

Más detalles

TEMA II: REPRESENTACIÓN DE LA INFORMACIÓN

TEMA II: REPRESENTACIÓN DE LA INFORMACIÓN TEMA II: REPRESENTACIÓN DE LA INFORMACIÓN 2.1. Introducción. El computador procesa información. Para que un ordenador ejecute unos datos es necesario darle dos tipos de información: las instrucciones que

Más detalles

C.C.. MARÍA A INMACULADA CÁDIZ

C.C.. MARÍA A INMACULADA CÁDIZ . WINDOWS XP 1 2.3 CLASIFICACIONES DE LOS SISTEMAS LOS SISTEMAS SE PUEDEN CLASIFICAR: POR EL NÚMERO N DE USUARIOS. MONOUSUARIO: : SÓLO S SOPORTAN UN USUARIO A LA VEZ, INDEPENDIENTEMENTE DE LA MÁQUINA.

Más detalles

MANUAL DE INSTALACIÓN Y CONFIGURACIÓN PROFESSIONAL WINDOWS XP. Carlos Anchante Soporte y Mantenimiento PROGRAMA HUASCARAN

MANUAL DE INSTALACIÓN Y CONFIGURACIÓN PROFESSIONAL WINDOWS XP. Carlos Anchante Soporte y Mantenimiento PROGRAMA HUASCARAN WINDOWS XP PROFESSIONAL MANUAL DE INSTALACIÓN Y CONFIGURACIÓN Carlos Anchante Soporte y Mantenimiento PROGRAMA HUASCARAN 1 2 Para utilizar Windows XP Professional, es necesario: PC con 300 MHz o superior

Más detalles

I NTRODUCCIÓN 1. ORDENADOR E INFORMÁTICA

I NTRODUCCIÓN 1. ORDENADOR E INFORMÁTICA I. INTRODUCCIÓN 1. ORDENADOR E INFORMÁTICA 1.1. Informática Informática (Información Automática) es la ciencia y la técnica del tratamiento automatizado de la información mediante el uso de ordenadores.

Más detalles

Tema: Instalación de Linux.

Tema: Instalación de Linux. 1 Facultad: Ingeniería Escuela: Electrónica Asignatura: Arquitectura de computadoras Lugar de ejecución: Lab. de arquitectura de computadoras, edif. de electrónica. Tema: Instalación de Linux. Objetivo

Más detalles

Instrucciones de funcionamiento

Instrucciones de funcionamiento Instrucciones de funcionamiento (Para configuración del Document Management System de Panasonic) Digital Imaging Systems Nº de modelo DP-800E / 800P / 806P Instalación Índice de contenido Instalación Instalación

Más detalles

TARJETA ETHERNET Y PROTOCOLO TCP/IP

TARJETA ETHERNET Y PROTOCOLO TCP/IP TARJETA ETHERNET Y PROTOCOLO TCP/IP 1 Introducción 5 2 Preinstalación de la Tarjeta Ethernet 7 2.1 Descripción de la Tarjeta Ethernet para Bus PCI y con salida 10 BaseT 2.2 Montaje de la Tarjeta Ethernet

Más detalles

EJERCICIOS DEL TEMA 1

EJERCICIOS DEL TEMA 1 EJERCICIOS DEL TEMA 1 Introducción a los ordenadores 1) Averigua y escribe el código ASCII correspondiente, tanto en decimal como en binario, a las letras de tu nombre y apellidos. Distinguir entre mayúsculas/minúsculas,

Más detalles

Escritorios Remotos 1. RDP

Escritorios Remotos 1. RDP Escritorios Remotos 1. RDP RDP (Remote Desktop Protocol = Protocolo de Acceso a un Escritorio Remoto) es un protocolo desarrollado por Microsoft que permite manipular, de manera remota, el escritorio de

Más detalles

FAMILIA DE SERVIDORES WINDOWS 2000

FAMILIA DE SERVIDORES WINDOWS 2000 FAMILIA DE SERVIDORES WINDOWS 2000 La familia de servidores Windows 2000 esta formada por tres versiones las cuales son: Server, Advanced y Datacenter; nosotros utilizaremos Server. Server. Esta versión

Más detalles

Sistemas operativos TEMA 2 de tico

Sistemas operativos TEMA 2 de tico 2012 Sistemas operativos TEMA 2 de tico MARILO GARCÍA MARTÍNEZ. MARILÓ GARCÍA MARTÍNEZ para RAIMUNDO RODRÍGUEZ CAMPOS TEMA 2. SISTEMAS OPERATIVOS. INDICE DE CONTENIDOS 1. CONCEPTO DE SISTEMA OPERATIVO

Más detalles

índice CONVENCIONES USADAs...17

índice CONVENCIONES USADAs...17 índice CONVENCIONES USADAs...17 capítulo 1. INSTALAción del servidor...19 1.1 Novedades en Windows Server 2012...19 1.2 La familia de Windows Server 2012...20 1.3 Roles de Windows Server 2012...21 1.4

Más detalles

Thinclients Terminales ligeros con CentOS 5 y Thinstation

Thinclients Terminales ligeros con CentOS 5 y Thinstation Thinclients Terminales ligeros con CentOS 5 y Thinstation Manuel Morán Vaquero mmv@edu.xunta.es Febrero 2010 Índice 1 Introducción Licencia y disclaimer Ventajas y desventajas de los terminales ligeros

Más detalles

Introducción a la informática

Introducción a la informática Introducción a la informática La informática es la ciencia que se ocupa del tratamiento automático de la información usando equipos electrónicos llamados computadores. El tratamiento de la información

Más detalles

Tema 1. Representación de la información MME 2012-20131

Tema 1. Representación de la información MME 2012-20131 Tema 1 Representación de la información 1 Índice Unidad 1.- Representación de la información 1. Informática e información 2. Sistema de numeración 3. Representación interna de la información 2 Informática

Más detalles

Administración de Sistemas Operativos Fecha: 20-09-13

Administración de Sistemas Operativos Fecha: 20-09-13 Página 1 de 19 RESUMEN DE LA PROGRAMACIÓN ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS EN RED CURSO AC. 2012 / 2013 ÁREA / MATERIA / MÓDULO PROFESIONAL Administración de Sistemas Operativos (126 horas 6 h.

Más detalles

FP Gestión, Formación Profesional para el Empleo. Linux OpenSuse 10.2

FP Gestión, Formación Profesional para el Empleo. Linux OpenSuse 10.2 Linux OpenSuse 10.2 Descripción: El curso se divide en tres partes o niveles: básico, avanzado y experto. En la primera parte, el alumno aprende a manejar los dos entornos de usuario más conocidos de Linux

Más detalles

PROCESO DE MAQUETACIÓN DE EQUIPOS DE SIMAVE

PROCESO DE MAQUETACIÓN DE EQUIPOS DE SIMAVE PROCESO DE MAQUETACIÓN DE EQUIPOS DE SIMAVE 1 ANTES DE COMENZAR 2 2 OBTENCIÓN DE DATOS ANTES DE REMAQUETAR EN CASO DE RED CABLEADA 2 3 OBTENCIÓN DE DATOS ANTES DE REMAQUETAR EN CASO DE RED INALÁMBRICA

Más detalles

Guía práctica Ubuntu Francisco Charte Ojeda

Guía práctica Ubuntu Francisco Charte Ojeda Guía práctica Ubuntu Francisco Charte Ojeda Agradecimientos Sobre el autor Introducción Sistemas operativos Selección de un sistema operativo GNU/Linux Ubuntu Cómo usar este libro Estructura de esta guía

Más detalles

SRI UT01 Instalación de WMware Software de máquinas Virtuales Jorge García Delgado. Jorge García Delgado

SRI UT01 Instalación de WMware Software de máquinas Virtuales Jorge García Delgado. Jorge García Delgado SRI UT01 Instalación de WMware Software de máquinas Virtuales SRI UT01 Instalación de WMware Software de máquinas Virtuales INSTALACIÓN DE WMWARE 1. Iniciamos la instalación. 2. Nos sale un asistente,

Más detalles

Manual instalación Windows 8. Instalar Windows 8 paso a paso

Manual instalación Windows 8. Instalar Windows 8 paso a paso Manual instalación Windows 8. Instalar Windows 8 paso a paso Windows 8 es el nuevo sistema operativo de Microsoft, en el cual se han incluido más de 100.000 cambios en el código del sistema operativo,

Más detalles

Descubre gnulinex 1. Capítulo 20. Instalación de gnulinex

Descubre gnulinex 1. Capítulo 20. Instalación de gnulinex Descubre gnulinex 1 Capítulo 20 Instalación de gnulinex 2 Descubre gnulinex Sistemas operativos Generalmente, cuando adquirimos un ordenador, éste nos viene con un sistema operativo instalado. El problema

Más detalles

TEMA 1: EL ORDENADOR. HARDWARE Y SOFTWARE

TEMA 1: EL ORDENADOR. HARDWARE Y SOFTWARE PLACA BASE Departamento de Tecnología. IES Nuestra Señora de la Almudena Mª Jesús Saiz TEMA 1: EL ORDENADOR. HARDWARE Y SOFTWARE El ordenador es una máquina electrónica utilizada para procesar información

Más detalles

2 1.1 2 1.2 2 2. SOFTWARE +... 3 3. COMUNICACIÓN - CONEXIÓN DEL DISPOSITIVO...

2 1.1 2 1.2 2 2. SOFTWARE +... 3 3. COMUNICACIÓN - CONEXIÓN DEL DISPOSITIVO... Manual de software Dynamic Plus Fecha: 03/04/2014 Manual Software Dynamic Plus v2.0.5 ÍNDICE GENERAL 1. INTRODUCCIÓN... 2 1.1 Configuración mínima del PC... 2 1.2 Instalación del Software Dynamic Plus...

Más detalles

SISTEMAS OPERATIVOS EN RED. UT. 05 Utilidades de administración. ÍNDICE

SISTEMAS OPERATIVOS EN RED. UT. 05 Utilidades de administración. ÍNDICE ÍNDICE 1. Perfiles de usuarios. 2.1. Perfiles móviles variables. 2.2. Perfiles obligatorios. 2. Administración de discos. 2.1. Configuraciones de disco. 2.1.1. Discos Básicos. 2.1.2. Discos Dinámicos 2.2.

Más detalles

COMO CREAR UNA RED ENTRE WINDOWS VISTA Y WINDOWS XP

COMO CREAR UNA RED ENTRE WINDOWS VISTA Y WINDOWS XP COMO CREAR UNA RED ENTRE WINDOWS VISTA Y WINDOWS XP 1.- Introducción. 2.- Códigos de color del conector RJ45. 3.- Requisitos del sistema. 4.- Elección de la tarjeta de red. 5.- Instalación del adaptador.

Más detalles

INSTALACIÓN DE ABIES 2 WEB PARA REALIZAR CONSULTAS SÓLO DESDE ORDENADORES DEL CENTRO ESCOLAR...5

INSTALACIÓN DE ABIES 2 WEB PARA REALIZAR CONSULTAS SÓLO DESDE ORDENADORES DEL CENTRO ESCOLAR...5 DE EDUCACIÓN SECRETARÍA DE ESTADO DE EDUCACIÓN Y FORMACIÓN DIRECCIÓN GENERAL DE FORMACIÓN PROFESIONA INSTITUTO DE TECNOLOGÍAS EDUCATIVAS MANUAL DE ABIES 2 WEB CREDITOS: Versión 2.0 Fecha 13/10/2009 Autor/es

Más detalles

6 INSTALA, ADMINISTRA, SECURIZA Y VIRTUALIZA ENTORNOS LINUX RA-MA

6 INSTALA, ADMINISTRA, SECURIZA Y VIRTUALIZA ENTORNOS LINUX RA-MA ÍNDICE PRÓLOGO...13 CAPÍTULO 1. LINUX: UNA VISIÓN GENERAL...15 1.1 QUÉ APORTA ESTE LIBRO SOBRE LINUX...16 1.2 CÓMO COMIENZA LINUX...17 1.3 SISTEMA OPERATIVO LINUX...17 1.4 GNU LINUX, LINUX GNU O LINUX...18

Más detalles

INSTALACIÓN DE MEDPRO

INSTALACIÓN DE MEDPRO 1 Estimado Cliente: Uno de los objetivos que nos hemos marcado con nuestra nueva plataforma de gestión, es que un cliente pueda instalar MedPro y realizar su puesta en marcha de forma autónoma. Siga paso

Más detalles

VIRTUALIZACIÓN: VMWare Workstation

VIRTUALIZACIÓN: VMWare Workstation INDICE Qué es VMWare? Y a mí para qué me sirve VMWare? Si ejecuto un archivo malicioso en la máquina virtual, le ocurrirá algo a mi PC? Qué necesito para poder crear una máquina virtual en VMWare? Instalación

Más detalles

Instalación y configuración Windows 7 y Server2008

Instalación y configuración Windows 7 y Server2008 Instalación y configuración Windows 7 y Server2008 Fidel Navarro Martínez INSTALACION WINDOWS 7 Y WINDOWS SERVER 2008 Contenido 1. Requisitos y Descargas... 4 1.1 Requisitos hardware para la instalación...

Más detalles

PROXY-NAT PARA USUARIOS ADSL DE TELEFÓNICA

PROXY-NAT PARA USUARIOS ADSL DE TELEFÓNICA PROXY-NAT PARA USUARIOS ADSL DE TELEFÓNICA ÍNDICE Aplicación de Introducción14 configuración y redirección de puertos del Proxy-NAT 2 Instalación del Proxy-NAT 8 3.1 Configuración. 2.1 Bienvenida. 2.2

Más detalles

(Objetivo) Curso de Informática Básica. Word 2003. Índice. Word 2003. Conceptos Básicos. Uso avanzado de Word. Universidad Rey Juan Carlos

(Objetivo) Curso de Informática Básica. Word 2003. Índice. Word 2003. Conceptos Básicos. Uso avanzado de Word. Universidad Rey Juan Carlos Universidad Rey Juan Carlos Estefanía Martín Liliana P. Santacruz Laboratorio de Tecnologías de la Información en la Educación 2 Objetivo Entender los conceptos procesador de texto y sistema de tratamiento

Más detalles

Bienvenida. Fiery Network Controller para la DocuColor 250/240

Bienvenida. Fiery Network Controller para la DocuColor 250/240 Fiery Network Controller para la DocuColor 250/240 Bienvenida En este documento, las referencias a la DocuColor 242/252/260 deben ser a la DocuColor 240/250. 2007 Electronics for Imaging, Inc. La información

Más detalles

Desde un punto de vista funcional las componentes de un ordenador se dividen en dos grandes grupos HARDWARE y SOFTWARE.

Desde un punto de vista funcional las componentes de un ordenador se dividen en dos grandes grupos HARDWARE y SOFTWARE. 1. INTRODUCCIÓN... 0 2. EL ORDENADOR. ESTRUCTURA BÁSICA... 0 3. HARDWARE... 0 EL PROCESADOR... 0 LA MEMORIA.... 1 Memoria principal... 1 Memoria secundaria... 1 BUSES, PUERTOS Y RANURAS DE EXPANSIÓN....

Más detalles

UNIDAD DIDACTICA 8 UTILIDADES DE ADMINISTRACIÓN EN REDES WINDOWS CON ACTIVE DIRECTORY

UNIDAD DIDACTICA 8 UTILIDADES DE ADMINISTRACIÓN EN REDES WINDOWS CON ACTIVE DIRECTORY UNIDAD DIDACTICA 8 UTILIDADES DE ADMINISTRACIÓN EN REDES WINDOWS CON ACTIVE DIRECTORY Eduard Lara 1 1. OPTIMIZACIÓN DE LA MEMORIA DEL S. O. EN RED Windows Server utiliza la técnica de paginación y segmentación

Más detalles

Cómo unir un equipo al dominio de las aulas tecnológicas

Cómo unir un equipo al dominio de las aulas tecnológicas Cómo unir un equipo al dominio de las aulas tecnológicas Es requisito indispensable unir el equipo primero en MAX y luego en Windows, si se hace al revés Windows dará un error cuando intentemos iniciar

Más detalles

INTRODUCCION A REDES

INTRODUCCION A REDES INTRODUCCION A REDES Manual Práctico M.A. Mónica Hernández Barrera Profesor ACADEMIA DE INFORMÁTICA Facultad de Contaduría y Ciencias Administrativas Universidad Michoacana de San Nicolás de Hidalgo Practica

Más detalles

AGENDA Curso Integral de Introducción y A dministra ció n a GNU/Linux

AGENDA Curso Integral de Introducción y A dministra ció n a GNU/Linux 2012 AGENDA Curso Integral de Introducción y A dministra ció n a GNU/Linux México, D.F. 27 de enero del 2012 A quien corresponda. Presente. Por medio de la presente nos permitimos hacerte llegar nuestra

Más detalles

Introducción a los sistemas operativos en red. Redes Windows

Introducción a los sistemas operativos en red. Redes Windows Unidad Introducción a los sistemas operativos en red. Redes Windows En esta Unidad aprenderemos a: Y estudiaremos: Realizar el estudio de compatibilidad del sistema informático. Diferenciar los modos de

Más detalles

UNIDAD DIDACTICA 13 INICIAR SESIÓN EN LINUX DE FORMA REMOTA

UNIDAD DIDACTICA 13 INICIAR SESIÓN EN LINUX DE FORMA REMOTA UNIDAD DIDACTICA 13 INICIAR SESIÓN EN LINUX DE FORMA REMOTA Eduard Lara 1 1. INICIO SESIÓN EN LINUX Inicio en modo local Se enciende el equipo y se introduce el nombre de usuario local y su contraseña,

Más detalles

Instituto Tecnológico de Costa Rica Escuela de Ingeniería Electrónica. Programa de Técnico en Mantenimiento de Computadoras. Red Adhoc.

Instituto Tecnológico de Costa Rica Escuela de Ingeniería Electrónica. Programa de Técnico en Mantenimiento de Computadoras. Red Adhoc. Instituto Tecnológico de Costa Rica Escuela de Ingeniería Electrónica. Programa de Técnico en Mantenimiento de Computadoras Red Adhoc. Ver 02_10 Ad hoc es una locución latina que significa literalmente

Más detalles

TEMA 7: Configuraciones básicas en red.

TEMA 7: Configuraciones básicas en red. TEMA 7: Configuraciones básicas en red. Objetivos: Aprendizaje de la configuración de red cableada e inalámbrica en Ubuntu. Conocimiento de la utilización de interfaces de red inalámbricas compatibles

Más detalles

1. Instala servicios de configuración dinámica, describiendo sus características y aplicaciones.

1. Instala servicios de configuración dinámica, describiendo sus características y aplicaciones. Módulo Profesional: Servicios en Red. Código: 0227. Resultados de aprendizaje y criterios de evaluación. 1. Instala servicios de configuración dinámica, describiendo sus características y aplicaciones.

Más detalles

La inscripción sólo se realiza rellenando en Internet la ficha de inscripción:

La inscripción sólo se realiza rellenando en Internet la ficha de inscripción: Nombre: Certified IT Professional: Administración de Sistemas Operativos Nº horas: 280 Nº alum.: 16 Inicio: 19/01/2015 Fin: 21/05/2015 Horario: 9-13h Lugar: ZARAGOZA La inscripción sólo se realiza rellenando

Más detalles

Instalación de Fedora Core 18 junto a Windows 7.

Instalación de Fedora Core 18 junto a Windows 7. Instalación de Fedora Core 18 junto a Windows 7. Antes de nada deberíamos tener en cuenta si tenemos espacio disponible en nuestro disco para poder llevar a cabo la instalación. Habitualmente compramos

Más detalles

El ordenador es un dispositivo electrónico que permite almacenar información, modificarla y generar nueva información.

El ordenador es un dispositivo electrónico que permite almacenar información, modificarla y generar nueva información. 0. INTRODUCCIÓN: El ordenador es un dispositivo electrónico que permite almacenar información, modificarla y generar nueva información. Para llevar a cabo estas operaciones, el ordenador cuenta con una

Más detalles

Que es el CopV? Todo esto y mucho más es posible si utiliza nuestro sistema CopV en la red de su empresa o negocio!!

Que es el CopV? Todo esto y mucho más es posible si utiliza nuestro sistema CopV en la red de su empresa o negocio!! Que es el CopV? El CopV es un software de monitoreo en Redes producido por nuestra empresa, usted puede monitorear desde cualquier PC las actividades de todas las demás computadoras de la red de su empresa

Más detalles

Manual de Usuario. Manual de Instalación Compucaja.Net y SQL Server 2012

Manual de Usuario. Manual de Instalación Compucaja.Net y SQL Server 2012 Manual de Usuario Manual de Instalación Compucaja.Net y SQL Server 2012 Hoja de Contenido Requerimientos mínimos 4 Instalación de COMPUCAJA.net 5 Instalación Microsoft SQL Server 2012 Express 11 Herramientas

Más detalles

Control de presencia para terminal por huella dactilar

Control de presencia para terminal por huella dactilar Manual de software Control de presencia para terminal por huella dactilar Access FP (SOFTWARE PARA LECTOR DE HUELLA DACTILAR SIMON ALERT REF.: 8902003-039 y 8902004-039) (Versión de sofware 1.5) (Versión

Más detalles

PRUEBAS DE ACCESO A CICLOS FORMATIVOS DE GRADO SUPERIOR Convocatoria de 23 de junio de 2005 (Orden de 18 de febrero de 2005, BOA de 05/03/2005)

PRUEBAS DE ACCESO A CICLOS FORMATIVOS DE GRADO SUPERIOR Convocatoria de 23 de junio de 2005 (Orden de 18 de febrero de 2005, BOA de 05/03/2005) DATOS DEL ASPIRANTE Apellidos: Nombre: DNI: I.E.S. CALIFICACIÓN APTO NO APTO PRUEBAS DE ACCESO A CICLOS FORMATIVOS DE GRADO SUPERIOR Convocatoria de 23 de junio de 2005 (Orden de 18 de febrero de 2005,

Más detalles

1.1 Define los siguientes términos: Informática, hardware y software.

1.1 Define los siguientes términos: Informática, hardware y software. I.E.S. "Sierra de San Quílez" BINÉFAR INFORMÁTICA Ejercicios 1 1. Informática 1.1 Define los siguientes términos: Informática, hardware y software. 1.2. Clasifica los siguientes elementos en hardware y

Más detalles

Fundamentos CAPÍTULO 1. Contenido

Fundamentos CAPÍTULO 1. Contenido CAPÍTULO 1 Fundamentos En este capítulo encontrará instrucciones rápidas y sencillas que le permitirán poner manos a la obra de inmediato. Aprenderá también a utilizar la ayuda en pantalla, que le será

Más detalles