Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la...

422
Santiago Alonso (curso 2014-15)

Transcript of Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la...

Page 1: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Santiago Alonso (curso 2014-15)

Page 2: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

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 4.2.2 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 1.5. Utiliza las versiónes 5.0, 6.0, 6.5 de MAX y 12.04 de Ubuntu.

Mejoras más significativas:

- Referencias genéricas a las diferentes versiones de los sistemas operativos utilizados.- Actualización de Grub Legacy a Grub 2.

Versión actual 1.6. Utiliza la versión de Ubuntu 14.04

Mejoras más significativas:

- Incluye el servicio de directorio LDAP.

Mejoras programadas para las próximas revisiones (se admiten colaboraciones):

Page 3: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Índice de contenidos1 INTRODUCCIÓN........................................................................................................8

1.1 Información preliminar.....................................................................................................81.2 Laboratorio.......................................................................................................................8

1.2.1 Características del equipo de trabajo........................................................................81.2.2 Instalación de los sistemas operativos....................................................................10

1.3 Actividades.....................................................................................................................192 INTRODUCCIÓN A LOS SISTEMAS OPERATIVOS..............................................................20

2.1 Aspectos didácticos........................................................................................................202.2 Estructura de un sistema informático.............................................................................21

2.2.1 El componente humano..........................................................................................212.2.2 El componente físico..............................................................................................212.2.3 El componente lógico.............................................................................................222.2.4 Sistemas de codificación........................................................................................24

Sistemas de numeración..............................................................................................24Medidas de la información..........................................................................................27Sistemas de codificación.............................................................................................27Práctica (editor hexadecimal).....................................................................................29

2.3 Arquitectura de un sistema operativo.............................................................................302.4 Funciones de un sistema operativo.................................................................................332.5 Tipos de sistemas operativos..........................................................................................34

2.5.1 Según el número de usuarios..................................................................................34Práctica (acceso remoto mediante ssh).......................................................................34Práctica (acceso remoto mediante VNC)....................................................................36

2.5.2 Según el número de programas o tareas.................................................................392.5.3 Según el número de procesadores..........................................................................39

2.6 Tipos de aplicaciones......................................................................................................402.7 Licencias y tipos de licencias.........................................................................................44

2.7.1 Tipos de licencias....................................................................................................442.7.2 Ventajas del software libre......................................................................................472.7.3 Versiones.................................................................................................................48

2.8 Actividades recomendadas.............................................................................................483 INSTALACIÓN DE SOFTWARE LIBRE Y PROPIETARIO.......................................................49

3.1 Aspectos didácticos........................................................................................................493.2 Consideraciones previas a la instalación de sistemas operativos libres y propietarios. .50

Practica (instalación desatendida de Ubuntu 14.04 Server).......................................533.3 Gestores de arranque......................................................................................................58

3.3.1 Introducción............................................................................................................583.3.2 Estructura del disco duro........................................................................................58

Estructura física..........................................................................................................58Particiones MBR.........................................................................................................60MBR............................................................................................................................61Practica (editar el MBR).............................................................................................64Practica (instalar Ubuntu en un disco con GUID)......................................................68

Página.- 1

Page 4: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Practica (editar la tabla de particiones GUID o GPT)................................................693.3.3 Secuencia de arranque............................................................................................703.3.4 El gestor de arranque GNU GRUB........................................................................71

Instalación de GRUB..................................................................................................77Proteger GRUB con contraseña..................................................................................78Practicas con GRUB...................................................................................................79Cambiar los colores del menú GRUB.........................................................................79Gestión del menú GRUB............................................................................................80Recuperar GRUB 2.....................................................................................................80El shell de GRUB........................................................................................................81Recuperar desde GRUB una contraseña olvidada......................................................81Administración de GRUB desde el entorno gráfico...................................................82

3.4 Instalación de sistemas operativos. Requisitos, versiones y licencias...........................843.4.1 Ubuntu....................................................................................................................843.4.2 Windows Server 2012.............................................................................................86

3.5 Instalación/desinstalación de aplicaciones. Requisitos, versiones y licencias...............87Práctica (instalación de Apache).................................................................................90Práctica (instalación de Google Earth).......................................................................91Práctica (comprobación sobre Microsoft Office)........................................................92

3.6 Actualización de sistemas operativos y aplicaciones.....................................................953.7 Ficheros de inicio del sistema operativo........................................................................97

3.7.1 Niveles de ejecución.............................................................................................1013.7.2 El proceso init en Ubuntu.....................................................................................1033.7.3 Gestión de servicios con sysv-rc-conf..................................................................104

3.8 Registro del sistema......................................................................................................1053.9 Actualización y mantenimiento de controladores de dispositivos................................1053.10 Actividades.................................................................................................................106

4 ADMINISTRACIÓN DE SOFTWARE DE BASE I. USUARIOS LOCALES..................................1074.1 Aspectos didácticos......................................................................................................1074.2 Administración de usuarios locales..............................................................................108

4.2.1 Diseño de cuentas de usuario................................................................................1094.2.2 Ubuntu..................................................................................................................110

Límites a los usuarios................................................................................................112Limitar con cuotas el espacio del disco....................................................................116

4.2.3 Windows Server 2008...........................................................................................1184.3 Usuarios predeterminados............................................................................................1224.4 Seguridad de cuentas de usuario..................................................................................1254.5 Seguridad de contraseñas.............................................................................................1264.6 Administración de perfiles locales de usuario..............................................................1274.7 Gestión centralizada de usuarios..................................................................................132

4.7.1 Compartir carpetas con NFS.................................................................................133Práctica (compartir carpetas con NFS).....................................................................136

4.7.2 Compartir carpetas e impresoras con Samba........................................................139Práctica (Samba: compartir una carpeta modificando /etc/samba/smb.conf)...........141Práctica (Samba: compartir una carpeta usando system-config-samba)...................144Práctica (Samba: compartir una carpeta usando swat).............................................145

Página.- 2

Page 5: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Práctica (Samba: compartir una carpeta usando nautilus-share)..............................1474.7.3 Centralización de la autenticación de usuarios. NIS............................................148

Práctica (instalación de un servidor y un cliente NIS)..............................................1504.8 Actividades...................................................................................................................156

5 ADMINISTRACIÓN DE SOFTWARE DE BASE II. GRUPOS LOCALES....................................1585.1 Aspectos didácticos......................................................................................................1585.2 Administración de grupos locales.................................................................................159

5.2.1 Derechos de usuario..............................................................................................159Derechos en el sistema de archivos..........................................................................160Ampliación de derechos............................................................................................166

5.2.2 Listas de control de acceso...................................................................................168Control de ACL 's desde la línea de comandos.........................................................171Directorios con ACL's predeterminados...................................................................174Evaluación de una ACL............................................................................................177

5.2.3 Gestión de grupos.................................................................................................1785.3 Grupos predeterminados...............................................................................................1815.4 Actividades...................................................................................................................183

6 ADMINISTRACIÓN DE SOFTWARE DE BASE III. CONFIGURACIÓN DE LA RED.....................1846.1 Aspectos didácticos......................................................................................................1846.2 Fundamentos de conexión a redes................................................................................185

6.2.1 Direcciones IP.......................................................................................................1876.2.2 Máscara de (sub)red..............................................................................................188

Práctica (obtención de las características de la red)..................................................194Práctica (direccionamiento IP en la red de casa)......................................................195

6.2.3 Puerta de enlace, pasarela, gateway o enrutador..................................................196Práctica (análisis de tramas)......................................................................................197Práctica (dos subredes con un MaX enrutando).......................................................201

6.3 Configuración de la resolución de nombres.................................................................2056.4 Configuración del protocolo TCP/IP en un cliente de red............................................2066.5 IPv6: la próxima generación de Internet......................................................................208

6.5.1 Ventajas de IPv6...................................................................................................2086.5.2 El sistema de direcciones IPv6.............................................................................2106.5.3 Coexistencia de IPv4 e IPv6.................................................................................2136.5.4 Configuración de IPv6..........................................................................................2146.5.5 Información adicional sobre IPv6.........................................................................215

6.6 Ficheros de configuración de red.................................................................................2166.6.1 Conceptos.............................................................................................................2166.6.2 Ficheros de configuración....................................................................................218

/etc/network/interfaces..............................................................................................218/etc/resolv.conf..........................................................................................................219/etc/hosts...................................................................................................................220/etc/networks.............................................................................................................220/etc/host.conf.............................................................................................................220/etc/nsswitch.conf......................................................................................................221/etc/nscd.conf............................................................................................................223/etc/hostname............................................................................................................223

Página.- 3

Page 6: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

/etc/sysconfig/hardware/hwcfg-*..............................................................................223/etc/sysconfig/network/config, dhcp, wireless..........................................................223/etc/sysconfig/network/routes, ifroute-*...................................................................223

6.6.3 Scripts de arranque...............................................................................................2246.7 Actividades...................................................................................................................225

7 ADMINISTRACIÓN DE LA INFORMACIÓN I..................................................................2267.1 Aspectos didácticos......................................................................................................2267.2 Sistemas de archivos....................................................................................................227

7.2.1 Ext2.......................................................................................................................2287.2.2 Ext3.......................................................................................................................2297.2.3 Conversión de un sistema de archivos Ext2 a Ext3..............................................2307.2.4 Ext4.......................................................................................................................2307.2.5 ReiserFS................................................................................................................2317.2.6 Reiser4..................................................................................................................2327.2.7 JFS........................................................................................................................2337.2.8 XFS.......................................................................................................................2347.2.9 Otros sistemas de archivos soportados.................................................................2357.2.10 Soporte de archivos grandes en Linux................................................................2357.2.11 Información adicional.........................................................................................236

7.3 Estructura de un sistema de archivos...........................................................................2377.4 Gestión de sistemas de archivos desde el entorno gráfico...........................................2387.5 Gestión de sistemas de archivos mediante comandos..................................................2417.6 Estructura de directorios...............................................................................................246

7.6.1 Herramienta gráfica para administrar directorios y ficheros: Nautilus................2467.6.2 Árbol de directorios..............................................................................................2487.6.3 Trabajo con ficheros y carpetas............................................................................250

Propietarios y permisos.............................................................................................250Práctica (permisos sobre los ficheros)......................................................................250Otras operaciones: borrar, seleccionar, copiar, mover, renombrar, etc.....................252Ficheros y carpetas ocultos.......................................................................................253

7.6.4 Gestión de directorios mediante comandos..........................................................253Directorio activo.......................................................................................................253Trayectoria................................................................................................................254Órdenes de gestión de directorios, ficheros y sistemas de archivos.........................255Comodines................................................................................................................261Redireccionamientos.................................................................................................261Filtros........................................................................................................................262

7.7 Gestión de enlaces, links o accesos directos................................................................2627.7.1 Gestión de enlaces desde el entorno gráfico.........................................................2637.7.2 Gestión de enlaces mediante comandos...............................................................263

Enlaces duros............................................................................................................264Enlaces simbólicos....................................................................................................264

7.8 Búsqueda de información del sistema..........................................................................2657.8.1 Herramientas gráficas...........................................................................................265

Administrador de trabajos de impresión...................................................................265Analizador de uso de disco.......................................................................................265

Página.- 4

Page 7: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Buscador de archivos................................................................................................265Aplicaciones al inicio................................................................................................265Comprobación del sistema........................................................................................266Editor de particiones.................................................................................................266Gestor de paquetes Synaptic.....................................................................................266Herramientas de red..................................................................................................266Hora y fecha..............................................................................................................268Monitor del sistema...................................................................................................268Servicios....................................................................................................................268Visor de archivos de sucesos.....................................................................................268

7.8.2 Búsqueda de información desde la línea de comandos........................................2697.9 Actividades...................................................................................................................272

8 ADMINISTRACIÓN DE LA INFORMACIÓN II.................................................................2738.1 Aspectos didácticos......................................................................................................2738.2 Identificación del software instalado mediante herramientas gráficas y comandos... .274

8.2.1 Herramientas gráficas...........................................................................................2748.2.2 Instrucciones de línea de comandos.....................................................................276

8.3 Gestión de la información del sistema.........................................................................2838.3.1 Monitor del sistema..............................................................................................2838.3.2 Instrucciones que muestran información del sistema...........................................288

8.4 Montaje y desmontaje de dispositivos en sistemas operativos. Automatización.........2908.5 Herramientas de administración de discos. Particiones y volúmenes. Desfragmentación y chequeo............................................................................................................................295

8.5.1 Particiones............................................................................................................2958.5.2 Volúmenes.............................................................................................................300

Práctica (volúmenes lógicos)....................................................................................3018.5.3 Desfragmentación y chequeo................................................................................309

8.6 Actividades...................................................................................................................3119 VOLÚMENES Y NIVELES RAID.............................................................................312

9.1 Aspectos didácticos......................................................................................................3129.2 Introducción..................................................................................................................3139.3 Implementación por hardware y por software..............................................................3149.4 Niveles RAID...............................................................................................................315

9.4.1 RAID 0.................................................................................................................3159.4.2 RAID lineal o JBOD (Just a Bunch Of Drivers)..................................................3169.4.3 RAID 1 (disco espejo o mirroring).......................................................................3179.4.4 RAID 2.................................................................................................................3189.4.5 RAID 3.................................................................................................................3199.4.6 RAID 4.................................................................................................................3199.4.7 RAID 5.................................................................................................................3209.4.8 RAID 6.................................................................................................................3229.4.9 RAID 5E y RAID 6E............................................................................................323

9.5 Niveles RAID anidados................................................................................................3239.5.1 RAID 0+1.............................................................................................................3249.5.2 RAID 1+0.............................................................................................................3259.5.3 RAID 30...............................................................................................................325

Página.- 5

Page 8: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

9.5.4 RAID 100.............................................................................................................3269.5.5 RAID 50...............................................................................................................326

9.6 Niveles RAID propietarios...........................................................................................3279.6.1 Paridad doble........................................................................................................3279.6.2 RAID 1.5..............................................................................................................3289.6.3 RAID 7.................................................................................................................3289.6.4 RAID S o RAID de paridad..................................................................................3299.6.5 Matrix RAID.........................................................................................................3299.6.6 Linux MD RAID 10.............................................................................................3299.6.7 IBM ServeRAID 1E.............................................................................................3309.6.8 RAID Z.................................................................................................................330

9.7 Posibilidades de RAID.................................................................................................3319.7.1 Lo que RAID puede hacer....................................................................................3319.7.2 Lo que RAID no puede hacer...............................................................................331

9.8 Software RAID en Ubuntu. El paquete mdadm...........................................................3329.8.1 Instalación y carga de mdadm..............................................................................3329.8.2 Crear un RAID......................................................................................................3339.8.3 Monitorización del estado de un RAID y sus discos (particiones).......................3379.8.4 Administración de un RAID y de sus discos (particiones)...................................3379.8.5 Factores de optimización del sistema de archivos de un RAID...........................3399.8.6 Notas sobre el fichero de configuración...............................................................339

9.9 Actividades...................................................................................................................34010 COPIAS DE SEGURIDAD.......................................................................................341

10.1 Aspectos didácticos....................................................................................................34110.2 Introducción................................................................................................................34210.3 Tipos de copia de seguridad.......................................................................................34210.4 Planificación de las copias de seguridad y recuperaciones........................................34410.5 Restauración...............................................................................................................34710.6 Programas de copia y restauración.............................................................................347

10.6.1 La instrucción tar................................................................................................34710.6.2 Keep....................................................................................................................352

Práctica......................................................................................................................35410.6.3 Sbackup..............................................................................................................35610.6.4 Bacula.................................................................................................................358

Ficheros de configuración.........................................................................................35910.7 Cuotas de disco. Límites, nivel de advertencia y compresión....................................38710.8 Actividades.................................................................................................................389

11 SERVICIO DE DIRECTORIO LDAP.........................................................................39011.1 Aspectos didácticos....................................................................................................39011.2 Introducción................................................................................................................39111.3 Instalación del servicio de directorio LDAP en el servidor........................................39111.4 Instalación y configuración de la autenticación en el cliente.....................................395

ANEXO 1. INSTALACIÓN DE WEBMIN........................................................................398ANEXO 2.- INFORMACIÓN ADICIONAL SOBRE EL SERVICIO NIS........................................399ANEXO 3.- GRUB LEGACY (VERSIÓN 0.97)............................................................405

Página.- 6

Page 9: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

El menú de arranque de GRUB................................................................................408Convención de nombres para discos duros y particiones.........................................409Ejemplo de fichero /boot/grub/menu.lst...................................................................409Modificar las entradas del menú durante el proceso de arranque.............................412Selección del núcleo mediante comodines...............................................................412El archivo /boot/grub/device.map.............................................................................413El shell de GRUB......................................................................................................414Recuperar desde GRUB una contraseña olvidada....................................................414Definir la contraseña de arranque.............................................................................415

ANEXO 4.- RECUPERACIÓN DE GRUB 2 Y WINDOWS................................................417ANEXO 5.- COPIA Y RESTAURACIÓN CON BACKHARDDI................................................418ANEXO 6.- CLONACIÓN DE DISCOS POR MULTICAST CON CLONEZILLA.............................419

Página.- 7

Page 10: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

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 relativoa 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.

Ubuntu puede utilizarse como el sistema operativo libre al que hace referencia elmódulo anterior, y como sistema operativo base que soporte el software necesario de losdemás módulos del Ciclo.

Para la realización de este módulo, el alumno debe tener los siguientes conocimientosprevios:

– Conocer y haber trabajado con alguna versión de Windows de Microsoft.

– Saber realizar tareas de usuario con un sistema operativo libre. Para adquirir estosconocimientos se ha desarrollado la documentación para usuarios de Ubuntu.

Se utilizarán sistemas operativos libres como Ubuntu 14.04 y propietarios deMicrosoft como Windows Server 2012, Windows 7, etc.

Los objetivos y contenidos de esta documentación han sido tomados del B.O.E. de 18 de Noviembre de 2.009.

1.2 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.

1.2.1 Características del equipo de trabajo

El ordenador de trabajo va a contener los siguientes sistemas operativos:

– Ubuntu anfitrión: Será el S.O. principal o anfitrión que va a contener a los demássistemas 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 90para albergar las diferentes máquinas virtuales (se describen a continuación).

Página.- 8

Page 11: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

– Ubuntu invitado para prácticas: actuará como máquina virtual dentro del sistemaanfitrió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.

– Ubuntu invitado como copia de seguridad de la máquina virtual anterior. Cuandodurante la realización de las prácticas se provoque algún deterioro serio en el sistemacorrespondiente, éste será recuperado desde la copia. Ocupará unas 15 GB dentro delas 115 GB de la máquina anfitrión.

– Windows Server invitado para prácticas: actuará como máquina virtual dentro delsistema 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 elsistema correspondiente, éste será recuperado desde la de copia. Ocupará unas 15 GBdentro de las 115 GB de la máquina anfitrión.

– Windows Escritorio invitado para realizar prácticas. No va a disponer de copia deseguridad porque su función va a ser la de cliente sobre el que se realizarán pocasconfiguraciones conflictivas. Ocupará unas 15 GB dentro de las 115 GB de la máquinaanfitrió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 comoservidores en las prácticas tienen su correspondiente copia de seguridad. De esta forma, si lasmáquinas virtuales sufren algún bloqueo o configuración que impida su funcionamientocorrecto, puede recuperarse desde la copia de seguridad.

Por lo tanto, se recomienda que el ordenador donde se realicen las prácticas tenga lassiguientes 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

Page 12: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

1.2.2 Instalación de los sistemas operativos

En primer lugar debe realizarse la instalación del sistema operativo anfitrión. Lostemas 1 (Inicio) y 2 (Instalación) de la documentación del usuario explican exhaustivamentecómo realizar este proceso. Por ser una de las operaciones críticas a realizar debe llevarse acabo con pleno control del proceso, sin dudas, y en el caso de que existan deben ser resueltasantes de proceder en un sentido u otro. De lo contrario pueden producirse pérdidas deinformación.

Una vez instalado Ubuntu 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 lainstalación de las demás máquinas virtuales, siguiendo los siguientes pasos:

– Iniciar una sesión con un usuario con privilegios de administración dado que pararealizar instalaciones así es requerido.

– Descargar el software adecuado. Para ello puede utilizarse cualquier navegador yacceder a la web www.virtualbox.org. Esta página dispone de una opción paradescargas (Downloads) que permite obtener el software de virtualbox (VirtualBoxbinaries) para la plataforma o sistema operativo adecuado.

Se recomienda descargar tanto VirtualBox como el “Extension Pack”. Una vez bajadosquedarán en la carpeta “Descargas” del usuario.

Cuando se elige la plataforma adecuada, en nuestro caso “VirtualBox n.n.nn for Linuxhost”, aparece una ventana que permite elegir la versión de Ubuntu y el hardwaredisponible: 36 bits (i386) o 64 bits (AMD64). También dará opción a instalar elsoftware a la vez que se descarga o a guardarlo para instalarlo después.

Página.- 10

Fig 1: Web de descarga de VirtualBox

Page 13: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Si la conexión a Internet es buena puede instalarse a la vez que se descarga. Si laconexión no es fiable puede descargarse para instalarlo posteriormente.

Vamos a suponer que se descarga y queda en la carpeta del usuario “Descargas”.

– Instalar el software. Basta con ir a la carpeta de descargas y hacer doble click en elpaquete descargado. Se abrirá el Centro de software de Ubuntu y hay que pulsar elbotón “Instalar”. Se solicitará la autenticación del usuario mediante su contraseña. Unavez finalizado el proceso hay que cerrar la ventana. Ya podría ejecutarse VirtualBox.

– Gestionar actualizaciones. Es recomendable incluir la línea:

deb http://download.virtualbox.org/virtualbox/debian trusty contrib

al fichero /etc/apt/sources.list. Esta operación puede hacerse con la instrucción:

sudo gedit /etc/apt/sources.list

A continuación ejecutar la instrucción “sudo apt-get update”.

– Instalar la llave de software seguro mediante la instrucción:

wget -q https://www.virtualbox.org/download/oracle_vbox.asc -O- | sudo apt-key add -

– Descargar e instalar el “Extensión pack”. Al igual que con VirtualBox puede primerodescargarse y después instalarse o instalarse a la vez que se descarga.

– Instalar “Guest Additions” para que las pantallas de la máquina virtual puedanmaximizarse sin problemas. Esta operación hay que realizarla con todas las máquinasvirtuales que se creen. La instalación se realiza arrancando la máquina virtual con unusuario con derechos de administración, a través de la barra de menú de VirtualBox,mediante las opciones: Dispositivos - Insertar imagen de CD de las <<GuestAdditions>>.

Para que las máquinas virtuales puedan ser utilizadas por todos los usuarios, puedecrearse una carpeta fuera de las carpetas de trabajo de los usuarios y que sea accesible paratodos, de la forma:

– Como usuario administrador se crea la carpeta /home/maquinas ejecutando desde unterminal (<Ctrl> + <Alt> + <T>) la instrucción:

sudo mkdir /home/maquinas

Página.- 11

Page 14: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

– Se puede cambiar el propietario y grupo de la carpeta para facilitar su manejo desde elentorno gráfico con:

sudo chown usuario:grupo /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 lospasos:

– Se ejecuta VirtualBox a través del icono correspondiente del Lanzador deaplicaciones.

– Se pulsa sobre el botón “Nueva”.

– En la ventana para la creación de la nueva máquina virtual se introducen los datos:

• Nombre................: Ubuntu_1404_64• Tipo......................: Linux• Version.................: Ubuntu (64 bits)

– Se selecciona como tamaño de la memoria RAM 2048 Mb.

– En la ventana de elección de unidad de disco duro se deja seleccionado “Crear undisco duro virtual ahora”.

– Como tipo de archivo de unidad de disco duro se deja seleccionado “VDI”.

Página.- 12

Fig 2: Crear máquina virtual

Page 15: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

– En la ventana de tipo de almacenamiento del disco duro se selecciona “Reservadodinámicamente” que hace que la ocupación del disco duro virtual que se crea se vayaincrementando según se necesite en vez de ocupar la capacidad total asignada deforma constante y estática desde el momento de su creación.

– En la ventana de ubicación del archivo y tamaño deben configurarse tres datos: elnombre del archivo (Ubuntu_1404_64) la carpeta donde se alojará (/home/maquinas)y el tamaño del disco (20 GB). Hay que observar que la carpeta se elije pulsando sobreel icono situado a la derecha del nombre del fichero. Si no se especifica la carpeta elfichero se alojará en /home/usuario/VirtualBox Vms/nombre_maquina. La selecciónde la capacidad se puede hacer moviendo la pestaña o escribiendo en el cuadro detexto. A continuación se pulsa sobre “Crear” para finalizar la creación de la máquinavirtual.

Así queda creada la máquina virtual y en la ventana de VirtualBox ahora ya semuestran activos los botones “Configuración” e “Iniciar”.

Mediante el botón “Configuración” o pulsando sobre los rótulos en azul de la mediaventana de la derecha, pueden modificarse, entre otros, los valores introducidos durante lacreación. Deben modificarse los siguientes aspectos:

– En la opción “Pantalla” debe ampliarse la memoria de video a 128 MB.

– En la opción “Almacenamiento”, en el “Controlador IDE” debe quedar asignada launidad de DVD del sistema anfitrión o el fichero iso con la imagen del sistemaoperativo. También debe quedar activada la opción “Habilitar paso directo”, así launidad de CD/DVD (o el fichero) podrá ser utilizada como si estuviese conectada a lamáquina virtual (invitada).

Página.- 13

Fig 3: Máquina virtual creada

Page 16: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

– En la opción “Red”, en la lista desplegable “Conectado a” puede quedar asignado“Adaptador puente” para que las máquinas virtuales se conecten a la red como siestuviesen conectadas todas al mismo switch que 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 ared.

• NAT.- VirtualBox se comporta como si fuera un dispositivo capaz de hacer deservidor de DNS, de DHCP y NAT. El sistema invitado deberá configurarse deforma dinámica y será VirtualBox quién le envíe los parámetros deconfiguración. El sistema invitado saldrá a la red a través del interface delanfitrión aunque sus segmentos de red pueden no coincidir. No será visibledesde las otras máquinas virtuales.

• Red NAT.- Los equipos con esta configuración no serán visibles desde elexterior pero, a diferencia del caso anterior, serán visibles entre ellos.

• Adaptador puente.- La tarjeta de red del sistema invitado es la misma que ladel 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áquinasvirtuales que no utilizarán la tarjeta de red del anfitrión.

• Adaptador sólo-anfitrión.- se crea una tarjeta virtual (similar al loopback) en elanfitrión que permitirá la comunicación entre las máquinas virtuales y elsistema anfitrión. No es necesario que el anfitrión disponga de tarjeta de redfísica.

• Controlador genérico.- Permite configuraciones complejas como lacomunicación entre máquinas virtuales en distintos anfitriones.

Página.- 14

Fig 4: Asignación de la unidad de CD/DVD

Page 17: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Para iniciar la instalación del sistema Ubuntu invitado para pruebas basta conintroducir el DVD en la lectora y pulsar sobre el botón “Iniciar”. Durante la instalacióndeberán tenerse en cuenta las consideraciones:

– Una vez que se lanza la ejecución de la máquina virtual, dentro del sistema hay dosmáquinas corriendo, una con el sistema operativo anfitrión y otra con el invitado. Parapasar el control del ratón (y del teclado) a la máquina virtual basta con pulsar sobre laventana de VirtualBox y para devolver el control de los mismos a la máquina anfitriónhay que pulsar la tecla <Ctrl> de la derecha. Esta información aparecerá en la ventanade VirtualBox al iniciar una máquina virtual.

– Durante la instalación del sistema operativo invitado, a la hora de seleccionar lapartición y la capacidad de la partición donde se instalará, hay que tener en cuenta quela máquina virtual creada solamente tiene un disco duro de 20 GB. de capacidad y laopción que deberá elegirse es “Utilizar todo el disco”.

Una vez finalizada la instalación debe probarse el funcionamiento. Al iniciar lamáquina aparecerá en primer lugar la información acerca de la captura del teclado y el ratón, acontinuación el mensaje “Press F12 to select boot device” y a continuación el mensaje “Press'ESC' to enter the menu... 0”. 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: paeUnable to boot – please use a kernel appropiate for your CPU

Página.- 15

Fig 5: Selección de partición

Page 18: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

debe probarse, cuando aparece el mensaje de pulsar la tecla 'ESC' para seleccionar una opcióndel menú, a pulsar dicha tecla y elegir la opción “Ubuntu, kernel n.n.nn-nn-generic”.

Por último, para que esta máquina pueda ser utilizada por los demás usuarios, elusuario usprueba01 debe asignar permisos de lectura y escritura a los usuarios del grupo y alos otros en el fichero /home/maquinas/Ubuntu_1404_64.vdi. Esta operación se realizapulsando con el botón derecho sobre el fichero, eligiendo la opción “Propiedades” y en laficha “Permisos” se realizan las modificaciones pertinentes.

A continuación, para crear el sistema operativo invitado que hará las funciones decopia de seguridad del anteriormente instalado, basta con hacer una copia del ficheroUbuntu_1404_64.vdi como Ubuntu_1404_64_copia.vdi.

La creación de la máquina virtual con Windows 2012 Server se realiza de formaanáloga a la de Ubuntu, utilizando los valores:

– Nombre: W2012Server– Operating system: Microsoft Windows– Versión: Windows 2012– Tamaño memoria base: 2048 MB.– Localización: /home/maquinas/W2012Server.vdi– Capacidad de disco duro: 20 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: W2012xx (siendo xx el nº del ordenador en el aula)– Grupo de trabajo: WORKGROUP

Al lanzar la ejecución de W2012 debe considerarse:

– La pulsación de las teclas <Ctrl> + <Alt> + <Del> solicitadas en el arranque debehacerse a través de la opción “Insertar Ctrl-Alt-Supr” que aparece al seleccionar laopción “Máquina” de la parte superior de la ventana donde está corriendo el sistemaoperativo.

– Dependiendo de la resolución elegida para Windows así será el tamaño de la ventanadonde se ejecuta.

Para hacer la copia de seguridad del sistema instalado se hace una copia del fichero/home/maquinas/W2012Server.vdi como /home/maquinas/W2012Server_copia.vdi.

Página.- 16

Page 19: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Es conveniente poner a prueba los sistemas instalados hasta el momento y el resultadodebe 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 maximizarsecorrectamente deben instalarse algunos complementos para máquinas invitadas. Dichainstalación se realiza de la forma:

– Se inicia una sesión en el sistema operativo de la máquina virtual con un usuario conprivilegios 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 ventanade la propia máquina virtual.

– Se reinicia el sistema operativo y la máquina virtual.

Al cerrar la ventana de la máquina virtual aparecen tres opciones que permitenrespectivamente guardar el estado de la máquina para continuar en el mismo punto en lapróxima ejecución, enviar una señal de apagado que envía una señal de “shutdown” al sistemaoperativo en ejecución y apagar la máquina que equivale a pulsar el botón de apagado delordenador y que no debe utilizarse salvo que previamente se haya guardado el estado de lamáquina y se quiera reiniciar a partir de éste, sin tener en cuenta las últimas modificaciones.

Página.- 17

Fig 6: Máquina anfitrión, dos máquinas invitadas y VirtualBox OSE

Page 20: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

La instalación del sistema operativo Windows Escritorio (p.e. Windows 7) invitado sehace 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.- 18

Page 21: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

1.3 Actividades

1. Realizar las siguientes operaciones en la máquina invitada con sistema operativoMaX:

– 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 servidorde 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 delfichero los parámetros que indican donde se encuentran los ficheros relativos a laconfiguració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ónde 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 creadopara el anterior.

9. Configurar y documentar el programa Gdm para que la pantalla de identificación delusuario muestre un icono por cada usuario que permita su selección para iniciar unasesión.

Página.- 19

Page 22: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

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 abundanteinformación en Internet, con muy diferentes grados de profundización. Puede encontrarsedesde información elaborada en diferentes universidades hasta resúmenes realizados porusuarios nóveles. Se ha procurado hacer una exposición atendiendo al nivel de exigencia deun alumno de un grado superior de FP.

Resumen.

En este tema se explican los elementos que componen un sistema informático: uncomponente humano formado por las personas que intervienen, un componente físicoformado por los ordenadores y sus dispositivos y un componente lógico formado por elsistema operativo y las aplicaciones. Se incluyen apartados que explican la codificación de lainformación por la importancia que en algunos de los temas siguientes adquiere suconocimiento, por ejemplo para conocer el funcionamiento de las direcciones IP y lasmáscaras de red.

Además, explica la arquitectura de un sistema operativo, sus funciones y tiposdependiendo del número de usuarios, programas y procesadores que gestione. También sehace 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.- 20

Page 23: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

2.2 Estructura de un sistema informático

Un Sistema Informático es el conjunto de elementos que permiten realizar untratamiento automático de la información. El tratamiento de la información consiste en larealizació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 depersonas y equipos físicos y lógicos aunque, de una forma más general, se hace referencia alSistema Informático como el ordenador o conjunto de ordenadores, con su equipo lógico.

2.2.1 El componente humano

El componente humano del Sistema Informático lo forman aquellas personas que dealguna forma intervienen en el tratamiento de la información. Dependiendo de la complejidaddel sistema podemos encontrar equipos con personal especializado en la realización defunciones tales como: dirección, diseño, desarrollo, implantación y explotación y otros en losque 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, Analistafuncional u orgánico, Programador, Jefe de explotación, Operador, Grabador, etc.

2.2.2 El componente físico

Es lo que se denomina hardware del Sistema Informático y está formado por losordenadores, los periféricos y el sistema de comunicaciones. Su función es proporcionar lacapacidad de procesar eficientemente la información, facilitar la entrada y salida de datos yposibilitar 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 operacionesprogramadas sobre la información introducida. Su característica más importante es lavelocidad o frecuencia a la que trabajan, que se mide en megahertzios (Mhz). Constade los siguientes elementos:

• Unidad aritmético-logica (UAL).- Se encarga de realizar las operacionesaritméticas y lógicas con los datos.

• Unidad de control (UC).- Controla la ejecución de las instrucciones generandoseñales que indican cuando debe iniciarse una operación, cuando debetransferirse un dato, etc.

Página.- 21

Page 24: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Las dos unidades anteriores forman lo que conocemos como el procesador delordenador. El procesador contiene además unos registros de memoria que lepermiten mantener los últimos datos con los que tiene que operar.

• Memoria central (MC).- También denominada memoria RAM, se encarga dealmacenar los programas y datos con los que está operando el ordenador. Elcontenido de la memoria RAM desaparece cuando el ordenador se apaga,siendo imprescindible transferir previamente su contenido a otros dispositivoso memorias no volátiles (disco duro, DVD, etc).

– Unidad de entrada/salida.- Se encarga de la comunicación de la UCP con las unidadesperifé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 delbus de datos, es decir, el nº de bits que pueden transmitirse a la vez hacia/desde laUCP.

– Unidades periféricas.- Son los dispositivos encargados de introducir la informacióndesde el exterior hacia la unidad de entrada/salida o de recoger la informaciónproveniente de la unidad de entrada/salida. Entre los periféricos más habitualestenemos:

• 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 estosdispositivos según se consideren características como: si sirve para introducir o recogerinformación de la unidad de entrada/salida, tipo de transmisión (en una o las dos direccionesde forma alternativa o a la vez), velocidad, etc.

2.2.3 El componente lógico

Es lo que se denomina software del Sistema Informático y está formado por lossistemas 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 sistemaoperativo. Su función fundamental es la comunicación entre el usuario y los programas con elhardware del ordenador. Controla que los datos del usuario y de los programas se muestren, segraben, se transfieran entre los diferentes dispositivos, etc., de forma correcta.

Página.- 22

Page 25: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Hay varias clasificaciones de los sistemas operativos dependiendo de la característicaque se contemple: según el número de usuarios que lo puedan utilizar a la vez (monousuario omultiusuario), según el número de tareas (mono o multitarea), según el número deprocesadores 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 usuarioutiliza 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 comunicancon los dispositivos hardware a través del sistema operativo. Por ejemplo, en primer lugar seinstala MaX, a continuación se configura la impresora y a partir de ese momento la impresorapodrá 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 poseeunas 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 lasnecesidades que contrata. Por ejemplo, el software de gestión de bolsa que un bancoencarga a una empresa de programación, o la aplicación que una zapatería encarga aun programador para gestionar su contabilidad y su almacén atendiendo a susnecesidades, etc.

Con el desarrollo de los sistemas operativos nos encontramos con que las versionesactuales 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ñanpara manejar un tipo de datos muy concreto, por ejemplo, para escribir un documento debeutilizarse un procesador de textos, para modificar una fotografía un programa de diseñográ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 delos 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 seconservan porque van a ser utilizados en otro proceso posterior. Por ejemplolos datos almacenados en un fichero auxiliar que posteriormente seránordenados y finalmente impresos.

Página.- 23

Page 26: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

• Datos de salida.- son el resultado de la ejecución de algún proceso y que seenvían a un dispositivo de salida. Por ejemplo, la impresión de recibos deconsumo 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, …).

2.2.4 Sistemas de codificación

La forma en que el ordenador almacena el software está condicionada por lascaracterísticas de sus componentes. En concreto, la memoria RAM, las unidades dealmacenamiento masivo, etc. se caracterizan por estar formados por una gran cantidad deelementos biestables, es decir, elementos que únicamente pueden encontrarse en dos estadosdiferentes. 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 únicosestados son: encendida o apagada.

A uno de los dos posibles estados del biestable se le asigna el valor 0 y al otro el valor1. Así, todo el software que interviene en el ordenador (sistema operativo, aplicaciones ydatos) 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 ciertosaspectos de los sistemas de numeración. Un sistema de numeración es un conjunto desímbolos y reglas que se utilizan para representar cantidades. La característica fundamental deun 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ímbolosdiferentes, del 0 al 9.

Las cantidades expresadas en el sistema decimal pueden descomponerse de la forma:

1.529 = 1 * 103 + 5 * 102 + 2 * 101 + 9 * 100

Esta particularidad se produce en todos los sistemas de numeración posicionales, esdecir, aquellos en los que el valor de cada símbolo dentro de una cantidad queda determinadopor su valor absoluto y por la posición que ocupa dentro del conjunto de símbolos con que seexpresa la cantidad.

Página.- 24

Page 27: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

En un sistema de numeración binario (en base 2) solamente pueden utilizarse dossí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 unadescomposición similar a la efectuada con el sistema decimal:

110010(2 = 1 * 25 + 1 * 24 + 0 * 23 + 0 * 22 + 1 * 21 + 0 * 20

Aplicando: 0 * n = 0 y 1 * n = n para todo número n

110010(2 = 25 + 24 + 21 = 32 + 16 + 2 = 50(10

Para trasladar una cantidad de decimal a binario se divide dicha cantidad entre dos y seobtendrá un cociente y un resto. El cociente se vuelve a dividir entre dos y se obtendrá uncociente y un resto. Se repite el proceso hasta que el cociente sea cero. La cantidad en binariose 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 = 110010(2).

En un sistema de numeración hexadecimal (en base 16) se utilizan 16 caracteresdiferentes para expresar las cantidades: 0, 1, …, 9, A, B, C, D, E y F. La forma de contarempezando 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 sehace desde el sistema binario:

AF3(16 = 10(10 * 162(10 + 15(10 * 161

(10 + 3(10 * 160(10 = 10 * 256 + 15 * 16 + 3 = 2.803(10

Página.- 25

Fig 7: Paso de decimal a binario

Page 28: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Para pasar una cantidad de decimal a hexadecimal se utiliza el método de divisionessucesivas utilizando como divisor el 16, tomando los restos de forma inversa a su aparición yteniendo cuidado en cambiar los restos cuyo valor sea 10, 11, 12, 13, 14 o 15 por suscorrespondientes símbolos hexadecimales A, B, C, D, E y F.

En la figura, las divisiones sucesivas entre 16 proporcionan los restos 3, 15 y 10, quecambiados por los caracteres hexadecimales correspondientes se obtiene 3, F y A ytomá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 denumeración anteriores:

DECIMAL BINARIO HEXADECIMAL

0 0 0

1 1 1

2 10 2

3 11 3

4 100 4

5 101 5

6 110 6

7 111 7

8 1000 8

9 1001 9

10 1010 A

11 1011 B

12 1100 C

13 1101 D

14 1110 E

15 1111 F

Por último, para pasar de hexadecimal a binario y viceversa, puede utilizarse elsistema decimal como intermediario, es decir, pasando de un sistema al decimal y despuésdesde el decimal al otro sistema, o bien utilizar el método directo que consiste en sustituircada 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 = 1010 1111 0011(2

Página.- 26

Fig 8: Decimal a hexadecimal

Page 29: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Para pasar de binario a hexadecimal se hacen grupos de cuatro en cuatro dígitos, dederecha a izquierda y a continuación se hace el cambio de cada grupo de dígitos binarios porsu correspondiente en hexadecimal.

Medidas de la información

Por las características de los componentes del ordenador, toda la información que éstemaneja tiene que ser codificada en un sistema binario, a base de ceros y unos. La informaciónmá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 queposeen 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 discosduros las unidades más utilizadas son el Gigabyte y el Terabyte, mientras que para los CD's seutiliza el Megabyte.

Sistemas de codificación

Para codificar la información en formato binario se utilizan diversos métodos, quedependen del tipo de dato a codificar:

– Para las instrucciones se utilizan códigos preestablecidos, de tal forma que a cada unade ellas le corresponde un número determinado de bytes y una secuencia concreta deceros y unos.

– Para codificar datos alfanuméricos el sistema más difundido es el ASCII que consisteen utilizar un byte para codificar cada carácter. Así, el número máximo de caracteres acodificar es de 256, que es el número máximo de combinaciones diferentes de ceros yunos que se pueden formar con 8 bits. Ver figura.

– Para codificar datos numéricos se utilizan varios sistemas. Entre los más difundidos seencuentran:

• Binario puro.- se utilizan 32 bits de los cuales el de más a la izquierda seutiliza para representar el signo, 0 si es positivo y 1 si es negativo, y los 31restantes para representar el valor del número.

Página.- 27

Page 30: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

• Decimal desempaquetado.- se utilizan tantos bytes como dígitos tiene elnúmero decimal a codificar. Cada byte tiene los cuatro bits de la izquierda conunos (1111), se denominan bits de zona, y los cuatro de la derechacorresponden 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 elcuarteto de más a la derecha se codifica el signo, con las mismascombinaciones que para el caso anterior. Se utiliza un número entero de bytesaunque cuando el número de dígitos decimales es par el cuarteto de más a laizquierda lleve el valor “0000”.

• Existen más métodos que permiten, por ejemplo, la codificación de cantidadesen notación científica o coma flotante utilizando 4 bytes (simple precisión) u 8bytes (doble precisión).

Página.- 28

Fig 9: Tabla de caracteres ASCII

Page 31: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Práctica (editor hexadecimal)

Comprobar en qué formato codifica la información el editor de textos gedit haciendouso del Ubuntu. Las pautas a seguir son:

– Iniciar una sesión como usuario usprueba01.– Lanzar la ejecución de VirtualBox OSE.– Iniciar la máquina virtual de Ubuntu y en ella una sesión como usuario administrador.– 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 administrador 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” - “Archivovací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 detextos” (Abrir con – Abrir con otra aplicación... – Editor de textos). Se lanzará laejecución del programa gedit.

– Introducimos la siguiente información:

abcdABCD0123. ; - )

Lo guardamos, cerramos gedit y abrimos el fichero con el editor hexadecimal reciéninstalado (boton derecho – Abrir con – Abrir con otra aplicación... - Bless Hex Editor ). Lainformación que se muestra es la de la figura siguiente:

La interpretación de la información mostrada es la siguiente:

Página.- 29

Fig 10: Editor hexadecimal Bless

Page 32: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

– 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 semuestra en la siguiente columna, expresada en hexadecimal, y comenzando porcero. Así, para la primera fila, el primer byte mostrado es el 0, que enhexadecimal también es 0, el 1º de la siguiente fila es el 17, que enhexadecimal es 11, el 1º de la siguiente sera el 34, que en hexadecimal es 22 yasí sucesivamente.

• El contenido del fichero, codificado en hexadecimal, correspondiéndose cadabyte con dos caracteres hexadecimales. Puede comprobarse que gedit utilizapara 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 secorresponde con un carácter.

– Las siguientes filas muestran el valor de la información contenida en el fichero segúndiferentes tipos de codificación numérica y hexadecimal, decimal, octal, binaria ytexto ascii.

2.3 Arquitectura de un sistema operativo

Sin entrar en detalles, se puede decir que una de las funciones más importantes delsistema operativo es la de hacer de intermediario entre el usuario, las aplicaciones y elhardware:

– 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 através del teclado y la pantalla o del dispositivo oportuno.

– Entre las aplicaciones y el hardware porque las aplicaciones necesitan la entrada osalida 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 elnúcleo, los procesos del S.O., los drivers adaptados a los dispositivos y el interface quepermite al usuario operar con las aplicaciones y con el sistema operativo.

Página.- 30

Page 33: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Hay dos tipos de interfaces:

– De linea de comandos: permiten introducir instrucciones para realizar las tareasoportunas. Como ejemplos tenemos los diferentes shell de Linux o el cmd.exe deWindows.

– 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 interfacegráfico de Windows. A través de estos programas se puede lanzar la ejecución de unaaplicación, instalar el driver de un dispositivo, apagar el ordenador, etc.

El núcleo del sistema operativo comunica y coordina los procesos, que haciendo usode la información de los drivers realizan las operaciones requeridas.

Cuando apretamos el botón de encendido de un ordenador que tiene instalado Ubuntuse 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 quecontienen el núcleo del sistema. Con las instrucciones del núcleo se procede a la cargade una serie de procesos que controlan el conjunto del sistema. Por ejemplo, unproceso controla el reloj del sistema, otro si tiene que leer o grabar en el disco, otrogestiona la memoria RAM, etc.

– Una vez cargados los procesos oportunos se carga la aplicación que hace deintermediaria entre el usuario y el resto del sistema operativo y las aplicaciones, queen este caso puede ser la aplicación que gestiona el escritorio gnome. Aquí seestabilizaría el sistema a la espera de que ocurra algún evento o se realice algunaoperació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ónque controla el escritorio forma parte del sistema operativo o es una aplicación independientepero aquí vamos a tratarla como integrante del sistema operativo porque es el programa quepermite al usuario interactuar con el sistema.

Por otra parte, no se puede hacer una lista de cuales son los procesos que se cargan al

Página.- 31

Fig 11: El sistema operativo

Page 34: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

iniciar el sistema porque aunque existen ciertos procesos básicos que se cargan siempre, otrosse cargarán dependiendo de si en la instalación se ha elegido un tipo de instalación deescritorio, de alumno, de profesor, de servidor de terminales, … Además, después de lainstalación puede configurarse el equipo para que en el inicio lance la ejecución de másprocesos. 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 diferentesprocesos puede ser el siguiente:

Cuando el usuario hace doble click sobre el icono de Firefox del escritorio, gnomedetecta el movimiento del ratón y el doble click y, puesto que conoce los objetos que hay encada coordenada del escritorio, puede deducir el nombre del programa que el usuario quierelanzar. Gnome comunica al núcleo del S.O. que ejecute Firefox. El núcleo comunicará alproceso encargado de la carga de los programas que cargue Firefox.

Página.- 32

Page 35: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

El proceso cargador de programas puede constar de cuatro subprocesos: unoencargado de averiguar la cantidad de memoria RAM necesaria, otro encargado de reservar lamemoria, otro encargado de leer del disco el programa y llevarlo a la memoria y un cuartoencargado de lanzar la ejecución del programa y de comunicar al núcleo que su orden ya se haejecutado.

Los procesos que hacen uso de los dispositivos están adaptados conforme a lasespecificaciones de los drivers de éstos. Por ejemplo, el proceso encargado de la impresiónnecesita 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 sistemaoperativo son las siguientes:

– Administración del procesador.- distribuyendo los tiempos que el procesador o losprocesadores dedican a cada programa en ejecución.

– Gestión de la memoria RAM.- asignando a cada usuario y a cada programa lamemoria 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 discoduro que se utiliza como ampliación de la memoria RAM. El uso de estas memoriashace posible la ejecución de algunos programas aunque sea de forma mucho más lentaque cuando se ejecutan en memoria RAM.

– Gestión de entrada/salida.- permitiendo a los programas el acceso a los dispositivos deentrada/salida de información, a través de los drivers.

– Gestión de ejecución de aplicaciones.- asignando a cada aplicación los recursos dememoria, tiempos de procesador, acceso a dispositivos, etc. necesarios para que laaplicació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 autorizacionesdel usuario.

– Gestión de archivos.- permitiendo la lectura/escritura en el sistema de ficheros acordea las autorizaciones de acceso de los usuarios y aplicaciones.

– Informar acerca de su propio funcionamiento.- registrando las anomalías, avisos eindicadores que permitan diagnosticar el funcionamiento correcto o anómalo delmismo. Ubuntu almacena en la carpeta /var/log ficheros que registran diferenteseventos sucedidos durante el arranque del sistema o ejecución de alguna aplicación.

Página.- 33

Page 36: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

2.5 Tipos de sistemas operativos

Algunas de las características que se pueden tener en consideración a la hora declasificar los sistemas operativos son:

– Número de usuarios.– Número de programas o tareas.– Número de procesadores.– Tiempo de respuesta.

2.5.1 Según el número de usuarios

– Monousuario.- el ordenador con todos sus recursos solamente puede ser utilizado porun usuario. Si otro usuario quiere realizar cualquier operación tiene que esperar a queel anterior termine. Un ejemplo típico es el S.O. Windows 7.

– Multiusuario.- varios usuarios pueden utilizar a la vez el sistema operativo y losrecursos de un ordenador: los programas instalados, el disco duro, la impresora, etc.Un ejemplo es Ubuntu, que permite tener abiertas varias pantallas, en cada una deellas un usuario y utilizando todos el mismo o diferentes programas. También se puedeacceder a Ubuntu desde equipos remotos como si se estuviera trabajando de formalocal.

Práctica (acceso remoto mediante ssh)

Desde la máquina anfitrión de Ubuntu abrir una sesión con ssh (secure shell) en lamáquina invitada de Ubuntu, ejecutando en ambas el programa nano (editor de línea decomando) con el usuario usprueba01. Las pautas a seguir pueden ser:

– Comprobar que en ambas máquinas existe el usuario usprueba01 (administrador).– 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

nano 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] usprueba01@dirección_IP_maquina_invitada

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 por ejemplo gedit.

Página.- 34

Page 37: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

En el fichero /etc/ssh/sshd.conf se pueden establecer las cuentas permitidas y lasdenegadas mediante el parámetro “DenyUsers ...”.

MaX por defecto tiene instalado un ssh gráfico al que se accede a través de la opción“Conectar con el servidor...” del menú Aplicaciones – Lugares, introduciendo la informaciónque se muestra en la siguiente figura:

Página.- 35

Fig 13: ssh gráfico

Fig 12: Conexión de máquina anfitrión a máquina virtual mediante ssh

Page 38: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Práctica (acceso remoto mediante VNC)

Conectar mediante escritorio remoto dos máquinas virtuales con Ubuntu, una servidory otra cliente de VNC. Los pasos a seguir pueden ser las siguientes:

– Ubuntu por defecto trae instalado un programa servidor de vnc llamado vino al que sepuede acceder a través del buscador de aplicaciones mediante las cadenas“compartición de escritorio”, “escritorio”, “vino”, … Al ejecutarlo aparece unaventana que permite configurar las conexiones en el servidor.

– Otro programa servidor de vnc muy utilizado es vnc4server.

– En la máquina cliente puede ejecutarse el programa “Cliente de escritorio remotoRemmina” y configurarse como se muestra en la figura.

Página.- 36

Fig 14: Configurar servidor VNC

Page 39: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Al pulsar sobre el botón “Conectar” se establecerá la conexión con el Escritorio delservidor que podrá ser observado y manipulado desde el cliente como se muestra en la figura.

Desde una máquina con Windows también puede establecerse la conexión con elservidor de VNC. Para ello puede descargarse de internet un programa cliente de VNC (porejemplo de http://www.realvnc.com/cgi-bin/download.cgi) e instalarlo.

Página.- 37

Fig 16: Virtualización del uso del Escritorio remoto

Fig 15: Configuración del cliente de VNC

Page 40: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Al ejecutar el programa habrá que introducir la dirección IP del servidor y la conexiónse realizará de forma similar a lo que muestran las siguientes figuras, donde desde WindowsXP se establece la conexión con un sistema con MaX 5.0.

Además, puede probarse la conexión desde un navegador a través de la dirección:http://direccion_IP:puerto (5900).

Puede ser interesante comprobar que el cliente VNC de Ubuntu (Rommina) tambiénpermite la conexión mediante SSH.

Página.- 38

Fig 17: VNC cliente

Fig 18: VNC cliente conectado al escritorio de VNC servidor

Page 41: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

2.5.2 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 lasdemás deberán esperar a que termine la que se encuentra en ejecución. Cada tareadispone de todos los recursos del sistema para su desarrollo: procesador, memoria,discos, impresora, … Por otra parte, que un sistema operativo sea monotarea no quieredecir que forzosamente tenga que ser monousuario. Un ejemplo típico es el antiguoMS-DOS.

– Multiprogramación o multitarea.- pueden ejecutarse varias tareas a la vez. La CPU seencarga de repartir los tiempos de utilización del procesador entre los programas enejecución. Cada programa individualmente tarda más en ejecutarse puesto que tieneque compartir el procesador con los demás programas pero los beneficios de poderutilizar varios programas simultáneamente y los tiempos medios de espera compensanlos inconvenientes. La práctica totalidad de los sistemas operativos actuales son deeste tipo y estamos acostumbrados a trabajar haciendo uso de varios programas a lavez de forma natural: trabajamos con el procesador de textos a la vez que escuchamosmúsica y consultamos el correo y escaneamos, imprimimos, etc. etc. Por supuestoUbuntu pertenece a este tipo de S.O.

2.5.3 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 esWindows XP.

– Multiproceso.- el sistema operativo puede gestionar varios procesadores. Las formasmás comunes de gestionar los procesadores son bastante intuitivas:

• Se asignan procesos al primer procesador hasta que éste se encuentre al cienpor cien de su rendimiento. Los procesos siguientes se irán asignando alsiguiente procesador y así sucesivamente. Tiene como inconveniente quemientras unos procesadores están trabajando a un ritmo elevado otros puedenestar inutilizados.

Página.- 39

Page 42: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

• Cada programa es ejecutado por todos los procesadores de tal forma que entodo momento intervienen todos los procesadores en la ejecución de todos losprogramas. A este sistema se le denomina multiproceso simétrico. Todos losprocesadores trabajan al mismo rendimiento.

• Cada programa se va asignando a un procesador diferente. Tiene elinconveniente de que los programas más complejos tardarán más en ejecutarseque en un sistema simétrico.

Ubuntu y Windows Server 2012 son ejemplos de sistemas operativos multiproceso.

2.6 Tipos de aplicaciones

Dependiendo de las características que se quieran contemplar puede hacerse un grannúmero de clasificaciones diferentes de las aplicaciones. Los propios sistemas operativoshacen su propia clasificación para permitir el acceso a las diferentes aplicacionesenglobándolas en grupos predeterminados, que a su vez pueden ser modificados.

Ubuntu, si se inicia con el escritorio “Gnome Flashback (Compiz)” presenta un menúde aplicaciones con una distribución como la de la siguiente figura.

Página.- 40

Fig 19: Aplicaciones en Ubuntu

Page 43: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Que es muy similar a la que presenta MaX:

La información actualizada se encuentra en la siguiente dirección:

http://www.educa2.madrid.org/ web/max/documentacion

– Accesorios.- en este apartado se engloban una serie de programas simples, confunciones 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 personascon algún tipo de discapacidad. Por ejemplo:

• Dasher.• Lector de pantalla y magnificador Orca.

– Educación.- contiene programas susceptibles de utilización dentro del aula en diversasasignaturas. Algunos ejemplos son:

• Stellarium.• Marble.• KAlgebra.• Kalzium.• Kgeography.• Etc.

Página.- 41

Fig 20: Aplicaciones

Page 44: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

– 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 lainstalación. Posteriormente, al instalar programas de copia de seguridad, demantenimiento de los discos, etc., se incluirán en este apartado.

– Internet.- aglutina programas que permiten establecer la comunicación con otrosequipos 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 6.5.- permite el acceso a varias fuentes de información del sistema, entre las quese encuentran la Guía de referencia y el Manual de instalación.

– Oficina.- aglutina programas y aplicaciones de uso muy generalizado por la mayoríade los usuarios para preparar textos, presentaciones, datos en forma tabulada, bases dedatos, etc. Entre los más utilizados están:

• OpenOffice.org Procesador de textos.• OpenOffice.org Hojas de cálculo.• OpenOffice.org Presentaciones.• OpenOffice.org Bases de datos.• OpenOffice.org Dibujos.• Etc.

Página.- 42

Page 45: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

– Programación.- engloba una variedad de utilidades que pueden utilizarse comoherramientas para la creación de programas en diferentes lenguajes. Algunos ejemplosson:

• 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 dedispositivos 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 unseguimiento del funcionamiento del sistema. Así, tenemos:

• Apariencia.• Conexiones de red.• 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.

– Y otras opciones relacionadas con programas que permiten abrir y cerrar sesiones,reiniciar el equipo, apagar el sistema, etc.

Página.- 43

Page 46: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

2.7 Licencias y tipos de licencias

Una licencia de software es una forma de contrato mediante la que el titular de losderechos de autor establece las condiciones y términos bajo los que el usuario puede utilizarun determinado programa informático. Puede contener cláusulas y limitaciones respecto a ladistribución, plazos, lugares de uso, etc.

Aunque inicialmente las licencias de software se desarrollaron para limitar el uso delos programas, pueden utilizarse también para garantizar los derechos relativos al softwarelibre. Para que un determinado programa pueda considerarse software libre, es necesariodistribuirlo 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 programasGPL es la obligación de redistribuir bajo la misma licencia cualquier versión modificada delos mismos, a fin de garantizar que todas las mejoras realizadas reviertan de nuevo a lacomunidad 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) comoequivalente a "distribuido bajo GPL". Este tipo de licencias junto a la universalización delacceso a Internet, han conseguido un sorprendente y extraordinariamente eficaz modelo dedesarrollo de programas en el que distintos programadores pueden colaborar entre sí en unmismo proyecto sin importar su situación geográfica.

2.7.1 Tipos de licencias

Existen varios tipos de licencias cuyas diferencias principales dependen de su tipo deCopyleft.

Al contrario que la legislación internacional de copyright, que intenta impedir quealteraciones y copias sean efectuadas sin la autorización del autor, la mayoría de las licenciasusadas en la publicación de software libre permite que los programas sean modificados yredistribuidos.

Las licencias que acompañan al software libre hacen uso de la legislación de copyrightpara impedir la utilización no autorizada, pero estas licencias definen clara y explícitamentelas 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 estaversión de copyright, se le da el nombre de copyleft.

Página.- 44

Page 47: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Existen distintos tipos de Copyleft:

– Copyleft fuerte.- las obras derivadas de un programa no pueden ser enlazadas porprogramas que no sean libres. Esto no prohíbe la acción contraria: que un programacon Copyleft fuerte enlace a un programa privativo.

Su objetivo es no dar ventajas a los desarrolladores de software privativo, ya que estospodrían usar los programas creados para indirectamente privar las libertades de losusuarios, es decir, un programador que desarrolle un programa privativo no podrá usarel código de uno libre para facilitarse el trabajo, así no tendrá la facilidad de privar lalibertad a los demás con código libre (indirectamente).

– Copyleft débil.- las obras derivadas de un programa pueden ser enlazadas porprogramas que no sean libres.

Su objetivo es dejar que programas privativos usen el programa cuando ya existanalternativas gratuitas privativas del mismo programa para facilitar la adopción deprogramas libres.

– Copyleft completo.- permite que todas las partes de un trabajo (excepto la licencia)sean modificadas por sus sucesivos autores.

– Copyleft parcial.- implica que algunas partes del programa original no están expuestasa su modificación ilimitada, o visto de otro modo, que no están completamente sujetasa todos los principios del copyleft.

Una clasificación del software atendiendo al tipo de licencia que posee, de menor amayor grado de libertad, es:

– Software privativo o propietario.- su licencia reserva la mayoría de los derechos demodificación, duplicación y redistribución para el titular de los derechos de propiedadintelectual (el programador o, en ocasiones, el distribuidor). Es el software distribuidobajo una licencia restrictiva que no contempla las libertades del software libre.Generalmente limitan el uso a las especificaciones del contrato y prohíben laredistribución y modificación.

Entre las más conocidas tenemos:

• Windows 8, Windows Server 2012, Windows 7, …• Antivirus de diferentes marcas• Programas ofimáticos como Microsoft Office.• Programas editores de video, música, …

Página.- 45

Page 48: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Dentro de este software pueden encontrarse diferentes subclases de licenciasdependiendo 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 yredistribuido libremente. El término está relacionado con las libertades permitidas alos 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, regalara 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, parausos militares, etc. Es decir, se puede ejecutar el programa con cualquierpropósito (privado, educativo, público, comercial, etc.).

• Modificación.- se puede modificar como se desee, sin estar obligado a pedirpermiso, adaptándolo así a necesidades más específicas. Se puede estudiar ymodificar el código fuente del programa.

• Distribución de versiones modificadas.- si se modifica algo, se puede aportarcon éstas mejoras al programa, y si se separa mucho del programa original sepuede formar un nuevo proyecto bajo los términos de una licencia libre.Mejorar un programa, y hacer públicas las mejoras, redunda en beneficio detoda la comunidad.

La clasificación de licencias según las libertades que ofrecen es una de las másinteresantes aunque la mayor parte de los usuarios se conforman con distinguir entre dostipos: gratuitas y no gratuitas. Existen, además, ciertas matizaciones que es convenienteconocer:

– Adware.- es software gratuito cuya financiación se consigue a través de la publicidadque contienen. Esta publicidad puede ser realmente invasiva, como una barra deherramientas 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.- 46

Page 49: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

– GPL / GNU / OpenSource.- son tipos de licencias muy conocidos en el entorno Linuxque consisten básicamente en programas libres de descargar, usar, distribuir e inclusomodificar puesto que se distribuye su código fuente.

Como ejemplos tenemos diversas distribuciones de Linux y programas como eMule yAres.

– Demo.- es una demostración del software que permite conocer algunas de suscaracterísticas. Algunos ejemplos significativos son las demos de los juegos quepermiten conocer sus características antes de comprarlos.

– Shareware.- es una versión recortada de un programa comercial que permitecomprobar 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 suslimitaciones, 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únmentesuele ser de un mes. Este periodo a veces se amplia o reduce considerablemente. Lalínea que lo separa con respecto a la definición de Shareware es muy estrecha y, dehecho, muchas veces se utiliza una u otra indistintamente para un mismo programa.

2.7.2 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 experienciapermitiendo decidir de forma conjunta las líneas de evolución y desarrollo delsoftware, lo que supone un gran avance tecnológico.

– Independencia del proveedor.- al disponer del código fuente cada usuario puedecontribuir 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 mejoradel producto de forma rápida y eficaz.

– Adaptación del software.- las empresas que necesitan realizar un trabajo específicopueden personalizar el software a un coste muy razonable.

Página.- 47

Page 50: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

– Lenguas.- aunque el software se cree y salga al mercado en una sola lengua latraducción a otras se ve facilitada por la intervención de gran cantidad de usuarios detodas las partes del mundo.

2.7.3 Versiones

Un determinado software puede pasar por diferentes versiones desde que se pone adisposició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 paraque 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 quela versión Beta, que puede convertirse en versión final si se demuestra que sonsuficientemente estables.

– Estable o final.- versión suficientemente probada como para considerarse lista parasu uso. Salvo que se especifique lo contrario, el software se distribuye bajo estaversión.

– Build.- identifica la versión de compilación del programa. Cuanto mayor sea elnúmero más reciente es la versión.

2.8 Actividades recomendadas

1. Buscar en Internet los tipos de procesadores que incorporan los ordenadorespersonales actuales y analizar sus características.

2. Buscar en Internet los tipos y características de las memorias RAM que incorporan losordenadores personales actuales.

3. Buscar en Internet las características fundamentales de los periféricos mássignificativos 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 -3192 en ASCII, en binario puro, en decimal

desempaquetado y en decimal empaquetado. Mostrar la información en hexadecimalhaciendo corresponder cada cuarteto a un carácter hexadecimal.

7. Comprobar la capacidad de memoria virtual (swap) asignada para Ubuntu.8. Teniendo en cuenta las diferentes clasificaciones de los sistemas operativos encuadrar

Ubuntu 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.- 48

Page 51: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

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 Ubuntu 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 interneten las páginas oficiales de MaX, Ubuntu y Microsoft.

En http://en.wikipedia.org/wiki/GUID_Partition_Table y en la versión en español hayinformación sobre el sistema de particionamiento GUID.

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 enhttp://www.gnu.org/software/grub/manual/.

En http://aulavirtual2.educa.madrid.org/file.php/41/Documentos_MAX_3.1/backharddi_local.pdf y en http://backharddi.ideseneca.es hay información acerca de cómorealizar clonados de particiones y de discos duros en MaX.

Resumen.

En este tema se exponen las operaciones fundamentales de instalación ymantenimiento de los sistemas operativos y las aplicaciones. Empieza por analizar lasconsideraciones previas a la instalación del sistema operativo, el programa gestor de arranqueque debe utilizarse dependiendo de los S.O. a instalar; continua con las instalaciones, tanto delos S.O. como de las aplicaciones y finaliza con las actualizaciones y mantenimiento de todoel software instalado, incluidos los controladores de dispositivos.

Se hace un tratamiento exhaustivo del gestos de arranque GRUB.

Temporización: 14 horas.

Página.- 49

Page 52: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

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 delas características hardware mínimas que debe cumplir el equipo en el que se va ainstalar. 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 dehardware 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 elS.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 delos 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 suscaracterísticas permiten el inicio desde cualquier S.O.

Ubuntu incluye en su distribución el gestor de arranque GRUB que permitirá el iniciode cualquier S.O. instalado con anterioridad y del propio Ubuntu.

Página.- 50

Page 53: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Los S.O. Windows incluyen un gestor de arranque que únicamente permiten el iniciodesde otros sistemas Windows. Este gestor de arranque puede dejar inaccesibles otrossistemas instalados que no sean de Microsoft. En el caso de que en el mismo sistemadeban coexistir sistemas operativos de Microsoft y sistemas libres tipo Ubuntu, serecomienda instalar en primer lugar los de Microsoft y al final Ubuntu, puesto queGRUB incluirá opciones para poder arrancar desde cualquiera de ellos.

– Copias de seguridad.- es imprescindible realizar copia de seguridad de los datos de undisco antes de proceder a instalar en él un S.O. La instalación de sistemas operativoses la operación que con más frecuencia produce desastres en la información quepreviamente contenía el disco. Un reparticionamiento erróneo o un problema decompatibilidad 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 decapacidad determinarán el S.O. y las capacidades de las particiones a utilizar. Porejemplo, si se prevé la utilización de un programa grabador de DVD's debe tenerse encuenta que, aunque el programa en sí no necesita prestaciones especiales, la primerafase de la grabación consiste en llevar al disco duro la información del DVD paradespués poder pasarla, en una segunda fase, a un nuevo DVD; con lo cual, elprograma requiere unas 5 GB de espacio libre en disco.

– Particiones diferentes para el sistema y para los datos. Se aconseja tener en particionesdiferentes el S.O. y los datos de los usuarios. Esta disposición facilita la realización decopias de seguridad y, además, en caso de tener que reinstalar el sistema operativo, noes necesario tener que volcar todos los datos a un dispositivo externo y reubicarlosotra vez después de la instalación. El inconveniente es tener que calcular el espacioque 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 elusuario administrador realiza la instalación desde los DVD's del sistema, existencircunstancias que pueden hacer aconsejable el uso de técnicas de instalación mássofisticadas. Un caso típico es la instalación del S.O. en un gran número de equipos.

Página.- 51

Fig 21: Grub 2

Page 54: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Algunas de las técnicas más utilizadas son:

• Utilización de ficheros con la información requerida por el sistema durante lainstalación. Este tipo de instalaciones se llaman desatendidas porque norequieren de la presencia física de un usuario durante la instalación. Lainformación requerida durante la instalación es tomada de un fichero preparadocon antelación. El usuario únicamente inicia el proceso de instalación, quesuele realizarse mediante una instrucción que contiene una opción paraespecificar el fichero que contiene las respuestas.

En https://sites.google.com/site/ssoounattended/proyectos/instalacion-desatendida-de-ubuntu-desktop-14-04-utilizando-kickstart y enhttps://www.youtube.com/watch?v=i2uUIux6_l8 se explican instalacionesdesatendidas de Ubuntu.

• Instalación desde un servidor. El software del sistema operativo se encuentraen un equipo de la red y el usuario solamente necesitará disponer de un sistemade inicio que establezca la comunicación con el servidor de instalaciones. Evitaque los usuarios dañen el soporte donde se encuentra el software original.

En http://romi-jimenez-smr205.blogspot.com.es/2012/11/pasos-realizar-una-instalacion.html hay un ejemplo.

• Duplicación de discos. Como en el caso anterior se necesita disponer de unsistema de inicio del equipo, que se comunicará con un servidor que contendráuna copia de una instalación realizada anteriormente. Esta técnica es muyeficaz cuando los equipos donde se va a realizar la instalación tienen lasmismas características de hardware. La diferencia con el método anterior esque aquí no se produce una instalación real, no se descomprime software ni serealizan comprobaciones de dispositivos, etc, solamente se copian ficheros.

– Versiones Live.- Cuando lo que se necesita es realizar pruebas con el S.O. paracomprobar 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 delsistema y su funcionamiento sin realizar instalaciones en el disco duro. La granventaja es que el S.O. nunca sufre variaciones por estar instalado en el DVD y losinconvenientes fundamentales son su mayor lentitud y que las configuraciones ymodificaciones realizadas sobre los programas y utilidades incluidas en el DVD sepierden al apagar el equipo. Con la instalación en lápiz USB o pendrive, lasconfiguraciones y modificaciones no se perderán. Un ejemplo típico de utilización enel aula es el S.O. Ubuntu que dispone de versiones Live para DVD y pendrive.

– Máquina virtual.- para casos similares al anterior (realización de pruebas) tambiénpuede considerarse la posibilidad de manejar el S.O. en una máquina virtual. Con estemétodo el S.O. se instala en un fichero que puede ser borrado y copiado en cualquiermomento con mayor facilidad que tener que trabajar con particiones.

Página.- 52

Page 55: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Un ejemplo se utiliza en esta documentación como laboratorio de pruebas con variossistemas operativos.

Practica (instalación desatendida de Ubuntu 14.04 Server)

Crear un DVD que contenga la versión de Ubuntu 14.04 Server con un fichero deconfiguración que permita durante la instalación tomar los datos de dicho fichero en vez desolicitarlos al usuario.

Esta práctica se va a realizar en un equipo con Ubuntu 14.04 de Escritorio parapreparar el fichero de configuración y una iso de Ubuntu 14.04 Server que será modificadapara que contenga el fichero creado y realice la instalación desatendida.

– En primer lugar vamos a instalar en la máquina con Ubuntu de Escritorio losprogramas isomaster, que permite administrar isos, y kickstart que permitirá generar elfichero de configuración llamado ks.cfg.

• Se actualiza la lista de paquetes de los repositorios con la instrucción:

sudo apt-get update

• Se instalan isomaster y kickstart:

sudo apt-get install isomaster system-config-kickstart

• Se ejecuta el programa instalado con “system-config-kickstart”. Se producirá unerror como el que se muestra en la figura.

Página.- 53

Fig 22: Error al ejecutar system-config-kickstart

Page 56: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

El problema lo genera el módulo hwdata y puede resolverse desinstalándolo,instalando el módulo adecuado y volviendo a instalar system-config-kickstart conlas instrucciones:

sudo apt-get remove hwdata

sudo wget ftp://mirror.ovh.net/mirrors/ftp.debian.org/debian/pool/main/h/hwdata/hwdata_0.234-1_all.deb (todo en la misma línea).

sudo dpkg -i hwdata_0.234-1_all.deb

sudo apt-get install system-config-kickstart

Ahora ya se ejecutará correctamente la utilidad.

– Se seleccionan los parámetros de configuración adecuados para cada una de lasopciones que aparecen en la parte izquierda de la ventana, y que puede consistir enmodificar las que enumeradas a continuación:

• Configuración básica:

Idioma predeterminado: Spanish (Spain).Teclado.........................: Spanish.Zona horaria.................: Europe / Madrid.Soporte de idiomas.......: Spanish (Spain).

Página.- 54

Fig 23: Kickstart

Page 57: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

• Información de las particiones. Podemos presuponer que disponemos de un discoduro de 20 GB y que vamos a crear dos particiones: una para swap de 2 GB y otrapara el sistema de 18 GB. Para añadir particiones se usa el botón “Añadir” de laparte inferior de la pantalla.

Se puede crear en primer lugar la partición swap con un tamaño fijo de 2048 MB ya continuación la partición del sistema que ocupe el resto del disco (sin tamañofijo).

• Configuración de red. Se añade un dispositivo de red (eth0) que se configurará deforma automática (DHCP).

• User configuration. Debe especificarse un usuario con una contraseña que permitiráiniciar la administración del sistema y utilizar la instrucción “sudo”.

• Configuración de pantalla. Para poder modificar parámetros, hay que marcar elcuadro “Configurar el sistema X Window” que activará las pestañas General,Tarjeta de vídeo y Monitor.

En “General” puede configurarse:

Profundidad de color....................................: 24.Resolución...................................................: 1024 x 768.Iniciar el sistema de X Window al arranque: Activado.

• Script de post-instalación. Dado que la versión de Ubuntu Server no instala pordefecto el entorno gráfico, para que lo haga, en este apartado es conveniente teclearen la caja de texto disponible para teclear script la siguiente instrucción:

apt-get install -y ubuntu-gnome-desktop

– Se guarda el fichero con el nombre /home/usuario/ks.cfg que contendrá los parámetrosa utilizar posteriormente en la instalación. Este fichero puede editarse y modificarsecon gedit.

– Ahora hay que realizar la operación de crear el iso que contenga el fichero deconfiguración creado siguiendo los pasos:

• Llevamos la iso de Ubuntu 14.04 Server a una carpeta conocida, por ejemplo/home/usuario/Escritorio.

• Se abre la iso con el programa isomaster. Para ello se ejecuta el programa isomastery se carga la iso mediante la opción Archivo – Abrir.

Página.- 55

Page 58: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

El programa, además de las opciones de la barra de menús, presenta tres zonasdiferenciadas como muestra la figura:

La superior que muestra la estructura (carpetas y ficheros) del disco duro.La intermedia que mediante botones permite administrar la iso.La inferior que muestra la estructura de la iso.

• Se copia el fichero ks.cfg en el directorio raíz de la iso, para ello se selecciona en lazona de la iso el directorio raíz, se selecciona en la zona de disco el fichero a copiary, por último, se pulsa el botón “Agregar” de la zona de operaciones.

• Se modifica el fichero isolinux/txt.cfg mediante las siguientes operaciones:

Copiar dicho fichero a una carpeta fuera de la iso, por ejemplo al Escritorio. Paraello se selecciona en la zona de disco la carpeta Escritorio, en la zona de iso elfichero txt.cfg de la carpeta isolinux y se pulsa el botón “Extraer”.

Se modifica el fichero extraido para que contenga una nueva sección con lasinstrucciones adecuadas y se modifica la línea que identifica la sección que seutilizará por defecto, donde se establece el nombre del fichero que contiene losparámetros a utilizar en la instalación. Con lo cual las primeras líneas del ficheropueden tener la forma:

default mi_seccionlabel mi_seccion menu label ^Mi instalación desatendida kernel /install/vmlinuz append file=/cdrom/preseed/ubuntu-server.seed initrd=

/install/initrd.gz ks=cdrom:/ks.cfg(el resto se mantiene)

Página.- 56

Fig 24: Isomaster

Page 59: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

A continuación hay que llevar el fichero modificado a la estructura del iso, a lacarpeta isolinux. Para ello hay que eliminar en primer lugar el fichero de la isomediante el botón “Eliminar” y a continuación hay que pasarlo del disco a la isomediante el botón “Agregar”.

• Crear la nueva iso utilizando la opción “Guardar”, especificando el nombredeseado para la iso.

– Solamente falta probar en una máquina virtual que la imagen iso creada funcionacomo se espera, con una intervención mínima por parte del usuario.

Página.- 57

Page 60: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

3.3 Gestores de arranque

3.3.1 Introducción

La función fundamental de los programas gestores de arranque es facilitar la eleccióndel S.O. de inicio del sistema, en aquellos equipos en los que se han instalado varios sistemasoperativos 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 lasdistribuciones de GNU/Linux, y que será el que aquí se analice con más detalle, es eldenominado GNU GRUB.

Para comprender mejor el funcionamiento del gestor de arranque es convenienteconocer en profundidad la estructura de un disco duro y el proceso o las fases del arranque.

3.3.2 Estructura del disco duro

Estructura física

En cuanto a la estructura física, se puede suponer que un disco duro está formado poruna serie de discos con un eje de giro común. Cada disco tiene dos caras (heads), cada caraestá compuesta por una serie de pistas concéntricas (tracks) y cada pista está dividida ensectores. Las caras están numeradas desde la superior (cero) hasta la inferior, las pistas desdela más interna (la cero) hasta la más externa y los sectores desde una marca en adelanteempezando desde el número 1. Un cilindro lo forman las pistas de las dos caras de todos losdiscos que tienen el mismo número de pista, es decir, el cilindro cero está compuesto portodas las pistas número cero.

Página.- 58

Fig 25: Estructura física de un disco duro

Page 61: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

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 unaoperación de lectura/escritura del dispositivo. Un disco duro no puede leer ni grabaruna parte de un sector.

– Una partición debe ocupar un número entero de cilindros. Esta es la razón por la queen algunos sistemas operativos, al crear una partición, se crea con una capacidad unpoco mayor o menor a la especificada por el usuario, puesto que realiza un ajuste auna 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, decabeza y de sector teniendo en cuenta que siempre se empieza a numerar por elcero.

• 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 untotal de 16.000 sectores (64 * 10 * 25), que pueden numerarse del 0 al 15.999.Cada cilindro tendrá 640 sectores y el sector nº 641 será el primer sector de lapista, 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 lastraslaciones 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ísicamenteconstará de dos o cuatro cabezas y, sin embargo, el Editor de particiones muestra lasiguiente información:

Tamaño: 232,88 GiBCabezas: 255Sectores/Pista: 63Cilindros: 30401Sectores totales: 488392065 (1 sector = 512 bytes)

Página.- 59

Page 62: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Particiones MBR

Existen dos tipos de particiones:

– Particiones primarias.- se caracterizan porque el sistema puede arrancar desde ellas sinnecesidad de ningún programa gestor de arranque. Un disco duro puede tener comomáximo 4 particiones primarias.

– Particiones extendidas.- tienen como características fundamentales:

• Para arrancar desde ellas se necesita la ayuda de un programa gestor dearranque.

• En el caso de que exista será única.

• Puede contener unidades lógicas, cuyo funcionamiento es similar al de lasparticiones.

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. Susfunciones fundamentales son:

• Identificar si el disco ha sido particionado.- operación que se realizacomprobando si el valor hexadecimal de los bytes 511 y 512 del MBR es 55AA (particionado) o no.

• Contener la tabla de asignación de particiones.- son los bytes 447 a 510, ambosincluidos. Estos 64 bytes están divididos en 4 elementos (entradas) de 16 bytescada uno. Cada elemento contiene información de una partición. Por esta razónun disco no puede contener más de cuatro particiones.

• Cargar en memoria el pequeño programa o conjunto de instrucciones quedeben ejecutarse a continuación.

– Particiones primarias.- están formadas por:

• Sector de arranque de la partición.- Los primeros 512 bytes de la particióncuya función es cargar en memoria y ejecutar el primer fichero correspondienteal sistema operativo instalado en dicha partición. Si la partición es de datos elsector de arranque estará vacío.

• Área de datos.- donde cada sistema operativo guarda los ficheros atendiendo ala organización que corresponda.

Página.- 60

Page 63: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

– Partición extendida.- destinada a contener las unidades lógicas. Cada unidad lógicacreada estará formada por:

• Una primera entrada de tabla de partición extendida con estructura similar a lasentradas de la tabla de particiones del MBR e información relativa al sector decarga de la propia unidad lógica.

• Una segunda entrada de tabla de partición extendida con información relativa ala 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 losprimeros 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 ycuyo contenido son varias instrucciones en código máquina encargadas de lanzar lacarga y ejecución del cargador de arranque de un sistema operativo concreto o de ungestor 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 contenidohexadecimal el valor 55 AA y determinan el valor para x.

– La tabla de particiones.- con 4 elementos o entradas de 16 bytes cada uno cuyocontenido es el siguiente:

• 1 byte.- indica si la partición es la activa o no y sus posibles valoreshexadecimales serán:

00 (hexadecimal).- Partición no activa.80 (hexadecimal).- Partición activa.

Página.- 61

Page 64: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

• 3 bytes.- Significativos para notación CHS que indican la cabeza, cilindro ysector del primer sector de la partición. Estos 3 bytes se disponen de lasiguiente 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 16.07h.- NTFS.05h.- Extendida.82h.- swap.83h.- Linux.Etc.

• 3 bytes.- Significativos para notación CHS que indican la cabeza, cilindro ysector del ultimo sector de la partición. Estos 3 bytes se disponen de lasiguiente 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 primersector 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. Veamosalgú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: 00 00 00 3F3. Se invierte el orden de los bytes: 3F 00 00 00

Para codificar el valor 209808271. Se pasa el valor decimal a hexadecimal: 20980827(10 = 140245B(16

2. Se utilizan 4 bytes para la codificación: 01 40 24 5B3. Se invierte el orden de los bytes: 5B 24 40 01

• 4 bytes.- Significativos para notación LBA e indican la capacidad de lapartición en sectores. La codificación es igual que en el caso anterior.

Página.- 62

Page 65: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Las capacidades y características de los discos duros actuales han sobrepasado losmá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 = 4.294.967.295 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 eldisco 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 permitatomar el control del disco duro. Existe un MBR estándar, reconocido por la práctica totalidadde sistemas operativos que puede ser restaurado para solventar algunas situaciones de pérdidade 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 errorque corresponda.

2. Comprobar cual es la partición activa. Comprueba qué elemento de la tabla tiene en elprimer byte el valor “80h”.

3. Comprobar si la notación utilizada es CHS o LBA comparando los bytes 6º, 7º y 8º delelemento 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 losbytes 2º, 3º y 4º. Si la notación es LBA se carga el contenido de los bytes 9º, 10º, 11º y12º.

5. Cargar y ejecutar las instrucciones del sector x. Con esta instrucción se cargará elsector de arranque de la partición activa.

Algunos sistemas operativos restauran este MBR con la instrucción “FDISK /MBR”.

Página.- 63

Page 66: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

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 conocidasobre 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 uneditor hexadecimal. Este método es más seguro porque si se realizan modificacionessobre 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. Serecomienda copiar previamente en un fichero el MBR y trabajar con sumo cuidadopara 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.- 64

Page 67: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Particiones GUID (GPT, EFI o UEFI)

Dadas las limitaciones de las especificaciones de BIOS y aunque fue sobre el año 2000cuando aparecen los primeros equipos que incorporan tecnología EFI, no fue hasta julio de2005 cuando se creó la fundación UEFI (Unified Extensible Firmware Interface) paradesarrollar y promocionar la plataforma EFI. El resultado fue la aparición, a principios de2007, de la especificación UEFI versión 2.1.

La EFI comunica el arranque con el MBR y con el nuevo GPT (GUID Partition Tableo tabla de particiones GUID) que presenta, entre otras, las siguientes ventajas:

• Soporta un número ilimitado de particiones (por defecto 128) frente a las 4 del MBR.• Cada partición puede tener una capacidad de 9,4 ZB frente a los 2,2 TB del MBR.• Permite seleccionar y cargar sistemas operativos sin programas gestores de arranque.

Microsoft Windows soporta GPT a partir de las versiones de 64 bits de WindowsVista. Algunos Linux utilizan un híbrido entre MBR y GPT para arrancar.

Debe tenerse presente que para que un ordenador pueda utilizar discos con particiona-miento GUID debe cumplir los requisitos:

• Disponer de sistema EFI (o UEFI) en vez de BIOS.• El sistema operativo debe ser de 64 bits y soportar GUID.• El disco debe estar particionado con GUID (GPT, EFI o UEFI).

La lógica de particionamiento se simplifica al desaparecer los conceptos de particionesprimarias, extendidas, secundarias y unidades lógicas. Solamente hay que tener en cuenta lascapacidades que desean establecerse y que el primer sistema operativo que se instala crea unapartición encargada de gestionar el arranque. La capacidad mínima de esta partición es de 32MB, Windows por defecto la crea con 100 o 200 MB y Ubuntu con 512 MB, que es la opciónmás recomendable ya que grub, si se instala aquí, puede llegar a ocupar bastante espacio.

Con este sistema de particionamiento, cuyo esquema puede verse en wikipedia, eldisco se organiza en tres zonas:

• El MBR para compatibilidad, la cabecera de GPT y la tabla de particionamientoprimaria (GPT Primaria).

• El área de datos de las particiones.

• La tabla de particionamiento secundaria (GPT Secundaria) y la cabecera de la GPTsecundaria.

Página.- 65

Page 68: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

La primera zona puede constar de 34 sectores de 512 bytes (16.384 bytes) en los quese incluyen:

• El MBR de protección y compatibilidad o LBA 0. Ocupa el primer sector del discoque puede ser de 512 bytes (están empezando a utilizarse de 4096 bytes) y su funciónes evitar que utilidades de disco basadas en MBR no reconozcan o dañen discos conparticiones GPT. En este MBR heredado se especifica la existencia de una únicapartición que ocupa todo el disco. El indicador de sistema (System ID) para estapartición es 0xEE, que permite identificar el tipo de particionado. Así, el EFI ignoraeste MBR y los sistemas operativos de 32 bits que no pueden leer discos GPT puedenpresentar el disco como GPT inaccesible.

• La cabecera de la tabla GPT o LBA 1 define los bloques de disco que pueden serutilizados por el usuario y el número (128 por defecto) y tamaño (128 bytes pordefecto) de las entradas de partición que conforman la GPT. También contiene elGUID del disco, su propio tamaño (el de la cabecera) y localización (siempre LBA 1)y la localización de la cabecera y GPT secundaria (siempre en los últimos sectores deldisco). También contiene una suma de comprobación CRC32 de la propia cabecera yde la tabla GPT, que se verifica por los procesos EFI durante el arranque, lo que debetenerse muy en cuenta para no modificar su contenido mediante editoreshexadecimales. Si se modifican estos datos de comprobación EFI sobrescribirá la GPTprimaria con la secundaria y si se modifican ambas con datos inválidos puedeimpedirse el acceso al disco. La distribución de los bytes es la siguiente y debe tenerseen cuenta que se suele utilizar codificación little endian (orden inverso de los bytes):

8 bytes.- firma del disco (“EFI PART”, 45:46:49:20:50:41:52:54 h).4 bytes.- revisión. Para GPT 1.0 hasta 2.3.1 el valor es 00:00:01:00 h.4 bytes.- capacidad de la cabecera. Normalmente 5C:00:00:00 h que indica 92 bytes.4 bytes.- CRC32 de la cabecera.4 bytes.- Reservado. Debe ser cero.8 bytes.- Actual LBA (localización de esta copia de la cabecera. El 2º sector).8 bytes.- Copia de LBA (localización de la copia de la cabecera. El último sector).8 bytes.- Primer LBA usable para las particiones (último LBA de la GPT + 1).8 bytes.- Último LBA usable (primer LBA de la GPT secundaria -1).16 bytes.- GUID del disco.8 bytes.- Inicio de la tabla de LBA's de la GPT (siempre 2 en la primera copia).4 bytes.- Número de entradas de partición en la tabla.4 bytes.- Capacidad de una entrada de partición simple (normalmente 128).4 bytes.- CRC32 de la tabla de particiones.Hasta 512 bytes.- Reservado; debe ser ceros para el resto del bloque (420 bytes de unacapacidad de 512 bytes; pero puede ser mayor con sectores de mayor capacidad).

Esta cabecera ocupa un sector que generalmente será de 512 o 4096 bytes.

Página.- 66

Page 69: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

• La GPT primaria se compone de entradas o bloques de información que describen unaa una todas las particiones. Es típica una distribución de 128 entradas de 128 bytescada entrada para sectores de 512 bytes, lo que permite 4 entradas por sector; peroestos datos, como puede verse, son configurables en la cabecera de la tabla.

Para un disco con sectores de 512 bytes la tabla ocuparía 32 sectores, desde el LBA 2al LBA 33 (4 entradas por sector). Para discos de 4096 bytes pueden establecersedistinto número de entradas y distinta extensión de las mismas, con lo cualseguramente ya no habría 4 entradas por sector y podría darse el caso de que un sectortuviera información de un número no entero de entradas.

Para entradas de 128 bytes la distribución sería la siguiente:

16 bytes.- tipo de partición GUID. Por ejemplo para un sistema EFI será:

28:73:2A:C1 1F:F8 D2:11 BA:4B 00:A0:C9:3E:C9:3B

16 bytes.- identificador único de GUID.

8 bytes.- número de primer sector de la partición (con los bytes invertidos).

8 bytes.- número del último sector de la partición (incluido, generalmente impar).

8 bytes.- atributos. Se distribuyen de la forma:

bit 0.- partición del sistema. Las utilidades de disco no la deben modificar.bit 1.- indica si el firmware EFI debe ignorarla, ni intentar leerla.bit 2.- indica si es arrancable desde una BIOS Legacy (valor 1).bits 3 a 47 (45 bits).- reservados para uso futuro.bits 48 a 63.- definidos por cada tipo de partición. Por ejemplo Microsoft utiliza elbit 60 para especificar solo-lectura, el 62 oculta y el 63 no montar automáticamente.

Direcciones de consulta interesantes son:

http://en.wikipedia.org/wiki/GUID_Partition_Table

h ttp://t13.org./documents/UploadedDocuments/docs2010/e09127r3-EDD-4_Hybrid_MBR_boot_code_annex.pdf

La segunda zona está formada por las particiones del disco. La diferencia fundamentalcon las definidas en MBR es que su capacidad puede ser mucho mayor.

La tercera zona o GPT secundaria contiene una copia de la primaria en orden inverso.

Página.- 67

Page 70: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Practica (instalar Ubuntu en un disco con GUID)

Instalar Ubuntu en un disco particionado con el sistema GUID. Para que todo funcionecorrectamente deben seguirse ciertas pautas:

• Crear la máquina virtual y configurarla habilitando EFI en la opción Sistema.

• Antes de proceder a la instalación debe iniciarse la máquina virtual desde el DVD deUbuntu y crear la tabla de particiones de tipo GPT con Gparted. Si no se hace estaoperación, el instalador de Ubuntu por defecto creará una tabla de particiones de tipoMBR.

• Instalar Ubuntu. Si se particiona el disco manualmente debe crearse una primerapartición de 512 MB de tipo boot efi y a continuación las demás a gusto del usuario.

La instalación creará en la partición de arranque un directorio EFI y dentro de éste otrode nombre ubuntu con varios ficheros. Esta estructura no consigue iniciar el equipo yen su lugar se lanza la ejecución de la shell 2.0 de UEFI.

Para que la máquina se inicie debe crearse en la partición de arranque, en la carpetaEFI, una subcarpeta de nombre “boot” donde deberá copiarse el fichero grubx64.efi deEFI/ubuntu con nombre bootx64.efi. Para ello pueden seguirse los siguientes pasos:

• Iniciar la máquina con un iso de Ubuntu y abrir un terminal.• Crear un directorio para montar /dev/sda1:

cd /mediasudo mkdir sda1

• Montar la partición:sudo mount /dev/sda1 sda1

• Crear la carpeta boot en EFI:cd sda1/EFIsudo mkdir boot

• Copiar el fichero mencionado con el nombre adecuado:sudo cp ubuntu/grubx64.efi boot/bootx64.efi

Con estas últimas modificaciones la máquina virtual debería iniciarse correctamente.

La partición de arranque /dev/sda1 quedará montada en /boot/efi en el sistema dearchivos de Ubuntu.

Página.- 68

Page 71: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Practica (editar la tabla de particiones GUID o GPT)

Añadir un disco duro de 2 TB a una máquina virtual y crear en él dos particiones, unade 512 MB como partición boot y otra con el resto de tipo FAT 16, editar la tabla departiciones e identificar byte a byte su contenido.

Una vez creado el disco la primera operación es crear la tabla de particiones de tipoGPT (con gparted por ejemplo).

A continuación puede crearse la primera partición con las características:

• Sistema de archivos: FAT 32.• Etiqueta: boot.• Tamaño: 512 MB.• Opciones: boot.

La segunda partición puede tener:

• Sistema de archivos: FAT 16.• Etiqueta: DATOS.• Tamaño: el resto.

Para editar el contenido de /dev/sdb puede utilizarse el editor hexadecimal hexedit mediante la instrucción: sudo hexedit /dev/sdb.

Página.- 69

Page 72: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

3.3.3 Secuencia de arranque

La secuencia de arranque del equipo difiere según que el dispositivo de inicio sea unou otro. Se va a considerar el arranque desde el disco duro por ser de los de mayor grado decomplejidad derivada de la existencia de particiones o volúmenes, inexistentes en otrosdispositivos.

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) ola EFI (Extensible Firmware Interface) inician la pantalla y el teclado y comprueban lamemoria RAM. A continuación se lee la hora, la fecha y los datos de los periféricosmás importantes de los valores que se encuentran en la CMOS (CMOS Setup). Entrelos datos leídos se encuentra el orden de arranque de los periféricos, es decir, el ordenen que se probará si se puede arrancar desde el periférico.

La última operación que realiza la BIOS o la EFI es la carga en memoria del MBR olos módulos de arranque de la partición de arranque de EFI, respectivamente.

2. Se ejecutan las instrucciones del MBR o de los módulos de carga cuyo resultado finales 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 debenrealizarse a continuación y cederle el control. La EFI realiza las funciones de la BIOSy del MBR juntos.

Si se trata del MBR estándar, cargará en memoria el contenido del sector de arranquede la partición activa, que será el cargador de arranque del sistema operativo que seencuentre en la partición.

Si se trata del MBR gestionado por GRUB 2, el contenido del MBR se conoce comoboot.img, no tiene en cuenta la tabla de particiones y su única función es cargar elnúcleo de grub, también llamado core.img; ambos ficheros se encuentran en/boot/grub/i386-pc. Para sistemas efi los módulos pueden ser otros y encontrarse en,por ejemplo, /boot/grub/x86_64-efi.

3. Es conveniente diferenciar dos tipos de gestor de arranque:

Si el gestor de arranque no es multiarranque, es decir, solamente se encarga de lanzarla ejecución de un único sistema operativo, su función es cargar en memoria el ficheroque inicia la carga del sistema operativo y cederle el control. Más que un gestor dearranque sería un cargador de arranque. Un ejemplo típico es un equipo que tiene unsistema operativo Windows Server 2012 que ocupa todo el disco duro. En este caso, elsector de arranque de la única partición contiene las instrucciones que realizan la cargadel primer fichero del núcleo de Windows que tomará el control.

Página.- 70

Page 73: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Si el gestor de arranque es multiarranque (permite el inicio de varios S.O.) mostrará unmenú de opciones que permita al usuario elegir el S.O. a iniciar. Una vez elegida laopción transferirá el control al sector de arranque de una partición o a un fichero queserá el primero en cargarse del S.O.

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 opcionesy en el caso de seleccionar la partición de Windows, transferirá el control al sector dearranque de la partición que contiene Windows, que a su vez cargará el primer ficherodel S.O., y en el caso de que se seleccione Linux se transferirá el control a losprimeros 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 lacarga de los demás procesos del sistema operativo hasta quedar listo para el inicio desesión por parte del usuario.

5. Por lo general, el sistema operativo solicita un nombre de usuario y contraseña. Siambos son correctos permite la entrada y si alguno de los dos no es válido se solicitala identificación completa.

3.3.4 El gestor de arranque GNU GRUB

Según lo expuesto anteriormente, las etapas de la secuencia de arranque relativas algestor de arranque son las número 2 y 3, desde que la BIOS carga en memoria el MBR hastaque el gestor de arranque carga el primer fichero del sistema operativo y le cede el control delsistema.

Una de las funciones más importantes del gestor de arranque es mostrar al usuario losdiferentes sistemas operativos del equipo y permitirle que seleccione en cual arrancar.

Existen varios programas gestores de arranque siendo uno de los más conocidos eldenominado GNU GRUB (Grand Unified Bootloader), que se instala de forma automáticacon la mayor parte de los S.O. Linux, presentando opciones que permiten el inicio de todotipo de sistemas operativos que se detecten en el disco duro. En el caso de que se vayan ainstalar sistemas operativos de Microsoft y Linux en el mismo equipo, se recomienda instalaren primer lugar los de Microsoft y posteriormente los Linux, respetando además el orden deantigüedad de los mismos.

La primera versión que apareció se denominó GRUB Legacy y la que se instalaactualmente (a parir de MaX 6.0 y Ubuntu 9.10) es GRUB 2. En un anexo de este manual hayuna descripción detallada de GRUB Legacy.

GRUB 2 no supone una ampliación o modificación de GRUB Legacy sino que es uncódigo completamente reescrito que aporta mayor flexibilidad y funcionalidad. En ladirección https://help.ubuntu.com/community/Grub2 se encuentra la documentación oficial deeste software.

Página.- 71

Page 74: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Para comprobar la versión instalada de GRUB puede utilizarse la instrucción:

grub-install -v (No funciona para EFI)

que mostrará una línea de información parecida a:

grub-install (GRUB) 1.99-21ubuntu3.4

Para saber en qué dispositivo y el UUID del mismo donde se encuentra instaladoGRUB 2, pueden ejecutarse las instrucciones:

El dispositivo: sudo grub-probe -t device /boot/grubEl UUID: sudo grub-probe -t fs_uuid /boot/grub

Por defecto, el menú de opciones mostrado por GRUB tendrá como primera opción lacorrespondiente 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 sonutilizados 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 a cabo en el fichero /boot/grub/grub.cfg que seconstruye a partir de la información contenida en otros ficheros, así como con las entradas deldirectorio /boot y los MBR's de otros discos; estos dos últimos lugares contienen informaciónsobre 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 ordenascendente del nombre.

3. A partir de la información obtenida en los dos pasos anteriores genera el fichero deconfiguración /etc/grub/grub.cfg que se cargará para mostrar el menú de arranque.

Página.- 72

Page 75: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Para modificar algún aspecto u opción del arranque de grub no se debe editar elfichero /boot/grub/grub.cfg puesto que éste se genera automáticamente. Los ficheros quepueden ser modificados son /etc/default/grub y los scripts de /etc/grub.d. Para que estasmodificaciones queden reflejadas instantáneamente en el fichero /boot/grub/grub.cfg hay queejecutar la instrucción:

update-grub2

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 adicionalesque podrían incluirse que hacen referencia por ejemplo al fondo de pantalla, tema, etc. Lasvariables predefinidas que pueden usarse se encuentran en el fichero /usr/sbin/grub-mkconfigy 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 quepodrá utilizar en los scripts de /boot/grub.d.

Para editar el fichero puede utilizarse el editor Gedit, el comando “gksu” que es elequivalente gráfico de “sudo” y “&” que permite que se utilice el terminal para regrabarGRUB 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 seencuentra una explicación bastante exhaustiva de los parámetros más utilizados. Acontinuación hacemos un resumen:

– GRUB_DEFAULT={ n | “n>m” | “cadena” | saved } .- permite especificar el númerode la opción de arranque por defecto, la opción y subopción, la descripción del sistemao el último sistema utilizado. Si se expecifica un número debe tenerse en cuenta que laprimera opción (o subopción) es la 0.

– GRUB_SAVEDEFAULT={true | false } .- con el valor true establece como valorpredeterminado el elegido en el arranque anterior. Necesita la especificación del valor“saved” para el parámetro anterior.

Página.- 73

Page 76: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

– 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.

– GRUB_DISTRIBUTOR= lsb_release -i -s 2 > /dev/null || echo Debian .- recuperael nombre descriptivo de la entrada de menú.

– GRUB_CMDLINE_LINUX_DEFAULT=”quiet splash” .- “quiet” sirve para agruparlas entradas similares y “splash” para que se muestre una imagen de carga en vez delos 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 ydeben utilizar valores soportados por la tarjeta gráfica. Puede visualizarse laresolucion aceptada por GRUB 2 mediante el comando “vbeinfo” en la línea decomandos 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 delmenú.

– GRUB_INIT_TUNE=”480 440 1” .- 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 sistemasoperativos 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ónde las diferentes opciones del menú de inicio.

Página.- 74

Page 77: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

– Para agregar entradas al menú pueden añadirse al fichero 40_custom o en un ficheronuevo. Teniendo en cuenta el nombre, las entradas de 40_custom aparecerán al finaldel menú.

– Solamente los ficheros ejecutables pueden generar salidas para /boot/grub/grub.cfgdurante la ejecución de “update-grub”.

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 deficheros del sistema, configuraciones de vídeo, etc. Por lo general los usuarios nonecesitan 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 sevisualiza una entrada para la última versión de núcleo. Para reducir el número denúcleos visualizados pueden borrarse las versiones más antiguas del directorio /boot outilizar algún programa de optimización de GRUB 2.

– 20_memtest86+ .- Busca el fichero /boot/memtest86+.bin e incluye la opcióncorrespondiente 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 llevael 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ánlos nombres pudiendo ser modificadas por los usuarios. Para deshabilitar este scriptpuede introducirse una entrada en el fichero /etc/default/grub o anular su permiso deejecució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 ficherose incorporarán a grub.cfg sin cambios.

– En el caso de que se incluyan ficheros ejecutables en el directorio, sus nombres debenpermitir que en primer lugar se ejecuten 00_header y 05_debian_theme.

Se recuerda que en http://www.gnu.org/software/grub/manual/ hay manualescompletos de GRUB 2.

Página.- 75

Page 78: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Ficheros con imágenes de GRUB

GRUB está formado por varias imágenes: una variedad de imágenes de arranque parainiciar BOOT de varias formas, una imagen del núcleo y una serie de módulos que secombinará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 oen el sector de arranque de una partición y ocupará 512 bytes. Su función es cargar elprimer sector de la imagen core. Dado su tamaño, boot.img no tiene capacidad paraentender estructuras de sistemas de ficheros y grub-setup introducirá el código con lalocalización del primer sector de la imagen core dentro de boot.img cuando se instalaGRUB.

– diskboot.img .- es el primer sector de la imagen core y su función es leer el resto de lamisma, llevarla a memoria e iniciar el kernel. Éste utiliza aún un formato de lista debloques 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 yficheros, 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 laimagen 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. Suestructura modular le permite un tamaño suficientemente pequeño como paraacomodarse en las áreas del disco donde debe ser instalado, que frecuentemente sonmenores de 32 Kb.

– *.mod .- todo lo demás de GRUB se encuentra en módulos que se cargandinámicamente. Si son esenciales se cargan automáticamente y pueden cargarsemanualmente con el comando “insmod”.

A la vista de estas imágenes, un sistema con un S.O. Windows y otro Linux puedeseguir las siguientes etapas:

1. boot.img .- se instala en el MBR conteniendo un puntero que apunta al sector dearranque de la partición de Linux, donde se instala diskboot.img.

Página.- 76

Page 79: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

2. diskboot.img .- instalado en el sector de arranque de la partición de Linux y contienelos 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ódulossuficientes 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.

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 enlos 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 dearranque, 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 deGRUB puede realizarse en dos lugares diferentes:

1. En la pista cero del dispositivo, entre el MBR y la primera partición, que generalmentedispone de al menos 31 Kb (62 sectores).

2. Dentro de una partición, guardando una lista de los sectores que ocupa en el sector dearranque de la misma.

Ambas opciones tienen sus inconvenientes. No hay una forma para reservar un espaciodeterminado entre el MBR y la primera partición y existe software propietario que utilizadicho espacio para controlar aspectos relativos a la licencia. Además, algunos sistemas puedenestar particionados sin dejar espacio suficiente en este área. Por otra parte, si se instala dentrode un sistema de ficheros, GRUB será vulnerable a que sus bloques sean cambiados de lugarpor programas tales como compresores, implementaciones agresivas de fsck, etc. Larecomendación general es situar GRUB antes de la primera partición, salvo que se necesiten

Página.- 77

Page 80: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

requerimientos especiales. Los discos modernos suelen dejar amplios márgenes de espacioalrededor 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 losusuarios deseados puedan actuar durante el arranque de la máquina sobre una configuracióntan delicada, teniendo en cuenta que una mala manipulación de la misma puede llevar a que elordenador no arranque.

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 y la copiaremos al portapapeles.

4. En el fichero /etc/grub.d/40_custom, indicamos el nombre del usuario al que sepermite 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 /etc/grub.d/40_custom, deberemos pegar el resultado obtenido en elapartado 3 correspondiente a la contraseña encriptada (desdegrub.pbkdf2.sha512.10000.A......) en la orden

password_pbkdf2 santiago contraseña_encriptada

6. Guardar el fichero y ejecutar “update-grub2”

El fichero /etc/grub.d/40_custom queda como muestra la figura siguiente:

Página.- 78

Page 81: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

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 lafigura siguiente para el usuario santiago.

Al reiniciar y comprobar los cambios notaremos que el sistema tarda un tiempoconsiderable 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/blackset color_highlight=magenta/black

Donde en "set color_normal" el primer "black" es el color del texto sin seleccionar yen "set color_highlight", "magenta" es el color del texto seleccionado y "black" es el color delfondo 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

Página.- 79

Fig 27: Fichero /boot/grub/grub.cfg

Fig 26: Fichero /etc/grub.d/40_custom

Page 82: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

• magenta: magenta• blanco: white• negro: black

Después de modificar el archivo hay que actualizar grub.cfg.

Enlace de interés: http://www.guia-ubuntu.org/index.php?title=GRUB

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.• Cambiar el título de alguna opción del menú.

#GRUB_DISTRIBUTOR=lsb_release -i -s 2> /dev/null || echo DebianGRUB_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.Windowssobreescribe 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 otrossistemas operativos, se puede intentar recuperar esta entrada ejecutando el ya conocidoupdate-grub2 o actuando manualmente sobre el fichero 30_osprober o 40_custom.

Página.- 80

Page 83: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

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:http://www.eritec.es/blog/acceder-alblog/viewpost/161.html

El shell de GRUB

El tema 14 de la documentación oficial contiene una lista con todos los comandos yopciones permitidos. La instrucción help muestra una lista de todos ellos, que permiten, entreotras cosas, iniciar el sistema de cualquiera de las particiones.

Recuperar desde GRUB una contraseña olvidada

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 necesariopulsar <Esc> para que aparezcan las opciones.

2. Pulsar “e” para editar.

3. Seleccionar la línea del kernel (kernel /boot/vmlinuz-...-generic root=UUID...) ypulsar “e”.

4. Ir a la línea del final y cambiar “ … ro quiet splas “ por “ … rw init=/bin/bash “.

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 <Ctrl> + <x> para arrancar (boot) el sistema.

6. El sistema se iniciará con el usuario root y sin contraseña.

Página.- 81

Page 84: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

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 conel entorno gráfico. La función de estos programas es facilitar la elección de las diferentesopciones disponibles, aparte de documentar cada una de ellas. Dos de los más conocidos songrub-customizer y startupmanager (ya en desuso).

MaX instala por defecto el programa startupmanager, al que se accede a través delmenú Aplicaciones – Sistema – Administración – Administrador de arranque.

Página.- 82

Fig 28: Administrador de arranque

Page 85: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Mediante las correspondientes fichas permite realizar la configuración completa deGRUB:

– Opciones de arranque.- permite configurar:

• El tiempo que permanece el menú en la pantalla antes de arrancar con laopción por defecto.

• El sistema operativo que arrancará por defecto si no se selecciona otro.• El borrado de núcleos anteriores (en últimas versiones).• 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.

– 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.

Ubuntu no instala ningún gestor gráfico de grub. Para instalar grub-customizer puedenejecutarse las siguientes operaciones:

sudo add-apt-repository ppa:danielrichter2007/grub-customizer

sudo apt-get update

sudo apt-get install grub-customizer

Puede ejecutarse desde la línea de comandos o buscándolo en las aplicaciones delsistema mediante el icono correspondiente del lanzador.

Página.- 83

Page 86: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Las operaciones que permite realizar son similares a las de startupmanager de MaX.

3.4 Instalación de sistemas operativos. Requisitos, versiones y licencias.

De entre la gran variedad de sistemas operativos, vamos a seleccionar para eldesarrollo de este apartado dos de ellos: Ubuntu y Windows 2012 Server.

Por lo general, para proceder a la instalación de cualquier sistema operativo esnecesario configurar el equipo para que utilice como primer dispositivo de arranque el lectorde DVD. Solamente en el caso de que la instalación se realice desde una ubicación remota, seutilizará otro dispositivo de arranque, que además permita establecer la comunicación con elequipo remoto.

3.4.1 Ubuntu

Existe información bastante completa acerca de la instalación de Ubuntu en el Manualdel Usuario, en el “Tema 2: Instalación”.

La versión más reciente de Ubuntu es la 14.04.1, que ha sido puesta a disposición delos usuarios en 2014. Puede descargarse desde http://www.ubuntu.com/download/desktop,donde pueden encontrarse versiones para 32 y 64 bits.

Página.- 84

Fig 29: Grub-customizer

Page 87: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Los requisitos mínimos y recomendados pueden ser los siguientes:

– Requisitos mínimos:

• Procesador X86 o compatible a 1 Ghz.• Lector de DVD.• 512 MB de memoria RAM.• 8 GB de disco duro.• Tarjeta de red.

– Requisitos recomendados:

• Procesador X86 o compatible a 1 Ghz.• Lector de DVD.• 2048 MB de memoria RAM.• 15 GB de disco duro más el necesitado por el usuario.• Tarjeta de red.

Al iniciar el sistema con el DVD de Ubuntu se muestran las opciones:

– Try Ubuntu without installing (opción por defecto).- permite correr la versión DVDLive. Esta versión presentará un icono en el escritorio que permitirá su instalación enel disco duro.

– Install Ubuntu.- permite la instalación de Ubuntu.

– OEM install (for manufacturers).- permite crear instalaciones personalizadas.

– Check disk for defects.- permite analizar si el disco tiene defectos.

En cuanto a las licencias, Ubuntu es una distribución del sistema operativo libre ygratuito GNU-Linux. Todo su código fuente puede ser utilizado, modificado y redistribuidolibremente por cualquiera bajo los términos de la Licencia Pública General de GNU (GPL).

Página.- 85

Page 88: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

3.4.2 Windows Server 2012

Las versiones de prueba de este sistema operativo están disponibles en internet, en ladirección http://technet.microsoft.com/es-es/evalcenter/dn205286.aspx. La licencia de pruebapermite su utilización gratuita durante 180 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 lasdiferentes fichas y opciones de esa misma página web se tiene acceso a información muycompleta. Por ejemplo, en http://technet.microsoft.com/en-us/library/hh831669, páginaaccesible desde la anterior, en el apartado “Windows Server 2008 Server Roles”, a través delos enlaces existentes, se accede a guías de instalación y configuración de los servicios deservidor más utilizados. La ampliación de la licencia de prueba puede hacerse a través de lapágina http://support.microsoft.com/kb/948472.

Los requisitos hardware para la instalación y uso de Windows Server 2008 puedenconsultarse en: http://technet.microsoft.com/library/dn303418.aspx.

– Requisitos mínimos:

• Procesador de 64 bits a 1.4 Ghz.• Memoria RAM de 512 MB.• Disco duro con 32 GB libres.• Tarjeta gráfica super VGA (1024 x 768).

– 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 (1024 x 768) o de mayor resolución.

Estos requerimientos pueden variar dependiendo de la versión (Standard, Enterprise oDatacenter), la configuración y las aplicaciones y funciones a instalar.

Las diferentes versiones de Windows Server 2012 que Microsoft ha sacado al mercadoy sus características pueden obtenerse de http://es.wikipedia.org/wiki/Windows_Server_2012.

En la actualidad existe una revisión de cada una de estas versiones que ha sidodenominada como R2.

Los detalles sobre el uso de licencias para cada una de las versiones puedenconsultarse en http://blogs.technet.com/davidcervigon/archive/2009/11/15/licenciamiento-en-entornos-virtualizados-windows-server.aspx

Página.- 86

Page 89: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Las versiones de servidores de Microsoft anteriores al Server 2012, por orden deaparición han sido Windows NT Server, Windows 2000 Server, Windows Server 2003 yWindows Server 2008.

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 lasoperaciones necesarias para posibilitar a los usuarios el lanzamiento de la ejecución de dichaaplicación de forma sencilla. Por ejemplo, cuando se instala una aplicación en Ubuntu,generalmente se incluye una opción en uno de los submenús del menú Aplicaciones queposibilita la ejecución de la aplicación instalada. Algo similar ocurre en Windows, que se creauna opción en el submenú “Todos los programas” del menú Inicio. A veces, además, durantela instalación se crea un icono en el escritorio que permite la ejecución, y otras, ellanzamiento se realiza mediante la ejecución de una instrucción en la línea de comandos de unterminal.

La desinstalación es el proceso inverso, consiste en realizar las operaciones quepermitan eliminar los datos y programas pertenecientes a la aplicación y en hacer lasmodificaciones oportunas en los ficheros de configuración del sistema que los devuelva a suestado previo a la instalación. Normalmente la desinstalación permite eliminar los ficherosque pertenecen única y exclusivamente a la aplicación en cuestión, pero no pueden eliminartodas las líneas incluidas o deshacer los cambios efectuados en los ficheros de configuracióndel 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 ocambios innecesarios que pueden afectar al rendimiento de los sistemas operativos y quehacen que los sistemas operativos sometidos a gran número de instalaciones ydesinstalaciones deban ser reinstalados periódicamente.

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 unprogramador o equipo de programadores para informatizar las operacionesdeterminadas por un cliente concreto. Por ejemplo, cuando un banco encarga lainformatización de cierta tarea a un equipo de programadores. La instalación la realizael equipo de programadores modificando, creando y cargando los ficheros necesarios.

– Aplicaciones de uso general.- son aquellas aplicaciones que cualquier usuario puedecomprar en una tienda de software y que pueden utilizar porque resuelven susnecesidades en un porcentaje muy elevado. Ejemplos típicos los tenemos en lospaquetes de Ofimática, Contabilidades, Aplicaciones de diseño gráfico, etc. Estasaplicaciones contienen los ficheros adecuados que permiten la instalación

Página.- 87

Page 90: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

automatizada sin apenas la intervención del usuario o contienen un fichero deinstrucciones, del tipo readme.txt, que permite efectuar la instalación a personas conciertos conocimientos informáticos.

– Aplicaciones incluidas en la lista de paquetes del sistema operativo.- Algunos sistemasoperativos contienen listas de software que puede ser instalado haciendo una simpleselección. Tanto MaX como Windows 2008 permiten este tipo de instalaciones. Enconcreto MaX contiene un gestor de paquetes, Synaptic, que permite estasinstalaciones y desinstalaciones.

En términos generales, un paquete es una aplicación, una librería o cualquier tipo decomponente que puede ser instalado en un sistema. Es muy normal que existadependencia entre paquetes en el sentido de que para que un paquete funcionecorrectamente necesite que también se encuentren instalados otros. Synaptic resuelvelas dependencias informando de las mismas al usuario para que decida si desea o noproseguir con la instalación. Esta característica facilita enormemente al usuario elproceso 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 sistemasoperativos cuentan con servidores, accesibles a través de Internet, que contienenrecopilaciones de paquetes actualizados y listos para que los usuarios puedandescargarlos; son los llamados repositorios.

Los repositorios contienen una cantidad inmensa de paquetes de forma queprácticamente no sea necesario utilizar software de otros orígenes, que puede generarproblemas de instalación y funcionamiento.

La ventana que permite configurar los repositorios tiene como título “Software yactualizaciones” y está accesible desde el buscador de aplicaciones o bien desde elmenú Aplicaciones – Sistema – Administración – Gestor de actualizaciones – Botón“Configuración”.

Página.- 88

Page 91: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

En la ficha “Otro software” aparecen los repositorios incluidos de formapredeterminada y a la derecha de los nombres de los repositorios se incluyen algunasdescripciones del tipo: main (principal), código fuente (que permite bajar el códigofuente 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 parasu instalación, o en código fuente, que pueden ser modificadas y después deberáncompilarse para que se puedan ejecutar.

Para cada repositorio, a través de la ficha “Software de Ubuntu”, pueden seleccionarsediferentes categorías de paquetes:

• Software libre soportado por la empresa Canonical (main).- contiene softwaremuy actualizado en cuanto a seguridad, escritorios y servidores.

• Software libre mantenido por la comunidad (universe).- contiene aplicacionescon licencias propietarias soportadas por la empresa Canonical. Lasactualizaciones de seguridad tienen que estar sujetas a las licencias de suscreadores originales.

• Controladores privativos para dispositivos (restricted).- contiene más de13.000 aplicaciones no soportadas por la empresa Canonical pero si por lacomunidad del Software Libre.

• Software restringido por copyright o cuestiones legales (multiverse).- contieneaplicaciones que, dependiendo de la legislación de cada país, pueden o no serlegales, con lo cual su distribución puede resultar problemática.

Página.- 89

Fig 30: Software y actualizaciones

Page 92: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Se aconseja tener activadas las cuatro categorías para disponer de una mayor variedadde aplicaciones.

El sistema mantiene un listado de las aplicaciones disponibles para instalar. Cuando seinstala un nuevo repositorio el sistema pregunta si se desea actualizar dicho listado ydebe responderse afirmativamente.

La ficha “Actualizaciones” permite configurar qué paquetes para actualizar debenconsiderarse y con qué periodicidad debe comprobarse la existencia de paquetesactualizados.

Pulsando sobre cualquier paquete mostrado a través del Centro de software de Ubuntudel lanzador de aplicaciones se accede a información detallada del mismo(dependencias, ficheros, ...).

Para ver las aplicaciones libres existentes se puede:

• Buscar, iniciando la sesión con un usuario administrador, a través del Centrode software de Ubuntu.

• Buscar en Synaptic por descripción o por secciones.• Buscar en la página web GenomeFiles http://www.gnomefiles.org/• Buscar en la página web Freshmeat http://freshmeat.net• Buscar en la página Alternativas libres http://alts.homelinux.net/

Finalmente, pueden buscarse las actualizaciones existentes del software instalado através de la aplicación “Actualización de software” que puede lanzarse a través delbuscador de aplicaciones.

Práctica (instalación de Apache)

Comprobar en la máquina virtual de Ubuntu si se encuentra instalado el paqueteApache e instalarlo si aún no lo está.

Los pasos a seguir pueden ser los siguientes:

– Iniciar la máquina virtual.

– Iniciar la sesión con un usuario administrador.

– Iniciar el “Centro de software de Ubuntu” o 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 especificandocomo dirección: localhost. Si funciona correctamente aparecerá una página de Apache.

Página.- 90

Page 93: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Práctica (instalación de Google Earth).

Instalar el programa Google Earth en la máquina virtual de Ubuntu de 64 bits. Lospasos a seguir para la instalación y funcionamiento correcto pueden ser los descritos en lapágina https://help.ubuntu.com/community/GoogleEarth :

– Descargar de la página mencionada el paquete de 32 bits.

– Instalar las librerías adecuadas con:

sudo apt-get install libc6-i386 libglib2.0-0:i386 libsm6:i386 libglu1-mesa:i386 libgl1-mesa-glx:i386 libxext6:i386 libxrender1:i386 libx11-6:i386 libfontconfig1:i386 lsb-core

– Instalar el programa haciendo doble click en el software descargado en el pasoprimero y eligiendo “Instalar” en la ventana del instalador.

– Lanzar la ejecución del programa buscándolo y comprobando su funcionamiento.

Página.- 91

Fig 31: Google Earth

Page 94: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Práctica (comprobación sobre Microsoft Office)

Comprobar en Windows 2012 el precio de la aplicación Microsoft Office. Las pautas aseguir 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 deaplicación tienen sus propias exigencias para poder funcionar de forma eficiente. Estasexigencias o requisitos suelen estar relacionados con tres condicionantes fundamentales:

– Sistemas operativos.- la información técnica que acompaña a las aplicaciones sueleespecificar con qué sistemas operativos son compatibles y si es necesario que seencuentre instalado o configurado con alguna particularidad alguno de loscomponentes de los mismos. Así, se pueden encontrar aplicaciones que únicamentecorren en determinados sistemas operativos sin posibilidad de que puedan utilizarsecon otros, y aplicaciones con versiones diferentes para una variedad más amplia desistemas operativos.

Página.- 92

Fig 32: Página de descarga de Office 2010

Page 95: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

En las figuras anteriores pueden verse como dos de las aplicaciones más utilizadas(Microsoft Office y OpenOffice) contemplan, una el requerimiento de cierto softwareinstalado, y la otra versiones diferentes para sistemas operativos diferentes.

– Hardware.- este tipo de requerimiento a veces solamente hace referencia a lanecesidad de disponibilidad de espacio libre en disco puesto que los requerimientos dememoria RAM, velocidad de proceso, etc. se presuponen cubiertos por el mero hechode cumplir con los requisitos exigidos por el sistema operativo instalado.

– Licencias.- para hacer uso de cualquier aplicación es necesario conocer lascondiciones de la licencia adquirida. El desconocimiento de los términos, condicionesde 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 suadaptación al nuevo hardware, a los nuevos sistemas operativos, a las nuevas necesidadescreadas, o a mejoras exigidas por los usuarios o para hacer frente a la competencia. Estasmodificaciones 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 adaptandoa los avances en cuanto a resolución y número de colores soportados. En concreto, losjuegos han realizado avances espectaculares.

Página.- 93

Fig 33: Página de descarga de OpenOffice

Page 96: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

– Dada la evolución en el incremento de las capacidades de los discos duros, losprogramas que manejan bases de datos se han adaptado para permitir la inclusión degran cantidad de información como puede ser la firma o fotografía de los clientes, sudirección de correo electrónico, etc.

– La necesidad de realizar operaciones mercantiles a distancia y seguras ha obligado adotar a las aplicaciones de sistemas de seguridad que permitan la realización detransacciones fiables.

Cada firma de software utiliza su propio método para comercializar y/o distribuir lasdiferentes versiones que produce.

Los contratos de licencia pueden establecer si el usuario tiene derecho a recibir deforma gratuita las revisiones o mejoras del software que se produzcan durante un periododeterminado. Así mismo, los sistemas operativos y aplicaciones pueden incluir procesosrelacionados con su actualización y licencia tales como:

– Actualización automática.- algunos S.O. y aplicaciones comprueban de formaautomática y periódica (diaria, semanal, configurable, …) si existen actualizaciones yen caso afirmativo las descargan e instalan. Un caso típico son los antivirus que seactualizan muy frecuentemente.

– Avisos de existencia de actualizaciones.- los S.O. y programas comprueban laexistencia de actualizaciones y emiten un mensaje para que el usuario proceda segúnconvenga.

– Avisos de caducidad de licencia.- algunas aplicaciones emiten algún mensaje cuandola licencia está a punto de expirar o ha finalizado para que el usuario realice larenovación si lo considera oportuno.

– Avisos de incumplimiento de licencia.- cuando intentan hacer uso de un S.O. oaplicación más usuarios de los permitidos o se encuentran en ejecución más copias delas permitidas.

– Etc.

Página.- 94

Page 97: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

3.6 Actualización de sistemas operativos y aplicaciones

Los sistemas operativos y aplicaciones suelen contener procesos que permiten laactualización constante de los mismos.

Ubuntu dispone de un Gestor de actualizaciones (update-manager) que detecta lospaquetes instalados que disponen de alguna actualización y da opción a instalarlas. Además, através del botón “Configuración” admite ciertos parámetros de configuración distribuidos pordiferentes fichas:

– Software de Ubuntu.- permite seleccionar el tipo de software a descargar de internet ydesde qué servidor.

– Otro software.- permite especificar los repositorios desde los que se podrán obteneractualizaciones.

– Actualizaciones.- permite seleccionar el tipo de actualizaciones que debe tener encuenta, configurar las actualizaciones automáticas en cuanto a la periodicidad decomprobación y a cómo proceder y qué actualizaciones de las versiones de ladistribución del S.O. mostrar.

Página.- 95

Fig 34: Update manager - opción Configuración

Page 98: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

– 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 utilizanpara que pueda ser considerada por los desarrolladores del S.O.

Para realizar el control de las versiones de los paquetes y aplicaciones a actualizar, lossistemas operativos registran listados del software que tienen instalado y su versión. Por otraparte, los servidores de software contienen listados de las últimas versiones de softwaredisponibles. Los programas gestores de actualizaciones comparan ambos listados con lafrecuencia configurada y proceden como corresponda si detectan diferencias.

Windows Server 2008 dispone del icono “Windows Update” en el Panel de Controlque permite el control de las actualizaciones del S.O. Su configuración y consulta se realizamediante 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 propiasaplicaciones las que incluyen procedimientos para detectar la existencia de nuevas versionesde ellas mismas, la caducidad de su licencia, etc. y proceder según su propia configuración.

Página.- 96

Fig 35: Configuración de las actualizaciones

Page 99: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

3.7 Ficheros de inicio del sistema operativo

En el apartado 3.3.5 se explica el proceso previo a la carga de ficheros del sistemaoperativo y cómo el gestor de arranque determina la partición y el sistema operativo desde elque se iniciará el sistema.

Una vez que el gestor de arranque determina qué núcleo (kernel) arrancar, localizará elbinario del núcleo correspondiente en el directorio /boot. La llamada al núcleo tiene elsiguiente 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-2.6.28.11-generic).

El gestor de arranque cargará en memoria tanto el núcleo como una imagen inicial deRAM apropiada (initial RAM disk), conocida como initrd (ej. /boot/initrd.img-2.6.28.11-generic). El initrd es usado por el kernel para cargar los controladores necesarios para arrancarel sistema.

Página.- 97

Fig 36: Windows Update

Fig 37: Contenido de /boot

Page 100: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Se lanza la ejecución del núcleo que configura la memoria del ordenador y losdiferentes dispositivos hardware conectados al sistema (procesadores, subsistemas deentrada/salida y dispositivos de almacenamiento); finalmente buscará initrd en una ubicaciónpredeterminada en memoria y lo descomprimirá dando como resultado la creación de unpequeñ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 losmódulos del núcleo que permitan montar al sistema de archivos raíz real (el del disco odispositivo que corresponda). Dependiendo de la configuración del sistema, linuxrc esresponsable de las siguientes tareas:

– Cargar los módulos del kernel.- según la configuración del hardware, es necesariodisponer de controladores especiales para acceder a ciertos componentes de hardwarepresentes en el equipo (principalmente, el disco duro). Para poder acceder al sistemade archivos raíz final, el kernel necesita cargar los controladores de sistema de archivoapropiados.

– Gestionar RAID y LVM.- si el equipo alberga el sistema de archivos raíz bajo RAID oLVM, linuxrc configura LVM o RAID para permitir el acceso posterior al sistema dearchivos raíz.

– Gestionar la configuración de red.- si se ha configurado el sistema para utilizar unsistema de archivos raíz montado en red (a través de NFS), linuxrc debe asegurarse deque se encuentren cargados los controladores de red y de que éstos permiten el accesoal sistema de archivos raíz.

Algunos de los mensajes que el núcleo produce durante el arranque pueden serrevisados 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 sedetiene y el kernel inicia el programa init.

init es el proceso creado por el núcleo que se encarga de iniciar, supervisar y detenertodos los demás procesos del sistema. Existen diferentes mecanismos de arranque y parada deservicios y cómo el init los gestiona:

– El tradicional System V Init (sysvinit).- donde /sbin/init lee el fichero deconfiguración /etc/inittab y arranca los servicios.

– Upstart.- donde el init gestiona los servicios básandose en eventos. El init maneja losservicios definidos en la carpeta /etc/event.d. Init Upstart pretende ser el sustituto deinit sysvinit.

Página.- 98

Page 101: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

– Systemd.- (ver https://wiki.ubuntu.com/systemd). Aporta la capacidad de ejecución deprocesos iniciales en paralelo. Seguramente se instale por defecto a partir de la versión15.04.

Ejecutar una serie fijada de scripts, uno tras otro, en un determinado orden hafuncionado razonablemente bien hasta ahora. No obstante, conforme Linux ha ido mejorandoy adaptándose a los sistemas modernos (posiblemente el manejo de dispositivos desmontableses 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 lasecuencia de arranque están disponibles ciertos recursos, por ello para que los scripts de initfuncionen se deben ejecutar en puntos concretos de dicha secuencia. Normalmente se ordenanteniendo en cuenta:

– Los discos duros deben haberse encontrado, iniciado y haber detectado sus particionesantes de que intentemos montarlas desde /etc/fstab.

– Los dispositivos de red deben haberse detectado e iniciado antes de que activemos losservicios de red.

Los ordenadores actuales se han vuelto mucho más flexibles:

– Los dispositivos pueden conectarse y desconectarse en cualquier momento, como porejemplo los dispositivos con conexión a USB.

– Los buses de almacenamiento aceptan un número variable de dispositivos, por lo quehay 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 girarhasta 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, peroantes de que sea utilizable por el sistema.

– Montar una partición de /etc/fstab puede requerir que estén disponibles programas deldirectorio /usr que no pueden utilizarse hasta que se configure la red si /usr está en unsistema de ficheros de red.

Página.- 99

Page 102: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

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 unsistema init que pudiera reordenar dinámicamente la secuencia de inicio basándose en laconfiguración y el hardware disponible en cada situación. Este nuevo init es Upstart, que estasiendo desarrollado dentro de Ubuntu por Scout James Remnant, pero que esta pensado paracualquier distribución.

Upstart es un nuevo init basado en eventos, donde los servicios son arrancados oparados porque ocurre un evento para el cual están preparados o escuchando. Los eventosgenerados por el sistema pueden iniciar una tarea y parar las que ya se están ejecutando. Loseventos 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 puedeenviar 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, …) dependiendode los eventos que se produzcan. Por ejemplo, la impresión de un documento puede estar enespera hasta que se conecta una impresora al puerto USB.

Los eventos generados por el demonio init, o enviados por otros procesos, puedenprovocar que las tareas se inicien o detengan. También pueden recibirse peticiones manualespara iniciar o parar una tarea. La comunicación entre el proceso init y otros procesos esbidireccional, por lo que se puede solicitar el estado en el que se encuentran las otras tareas eincluso 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. Upstartmantiene, por tanto, una capa de compatibilidad con el sistema sysvinit.

Página.- 100

Page 103: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

3.7.1 Niveles de ejecución

En Linux, un demonio (daemon), que responde al acrónimo de Disk And ExecutionMonitor, es un tipo especial de proceso informático que se ejecuta en segundo plano para daralgún tipo de servicio. Ejemplos de demonio, son los servidores de correo, servidores deimpresora, sistemas de conexión con redes, etc. Este tipo de programas se ejecutancontinuamente. Los sistemas GNU/Linux suelen arrancar una serie de daemons en susecuencia de inicio como cualquier otro proceso normal. Las tareas que puede desempeñar undemonio pueden ser muy variadas: responder a peticiones de red, control de actividad dehardware y software, configurar hardware, ejecutar tareas periódicas o preprogramadas (comoel demonio cron), etc.

Los demonios en ejecución en un determinado momento marcan los servicios que elsistema operativo está ofreciendo y/o recibiendo en ese momento. El hecho de que puedancoexistir bastantes procesos diferentes provoca que su organización deba plantearse de formaadecuada.

Un nivel de ejecución o runlevel consiste en la ejecución de unos determinadosprocesos o demonios que proporcionan unos servicios concretos. En la instalación de unservidor es habitual diseñar una configuración para que en determinados momentos se puedanofrecer determinados servicios y en otros no. Para permitir este tipo de funcionamiento, elsistema operativo nos proporciona diferentes niveles de ejecución que podremos adaptar anuestras necesidades. Si bien se puede configurar el número de niveles de ejecución que sequiera y la funcionalidad de cada uno de ellos, generalmente los sistemas Linux nosproporcionan 7 niveles diferentes (numerados del 0 al 6) para permitir que el ordenadortrabaje con diferentes configuraciones de arranque (diferentes servicios). La siguiente tablamuestra 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.

Página.- 101

Page 104: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

En Ubuntu (también en Debian y en MaX) los niveles de ejecución del 2 al 5 sonequivalentes al nivel 5. Los diferentes niveles pueden ser configurados según las necesidadesde cada instalación. Por defecto, el sistema se incia en el nivel de ejecución 2, lo que se puedecomprobar ejecutando el comando “runlevel”, que mostrará 2 números, el primero muestra elnivel previo en el que se encontraba, que si no se ha cambiado de nivel mostrará una “N”, y elsegundo corresponde al nivel actual.

Se puede cambiar a otro nivel de ejecución introduciendo sólo init (o telinit) con elnúmero correspondiente. Naturalmente, el cambio a otro nivel sólo puede ser gestionado porel administrador de sistema. Por ejemplo, con el comando “init 1” o “shutdown now” se lograentrar en el modo monousuario, el cual se ocupa del mantenimiento y administración delsistema. Después de que el administrador del sistema haya acabado su trabajo, se puedeutilizar “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.

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 delnivel de ejecución. En los directorios /etc/rcN.d realmente se encuentran enlaces simbólicos alos ficheros shell scripts, con el mismo nombre descriptivo, de los procesos (demonios) queestán en el directorio /etc/init.d. Con el mismo nombre del enlace se identifica la acción quese va a realizar. Algunas características de los ficheros que se encuentran dentro de /etc/rcN.dson:

– Son enlaces simbólicos cuyo nombre empieza por “K” o “S”, seguido de un númerode 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 queempiezan por “S”. El orden es importante, ya que algunos daemons necesitan queotros 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 deinicializació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 queestar activos y qué demonios no tienen que estar activos.

Cada script gestiona una tarea o servicio, que se inicia cuando el script se ejecuta conel argumento “start” y se detiene cuando se usa el argumento “stop”. De esta forma en cadarunlevel 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 scriptsmanualmente con el argumento apropiado.

Página.- 102

Page 105: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

En general, no hay que preocuparse por la configuración del arranque, ya que elsistema de instalación se ocupa automáticamente de actualizar la configuración en función delos paquetes instalados.

3.7.2 El proceso init en Ubuntu

Una vez que el núcleo del sistema (kernel) se ha cargado en memoria, se ejecuta elprograma init, que se convierte en el proceso número 1 y se encarga de ejecutar el resto deprogramas 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.

Después, éste fichero dejó de existir y se mantuvo un nivel de compatibilidad con elmismo. init se limitó a ejecutar una serie de scripts que activaban ordenadamente losdiferentes servicios que hacían funcionar el sistema. En /etc/event.d se encuentraban losficheros de configuración de init upstart que, se puede decir, funcionaban como si delfichero /etc/inittab se tratase. Este directorio contenía los ficheros que se muestran en lafigura.

– 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 ejecutarlos scripts del nivel de arranque correspondiente.

– Otros ficheros como “control-alt-delete” que envía mediante dicha combinación deteclas al reinicio ordenado del equipo, o “rc-default” que define el nivel de inicio pordefecto.

En primer lugar, init “ordena” la ejecución del script /etc/event.d/rc-default quedetermina fundamentalmente dos procesos:

– La ejecución de todos los scripts situados en /etc/rcS.d, independientemente del nivelpor defecto con el que se inicie el sistema. La misión de estos scripts es realizar lastareas que siempre son necesarias: inicializar el teclado, los puertos serie, etc.

Página.- 103

Fig 38: Contenido de /etc/event.d

Page 106: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Más concretamente, rc-default ordena la ejecución del script /etc/event.d/rcS, que a suvez contiene la orden “exec /etc/init.d/rcS”, es decir, ejecuta el script rcS que seencuentra en el directorio /etc/init.d. El script /etc/init.d/rcS realizará una llamadamediante el comando “rc S” para que se ejecuten en orden alfabético los scripts que seencuentren bajo el directorio /etc/rcS.d/. Las tareas realizas por estos scripts son lasbá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. Cadascript tiene su función particular y en realidad, son enlaces simbólicos a los verdaderosscripts situados en el directorio /etc/init.d. De esta forma es más fácil añadir, eliminary ordenar los componentes.

– La ejecución de los scripts correspondientes al nivel de ejecución por defecto, con elque se debe iniciar el sistema. En MaX el nivel de inicio por defecto es el 2. Se puedecomprobar 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 losmismos servicios. Una vez ejecutados los scripts de /etc/rcS.d, el script rc-defaultordena la ejecución del nivel con el que se debe iniciar por defecto el sistema medianteel comando “telinit 2”. Se ejecutarán, así, los scripts correspondientes al nivel deejecución 2, que son los que se encuentran en /etc/rc2.d.

En la actualidad Ubuntu se encuentra en una transición del sistema Upstart a Systemddel que aún no es fácil encontrar documentación efectiva. Con relación a los directorios yficheros afectados las diferencias más significativas son la desaparición de la carpeta/etc/events.d y la aparición de /etc/systemd.

Los procesos lanzados en cada nivel de ejecución se encuentran en rcN.d que sonenlaces a los ejecutables de init.d

3.7.3 Gestión de servicios con sysv-rc-conf

La aplicación sysv-rc-conf, no instalada por defecto, permite conocer los serviciosactivos, mostrarlos, detenerlos, etc.

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 quedispone el sistema, y, en las siguientes columnas, el estatus del servicio dependiendo del nivelde ejecución. Lo útil de la aplicación es que además de aparecer un listado de todo lo queexiste, permite la gestión en caliente de todos ellos.

Página.- 104

Page 107: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

El manejo es sencillo, nos moveremos a través de los servicios usando las teclas dedireccionamiento y activamos y desactivamos simplemente presionando la tecla espaciadora obien pulsando con el ratón sobre el runlevel de la aplicación. De esta manera se puedeconfigurar qué servicios se han de ejecutar en cada runlevel.

3.8 Registro del sistema

Algunos sistemas operativos disponen de un registro del sistema donde se centraliza laconfiguración de los diferentes servicios y/o aplicaciones, como es el caso de los sistemasWindows. En Linux estas configuraciones no están centralizadas, cada servicio tiene supropio fichero de configuración.

La centralización de configuraciones tiene la ventaja de que con un único programapuede realizarse el mantenimiento del registro, pero el inconveniente de que su deterioropuede 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 conlos 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 indicacionesdel fabricante.

Por otra parte, la práctica totalidad de fabricantes dispone de una web con soportetécnico donde el cliente puede realizar las consultas oportunas o descargar los controladoresque correspondan al S.O. instalado.

Página.- 105

Fig 39: sysv-rc-conf

Page 108: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

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 delcontrolador o directamente lo descarga de internet. Si el S.O. no detecta el cambio deberánseguirse las indicaciones del fabricante.

3.10 Actividades

1. Comprobar cuales de las consideraciones previas del apartado 3.2 pueden aplicarse alos sistemas operativos MaX y Windows Server 2008.

2. Buscar en internet los requerimientos hardware de las diferentes versiones deWindows Server 2008.

3. Comprobar con un editor hexadecimal si el contenido de la tabla de particiones delMBR 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 dearranque GRUB.

5. Desde la shell de grub cambiar la contraseña del usuario madrid. A continuacióndeshacer 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 delfondo 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ónacerca de como realizar una instalación desatendida. Buscarla, analizarla y realizar unainstalació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, ...15. 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.- 106

Page 109: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

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 2008.– 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 yWindows. La web de Samba http://samba.org/samba/docs/man/ contiene información muycompleta del servicio.

Resumen.

En este tema se tratan los elementos más importantes relativos a la creación ymantenimiento de cuentas de usuario: sus características, su diseño considerando aspectosrelativos al nombre, contraseña, restricciones relativas al horario de conexión, número delogins, uso de espacio de disco, etc. También se detalla la creación de cuentas en el sistemaoperativo 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 losperfiles de los usuarios.

Al final del tema se detalla la gestión de recursos y usuarios de forma centralizadamediante los servicios NFS, SMB y NIS.

Temporización: 10 horas.

Página.- 107

Page 110: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

4.2 Administración de usuarios locales

La característica fundamental de los sistemas operativos multiusuario es que distintosusuarios pueden trabajar de forma independiente en el mismo sistema. Cada usuario tiene unacuenta de usuario que consiste en un nombre de usuario y una contraseña personal para entraral sistema. Además, de forma generalizada para la práctica totalidad de los sistemasoperativos, 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 equipocomo pueden ser: realizar copias de seguridad, apagar el equipo, administrar cuentasde 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 losusuarios. Los permisos son propiedades de los objetos que pueden empezar a asignarsecuando se crea el objeto.

Un ejemplo de derecho lo tenemos en la vida cotidiana si imaginamos una familia quetiene establecida una norma acerca de la hora a la que tienen que llegar los hijos a casadependiendo de su edad. Un ejemplo de permiso sería si la familia compra un ciclomotor yasigna 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, quesimplifica enormemente la organización y el trabajo del administrador, es la posibilidad decentralizar las cuentas en determinados equipos. Un ejemplo para constatar la diferenciapuede ser el caso de un aula donde el profesor crea en cada ordenador una o varias cuentaspara los alumnos de un determinado grupo y el caso donde el profesor crea un usuario paracada alumno en el ordenador del profesor y los alumnos inician la sesión desde cualquierequipo del aula haciendo uso de las cuentas creadas en el ordenador del profesor. En el primercaso estamos hablando de cuentas de usuario locales, que solamente pueden utilizarsetrabajando en el equipo donde están creadas y en el segundo de cuentas globales, que se creanen un equipo pero pueden ser utilizadas desde otros.

Página.- 108

Page 111: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

4.2.1 Diseño de cuentas de usuario

Es muy importante que el administrador de cuentas siga unas directrices en cuanto a laadministración de cuentas y tenga organizada la información de las personas que van adisponer de una cuenta de usuario. Estas directrices deben contemplar:

– Una convención de nombres.- para asegurar que los nombres de las cuentas de usuarioserán únicos y seguirán una lógica establecida que facilite su memorización obúsqueda posterior. Además, se deberá tener en cuenta:

• La longitud mínima y máxima de los nombres de cuenta, así como loscaracteres especiales permitidos y que pueden utilizarse para ayudar aidentificar a los usuarios.

• La posibilidad de que existan nombres personas duplicados debe estarcontemplado 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 sutemporalidad, etc.

Por ejemplo, para los alumnos de 1º A de bachillerato se pueden crear los usuarios dela 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 elnombre de la cuenta del usuario administrador.

• Determinar si los usuarios pueden o no cambiar su contraseña. Por lo generalson los propios usuarios los encargados de administrar su contraseña pero sedan muchos casos en los que esta práctica no es conveniente.

• Determinar si una cuenta de usuario debe caducar o no, dependiendo de latemporalidad del usuario.

• Informar a los usuarios sobre el correcto uso de las contraseñas: evitarasociaciones obvias que contemplen el nombre del usuario, de familiares ofechas significativas, utilizar un nº mínimo de caracteres alto, intercalarminú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 yseguridad de los datos, estableciendo el horario de inicio de sesión y de uso cuando losusuarios requieran el acceso dentro de unos períodos de tiempo específicos, porejemplo, cuando existan turnos diferentes de usuarios.

Página.- 109

Page 112: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

– Ubicación de las carpetas de trabajo.- que son las carpetas privadas de los usuariosdonde podrán almacenar sus archivos. Se utilizan como carpetas predeterminadas paragran 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 paradeterminar su ubicación deben considerarse:

• Realización de copias de seguridad y restauración.- que puede simplificarse silas carpetas personales se encuentran centralizadas en un servidor.

• Espacio que ocupan .- que puede determinar la posibilidad de utilizar o no unservidor. También debe considerarse si el S.O. tiene posibilidad de limitar elespacio máximo que puede ocupar una carpeta.

• Uso de dispositivos removibles.- que permita a los propios usuariosresponsabilizarse de sus datos.

• Rendimiento de la red.- dado que, dependiendo del tipo de ficheros utilizados yel lugar donde se ubiquen, puede incrementarse considerablemente el tráfico enla misma.

4.2.2 Ubuntu

Para realizar la administración de usuarios, Ubuntu dispone de la herramienta unity-control-center, accesible desde el entorno gráfico a través del menú Sistema – Configuracióndel sistema … - Cuentas de usuario, o desde un terminal a través del comando unity-control-center. En ambos casos se necesitan privilegios de administrador y saber la contraseña deladministrador 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 funcionacorrectamente puede ser porque al usuario root aún no se le hayaasignado ninguna contraseña.

unity-control-center

o entrar con un usuario administrador y ejecutar: sudo unity-control-center.

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. A continuación semostrará una lista de usuarios, con su nombre real, el nombre de la cuenta (logín), el tipo decuenta, etc.

Página.- 110

Page 113: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

El gestor de usuarios y grupos contiene botones que permiten añadir, modificar yborrar usuarios. Los datos que se pueden introducir al añadir usuarios, o al modificarlosposteriormente, son los siguientes:

– Tipo de cuenta.- Estándar o Administrador. Si se selecciona Administrador el usuarioserá hecho miembro del grupo “adm” que tiene privilegios especiales para administrarel sistema.

– Nombre completo.- por ejemplo “Santiago Alonso”.

– Nombre de usuario.- es el nombre de la cuenta para hacer login.

Una vez introducidos estos datos y aceptándolos se crea el usuario. Para añadirlealguna característica más hay que seleccionarlo y pulsar sobre la característica a modificar.Especial interés tiene introducir una contraseña para el usuario para que quede activado ypueda loguearse con él.

Ubuntu crea de forma automática una serie de grupos con privilegios para acceder oadministrar ciertas utilidades, que pueden permitir al usuario labores como:

• 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.

Página.- 111

Fig 40: Administración de usuarios con Unity-control-center

Page 114: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

• 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.

La herramienta instalada por defecto para Administrar usuarios y grupos es demasiadoescasa. Se puede recomendar la instalación de herramientas más amplias como puede serWebmin, que puede descargarse de www.webmin.com.

Límites a los usuarios

Existe la posibilidad de limitar recursos a los usuarios o grupos, por ejemplo, elmáximo numero de logins que puede realizar simultáneamente un usuario, el máximo tiempode CPU, el máximo numero de procesos etc. Estos límites se controlan en Ubuntu a través delfichero /etc/security/limits.conf.

Cada línea de este fichero describe un límite para un usuario en la forma:

<dominio> <tipo> <elemento> <valor>

donde:

<dominio> puede ser:

– Un nombre de usuario.– Un nombre de grupo, con la sintaxis: @grupo.– 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 deusuario 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 corecontienen una imagen de memoria de un programa que ha dado un fallo. Son

Página.- 112

Page 115: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

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-in-

memory) (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.

<valor> es la cantidad asignada al elemento en cuestión.

Un ejemplo de fichero puede ser:

##<dominio> <tipo> <elemento> <valor>#* soft core 0root hard core 100000* hard rss 10000@alumnos hard nproc 20@profesores soft nproc 20@profesores hard nproc 50ftp hard nproc 0ftp - chroot /ftp@alumnos - maxlogins 4

#Fin del fichero

Página.- 113

Page 116: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

También es posible limitar los tiempos de acceso a los usuarios mediante el serviciotimeoutd. Este servicio no se instala por defecto y una vez instalado dispone del fichero deconfiguración /etc/timeouts, cuyas líneas, aparte de las que se encuentran en blanco o quecorresponden 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 loscampos de estas líneas. Algunos ejemplos son:

1. Para que usprueba01 pueda estar 20 minutos inactivo, 240 minutos por sesión, 480minutos 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

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:*:LOGINAl: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:

Al1500-1600:*:root:*:LOGINAl1500-1600:*:*:*:NOLOGIN

Una vez que se ha preparado el fichero /etc/timeouts es necesario reiniciar el serviciotimeoutd:

/etc/init.d/timeoutd restart

Stopped /usr/sbin/timeoutd (pid 2412).Starting /usr/sbin/timeoutd...

Página.- 114

Page 117: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Es importante destacar que este proceso no actúa durante el proceso de login lo que dalugar a que, aunque un usuario tenga prohibido el acceso a una máquina en un momentodeterminado, 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 lascondiciones 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.

Existe software que permite administrar los periodos permitidos o prohibidos para queun usuario pueda loguearse mediante un entorno gráfico. Por ejemplo, incluido en losrepositorios de Ubuntu se encuentra el paquete Nanny que de forma muy intuitiva permiteestablecer el horario de login, de navegación por la web, de uso del cliente de correo y de usode la mensajería instantánea. Se puede instalar con las instrucciones:

sudo add-apt-repository ppa:boamaod/nanny-testsudo apt-get updatesudo apt-get install nanny

Su ejecución presenta una ventana como la siguiente:

En la web https://help.ubuntu.com/community/ParentalControls se comentan otrosprogramas de control.

Dentro del directorio /etc/security existen otros ficheros que permiten establecerciertos aspectos relativos a la seguridad del sistema:

Página.- 115

Fig 41: Programa de control (parental) nanny

Page 118: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

– access.conf.- permite establecer los usuarios que pueden conectarse desde qué equiposy terminales.

– capability.conf.- establece los módulos que puede ejecutar cada usuario.– pwquality.conf.- establece los requisitos que deben cumplir las contraseñas.– time.conf.- establece restricciones de uso de servicios, a usuarios, en ciertos horarios,

desde ciertos terminales.

Limitar con cuotas el espacio del disco

El sistema de quotas provee un mecanismo de control y uso del espacio de disco durodisponible en un sistema. Se pueden establecer limites en la cantidad de espacio y el númerode ficheros de que puede disponer un usuario o grupo. En las quotas hay cuatro parámetrosnuméricos para cada límite: la cantidad actual ocupada; el límite soft (quota propiamentedicha); el límite hard (espacio sobre quota), y el tiempo que resta antes de eliminar el excesoentre soft y hard. Mientras que el límite soft puede ser superado temporalmente, el límite hardnunca puede rebasarse.

Para implementar el sistema de quotas es necesario instalar algún paquete de controlde dicho sistema. En Ubuntu hay un paquete denominado quota que instala todo lo necesariopara implementar todo el sistema. Una vez instalado tenemos que realizar una serie de pasospara activar el mecanismo de quotas. Estos pasos son:

– Configuración del kernel.- antes de instalar el sistema de quotas debe disponerse de unkernel con la opción de quota–system habilitada. Esto se consigue en el proceso decompilación de un nuevo kernel respondiendo yes a la pregunta de Disk QUOTAsupport. Los kernels precompilados que se distribuyen con Debian (paquetes kernel-image) ya tienen esta opción habilitada.

– Elección del sistema de ficheros sobre el que se aplican las quotas.- una vez dispuestoel kernel, hay que seleccionar qué sistema de ficheros necesita tener aplicadas lasquotas. Lo normal es que solo el sistema donde están las cuentas de usuarios tenganquotas, aunque es recomendable que tenga quotas todo sistema de ficheros donde losusuarios puedan escribir. Para habilitar las quotas en un sistema de ficheros hay queeditar 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

Página.- 116

Page 119: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Checked 4943 directories and 57624 filesUsing quotafile /quota.userUpdating in-core user quotasUsing quotafile /quota.groupUpdating in-core group quotas

La primera vez que se ejecuta este comando sirve para crear los ficheros de quotas enlas particiones correspondientes: quota.user y quota.group.

– Especificar quotas para usuarios o grupos.- para editar la quota de un usuario o grupose usa el programa edquota, con la opción -u para editar las quotas de usuarios(edquota -u nombre_usuario) 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 graciaque hay entre el límite soft y el hard puede cambiarse con:

edquota -t

La mayoría de las veces los usuarios tienen la misma quota. Una forma rápida deeditar la quota de todos los usuarios es colocarse en el directorio donde tienen susdirectorios raiz cada usuario. Editar la quota de uno de estos usuarios con los valoresapropiados 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 ogrupo solo hay que editar las quotas y poner los limites a 0. Así un usuario puede usartantos bloques e inodos como quiera.

La administración de quotas puede realizarse con Webmin teniendo en cuenta que enprimer lugar se instala el paquete “quota”, a continuación se activan las cuotas a través de laopción “Sistema – Sistemas de Archivo de Disco y Red”, se reinicia el equipo y finalmente seasignan cuotas a los usuarios a través de “Sistema – Cuotas de disco”, botones “Editar Cuotasde Usuario/Grupo”. Si la opción no existe podrá accederse a través del cuadro de texto“Search”, buscando la cadena “quota”.

Página.- 117

Page 120: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

La siguiente figura muestra la interfaz de administración de cuotas de Webmin:

4.2.3 Windows Server 2008

Hay varias formas de realizar la administración de cuentas de usuario locales. Las dosmá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 “Herramientasadministrativas” (Inicio – Herramientas administrativas – Administración de equipos –Usuarios y grupos locales – carpeta Usuarios).

Página.- 118

Fig 43: Administración de cuentas a través del panel de control

Fig 42: Webmin: administración de cuotas

Page 121: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

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 lacolumna central donde se visualizan las cuentas de los usuarios; se mostrarán unasoperaciones u otras dependiendo de si el click se hace sobre una cuenta de usuario o en unespacio libre.

Página.- 119

Fig 44: Crear nueva cuenta

Fig 45: Administración de cuentas con las Herramientas administrativas

Page 122: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Algunas de las posibles acciones u operaciones son:

– Usuario nuevo (aparece si no hay ninguno seleccionado).

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 variaslas personas que utilizan la misma cuenta.

• Si la contraseña expira. En sistemas donde se requiere un alto nivel deseguridad o confidencialidad de la información de los usuarios, se establece unperiodo de validez de las contraseñas y, una vez expirado, el usuario tiene quecambiar la contraseña. Esto se debe a que con el tiempo los usuarios terminanconociendo las claves de los otros por ser muy común que surjan ocasionesdonde un usuario le dice su clave a otro para que pueda realizar ciertaoperación.

• Si se habilita o deshabilita la cuenta. Una cuenta se puede deshabilitarmanualmente mediante este cuadro de verificación para, por ejemplo, obligaral 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 unacontraseña incorrecta.

Página.- 120

Fig 46: Usuario nuevo

Page 123: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

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.

Todas las propiedades se encuentran distribuidas en las fichas:

• General.- contiene prácticamente la misma información que la ventana decreació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.- 121

Fig 47: Propiedades de las cuentas

Page 124: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

4.3 Usuarios predeterminados

Durante la instalación de los sistemas operativos multiusuario se crean una o variascuentas de usuario predeterminadas que permiten iniciar la sesión y la administración de lasdemás cuentas. Además, la instalación de algunos procesos conlleva la creación de algúnusuario que permite el control del proceso. Por ejemplo, al instalar un servicio de servidorweb se puede generar un usuario que sirva para determinar los permisos de los usuarios que seconecten al equipo a través de dicho servicio.

Debe tenerse muy presente que solamente deben iniciarse sesiones con cuentas deusuarios administradores o con privilegios especiales cuando vayan a realizarse lasoperaciones que requieran de esos privilegios. Las razones fundamentales para utilizar dichascuentas única y exclusivamente cuando sea estrictamente necesario son:

– Con las cuentas que tienen permitido realizar todas las operaciones se puede dañarinintencionadamente al sistema operativo, borrando por ejemplo ficherosfundamentales.

– Cuando un usuario se conecta a un equipo remoto sin autorización puede que adquieralos privilegios del usuario que tiene abierta la sesión en ese momento en el equiporemoto, 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 teneracceso a la totalidad del sistema y podrán realizar cualquier operación, incluida la deformatear el disco duro.

Por cuestiones de seguridad, y siempre que sea posible, se recomienda cambiar elnombre de la cuenta del usuario administrador y se le debe asignar una contraseña segura.

Durante la instalación de Ubuntu se crean los siguientes usuarios, con las siguientescaracterísticas:

– root.- tiene asignados todos los privilegios y autorizaciones para poder realizarcualquier operación de administración o de cualquier tipo. Dado el riesgo que implicatrabajar con un usuario que puede realizar cualquier operación, esta cuenta se crea conel 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 suplantartemporalmente al administrador del sistema (root) o a otro usuario. El usuario(inicial) creado durante la instalación está autorizado a utilizar este comando.

Página.- 122

Page 125: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Por ejemplo, si el usuario inicial ejecuta el comando “mkdir /pepe” se produceun error por no tener permisos para crear carpetas en el directorio raiz; pero siejecuta la misma instrucción anteponiendo sudo, es decir, “sudo mkdir /pepe”,se creará el directorio. Con la instrucción “ls -l /” puede comprobarse que eldirectorio se ha creado y que su propietario es el usuario root.

De forma similar habrá que actuar para borrar el directorio creado: usando lainstrucción “sudo rmdir /pepe”.

La primera vez que se ejecuta la instrucción sudo pide la introducción de lacontraseña del usuario inicial. Hasta que no pasan 15 minutos no la vuelve apedir.

Los usuarios y grupos que tienen derecho a utilizar el comando sudo seencuentran en el fichero /etc/sudoers y editando el fichero podremos añadir oeliminar usuarios. Antes de editar el fichero es conveniente realizar una copiadel 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 lamodificació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 lospermisos, 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 deseguridad 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 usuarioroot 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 yusprueba02, 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 % alnombre, por ejemplo: %grupo ALL=(ALL) ALL

Página.- 123

Page 126: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Al finalizar de editar el fichero, hay que guardar las modificaciones (en visudocon :wq) y, si se modificaron los permisos del fichero, deshacer los cambioscon la instrucción: “sudo chmod u-w /etc/sudoers”.

• Hacer uso de la instrucción “su root” o simplemente “su” que permite a unusuario convertirse en otro hasta que se ejecuta la instrucción “exit” o se cierrala 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 abrir un terminal y ejecutarlas instrucciones:

sudo su rootpasswd

• Iniciar una sesión como usuario root en un terminal en modo texto, pulsando,por ejemplo <Ctrl> + <Alt> + <F1>. Se necesita haber asignado previamenteuna contraseña al usuario root.

• Iniciar una sesión gráfica como usuario root. Previamente se deberá haberiniciado una sesión con el usuario inicial y asignado una contraseña al usuarioroot. Una forma sencilla de que el programa que gestiona el logín del usuario(lightdm) permita seleccionar al usuario root es incluir al final del fichero/etc/lightdm/lightdm.conf una línea con:

greeter-show-manual-login=true

que mostrará, además de los usuarios ya existentes, una opción “Acceder” quepermitirá introducir el nombre de usuario y la contraseña.

– El usuario inicial cuyos datos se solicitan durante la instalación.- tiene privilegios deadministrador (grupo adm) y por lo tanto podrá utilizar la instrucción sudo.

– Invitado.- cuenta que permite un acceso temporal y que se reinicia al reiniciar elequipo, perdiéndose todos los datos introducidos o modificados. Su directorio detrabajo se sitúa en /tmp.

Durante la instalación de Windows Server 2008 se crean de forma predeterminada lassiguientes cuentas locales, con las siguientes características:

– Administrador.- Esta cuenta tiene control total del equipo y puede asignar derechos deusuario y permisos de control de acceso a los usuarios según se necesite. Puede estarhabilitada o deshabilitada y siempre es miembro del grupo Administradores. No sepuede eliminar ni quitar del grupo Administradores pero se puede cambiar el nombre(recomendable) y deshabilitar.

Página.- 124

Page 127: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Aunque la cuenta Administrador esté deshabilitada, si se inicia el equipo en modoseguro podrá utilizarse.

– Invitado.- Utilizada por los usuarios que no tienen cuenta real en el equipo. Norequiere contraseña y se encuentra deshabilitada de forma predeterminada (y serecomienda que permanezca deshabilitada). Se le pueden asignar derechos y permisoscomo a cualquier otra cuenta y pertenece al grupo predeterminado Invitados, lo que lepermite iniciar sesión en un equipo.

Para habilitar o deshabilitar una cuenta basta con marcar o desmarcar el cuadro deverificación correspondiente de la ficha General de las propiedades del usuariomostradas 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 devulnerabilidad 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 sepueda, de instrucciones que permitan, al menos temporalmente, realizar tareasadministrativas.

En Ubuntu se recomienda hacer uso de la instrucción sudo.

En Windows se puede utilizar “Ejecutar como administrador”. Hay dos formas deejecutar un programa de esta forma:

• En el entorno gráfico, haciendo uso de la opción “Ejecutar como” que apareceal 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 /user:Administrador@W200800 “notepad fichero.txt”

donde W200800 es el nombre del equipo, Administrador el del usuario, cmdpara invocar una sesión en modo texto y “notepad fichero.txt” para editar elfichero. Son dos ejemplos muy distintos y puede encontrarse más informacióny más ejemplos en la Ayuda de Windows.

Página.- 125

Page 128: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

– Incluir las menos cuentas de usuario posibles en los grupos con privilegios deadministradores.

– Mantener deshabilitada la cuenta asignada para los usuarios Invitados o Anónimospuesto que suelen ser cuentas que no requieren contraseña y cualquier usuario puedeutilizarlas, con el consiguiente riesgo para la seguridad.

– Mantener deshabilitada la cuenta del usuario Administrador, por ser la cuenta quetodos los intrusos desean desproteger.

– Incluir en los grupos con privilegios de administradores a los usuarios que gocen de laconfianza 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 equipode los hackers y usuarios no deseados y para mantener la confidencialidad de la informaciónde los usuarios. De alguna forma son la primera línea de defensa contra el acceso noautorizado. Cuanto más segura sea la contraseña mayor será la protección. La mayor parte delos sistemas operativos permiten que el usuario administrador establezca ciertas condiciones alas contraseñas para garantizar su seguridad y fiabilidad. Entre estas condiciones de seguridadde 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 dediccionario.

– 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 puedenemplearse 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 erroresortográficos, por ejemplo, Santiago puede convertirse en 5@Mt1@j0.

Página.- 126

Page 129: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

– Etc.

Si aún así, se cree conveniente anotar la contraseña para que no se olvide, debehacerse en lugar seguro y sin indicar que es una contraseña.

4.6 Administración de perfiles locales de usuario

El perfil de un usuario está compuesto por los ficheros que contienen la informaciónde configuración para ese usuario específico. Esa información puede ser relativa a laconfiguración del escritorio, las conexiones persistentes a carpetas e impresoras de red y laconfiguración de aplicaciones.

Generalmente el perfil inicial de un usuario se genera en el momento de la creacióndel usuario o la primera vez que el usuario inicia una sesión en el equipo.

Durante la instalación de Ubuntu se genera la carpeta /home destinada a contener lainformación de los usuarios. Dentro de /home se crea automáticamente una carpeta para cadausuario, tanto para los usuarios preestablecidos, 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).

Cuando un usuario inicia sesión por primera vez se encuentra con su escritoriocompletamente vacío. Es el contenido de la subcarpeta “Escritorio” de su carpeta de trabajo/home/nombre_del_usuario donde, también de forma automática, se generan variassubcarpetas y ficheros, unas destinadas a contener cierto tipo de ficheros que genere el usuarioy otras pertenecientes al perfil propiamente dicho del usuario:

– Descargas.- aloja los ficheros descargados de internet.– Documentos.- destinada a contener los documentos que genere el usuario.– Escritorio.- contiene los elementos que se muestran y se crean en el escritorio.– 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.– El contenido de /etc/skel .- el contenido de este directorio se le copia a todos los

usuarios que se creen. Ver ejemplo en: http://www.ite.educacion.es/formacion/materiales/130/cd/redesubuntu/ubuntu-configuracionavanzada/carpeta_skel.html.

– Un gran número de carpetas y ficheros ocultos (su nombre comienza por un punto, porejemplo .mozilla) que contienen la configuración del usuario para los diferentesprogramas, las instrucciones que deben ejecutarse al iniciar la sesión, etc.

Página.- 127

Page 130: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Para mostrar los ficheros ocultos basta con marcar la casilla de verificación “Mostrarlos archivos ocultos” que se encuentra en la opción “Ver” de la barra de menú delnavegador de archivos Nautilus.

Página.- 128

Fig 48: Carpeta personal del usuario

Fig 49: Mostrar archivos ocultos

Page 131: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

El fichero /etc/adduser.conf contiene parámetros que se aplican a los nuevos usuariostales como localización del directorio de trabajo, permisos iniciales, etc.

La utilidad gráfica instalada por defecto para administrar usuarios es extremadamentebásica, permitiendo modificar poco más que la contraseña del usuario. Existe un grupo deherramientas que se instala de forma conjunta bajo el nombre gnome-system-tools y seejecutan individualmente con los nombres users-admin, network-admin, shares-admin y time-admin que ofrecen más posibilidades. En concreto users-admin permite gestionar usuarios ygrupos mediante un interface como el que se muestra a continuación:

Página.- 129

Fig 50: Carpeta con ficheros ocultos

Fig 51: Herramienta users-admin

Page 132: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Existe una infinidad de utilidades más completas como el propio Webmin. Desde lalínea de comandos las instrucciones usermod y groupmod admiten un gran número deopciones para modificar diferentes propiedades de los usuarios y grupos. También puedenmodificarse directamente los ficheros /etc/passwd, /etc/shadow o /etc/group que contienendatos de los usuarios, contraseñas y grupos respectivamente.

En cuanto a la configuración del escritorio, su comportamiento es básicamente elmismo 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 laque se van a mostrar los demás elementos y, además, tiene algunas propiedades diferenciadasa las que se accede a través de la opción “Cambiar el fondo del escritorio”, accesible a travésde su menú contextual (click con el botón derecho del ratón sobre un espacio vacío delescritorio) y desde el menú Sistema – Configuración del sistema – Apariencia.

Aunque la opción mostrada es “Cambiar el fondo del escritorio”, son más lasoperaciones que se pueden realizar y se encuentran recogidas en las fichas Aspecto yComportamiento.

Existen múltiples utilidades que gestionan el aspecto y comportamiento del escritorio,entre las más utilizadas se encuentra Compiz (compiz-fusion-icon).

Las carpetas y ficheros ocultos que se crean dentro de la carpeta de trabajo del usuariopueden 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 aliniciar el usuario una sesión en modo texto.

Página.- 130

Fig 52: Propiedades del escritorio

Page 133: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

– Ficheros y carpetas con las configuraciones personales del usuario para los diferentesprogramas.- como es el caso de la carpeta .mozilla que contiene la configuración deFirefox del usuario. Así, el historial, los marcadores, etc. de Firefox serán diferentespara cada usuario.

Otro aspecto que afecta al entorno del usuario, y que hace referencia a lasautorizaciones que se le asignan, se determina en el momento de la creación del usuario. Laventana correspondiente a la creación de cuenta de usuario nueva (menú Sistema –Configuración del sistema – Usuarios y grupos – Desbloquear – Añadir usuario) permiteelegir como tipo de cuenta entre Administrador y Estándar. La utilidad users-admin permiteelegir entre Administrador, Usuario del escritorio y Personalizado, que coincide con elEstándar. Cada perfil tiene unas atribuciones:

– Administrador.- usuario con privilegios para administrar el equipo. Es incluido en losgrupos adm, sudo, lpadmin y sambashare.

– Usuario del escritorio.- puede utilizar las aplicaciones instaladas pero no administrar elequipo. Es incluido en los grupos adm, dialout, fax, cdrom, floppy, tape, dip, video,plugdev y fuse.

– Personalizado o Estándar.- puede utilizar la mayor parte de las aplicaciones instaladas.No se incluye en ningún grupo.

La configuración del usuario preestablecido “Invitado” requiere una atención especial.Cuando este usuario inicia una sesión en el entorno gráfico se reinician sus ficheros deconfiguración y se borran las carpetas y ficheros generados en su sesión anterior. Su carpetade trabajo se sitúa en /tmp.

Página.- 131

Fig 53: Administración de perfiles con users-admin

Page 134: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

La cuenta de invitado puede desactivarse añadiendo al fichero:

/usr/share/lightdm/lightdm.conf.d/50-ubuntu.conf

la línea: “allow-guest=false” (sin las comillas).

El perfil del usuario Invitado puede considerarse un perfil local obligatorio donde loscambios de configuración y los ficheros creados se pierden al cerrar la sesión. En la webhttps://help.ubuntu.com/community/CustomizeGuestSession se profundiza en elfuncionamiento del usuario invitado y se documenta cómo crear otros usuarios decaracterísticas similares.

4.7 Gestión centralizada de usuarios

La centralización de usuarios en uno o varios equipos de la red puede facilitar deforma muy significativa el trabajo de administración y control de los equipos y de la red en suconjunto. 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 decarpetas. Aunque son dos aspectos perfectamente delimitados, muy frecuentemente elservidor que contiene y autentica a los usuarios también contiene algunas de sus carpetas detrabajo.

Dependiendo de la funciones que se quieran centralizar pueden distinguirse trescategorías:

– Compartir carpetas, archivos e impresoras.- los dos protocolos más utilizados son NFSy SMB/CIFS.

Compartir una carpeta permite que desde otros equipos se pueda tener acceso alcontenido de la misma. Este acceso puede ser esporádico para intercambiar algúnfichero o continuado si lo que se comparte es, por ejemplo, una carpeta que contienelos perfiles de los usuarios o sus carpetas de trabajo. Si lo que contienen son losficheros que conforman el perfil de los usuarios, asignando los permisos adecuadospuede controlarse que los usuarios puedan cambiar o no su perfil.

Como ya se ha mencionado, algunas de las consideraciones a tener en cuenta para quelas carpetas de los usuarios tengan una ubicación local o centralizada son: centralizarlos directorios de inicio de sesión de los usuarios, la realización de copias deseguridad, el espacio requerido, los dispositivos removibles disponibles, la carga de lared, etc.

Página.- 132

Page 135: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Tampoco se puede olvidar la situación generalizada de la existencia de diferentessistemas operativos en la red y que dos de los protocolos más utilizados para compartirrecursos son NFS en sistemas Linux/Unix y SMB/CIFS en sistemas Windows.

Teniendo en cuenta que el protocolo utilizado por los sistemas Windows paracompartir o conectarse a recursos compartidos es SMB/CIFS y que en ambosprotocolos (NFS y SMB/CIFS) la configuración del cliente (el que se conecta) esdiferente a la del servidor (el que comparte), la casuística para un equipo Linux es lasiguiente:

• Si va a compartir carpetas con otros sistemas Linux deberá cargar y configurar elservicio de “servidor de NFS”.

• Si va a hacer uso de carpetas que otros sistemas Linux comparten deberá cargar yconfigurar el servicio de “cliente de NFS”.

• Si va a compartir carpetas con sistemas Windows deberá cargar y configurar elservicio de “servidor Samba (SMB)”.

• Si va a conectarse a carpetas compartidas por sistemas Windows deberá cargar yconfigurar el servicio de “cliente Samba (SMB)”.

– Autenticación y permisos de acceso.- permite establecer y comprobar la identidad deun usuario o equipo de la red y determinar los permisos de acceso a recursos comoficheros, carpetas, impresoras, etc. Dos de los servicios de autenticación másutilizados son NIS y Kerberos.

– Servicios de directorio.- centralizan toda la información susceptible de compartir através de la red, incluyendo las dos funciones anteriores. Los dos servicios másutilizados son LDAP (Lightweight Directory Access Protocol) en sistemas Linux yActive Directory de Microsoft.

Estos últimos servicios, por su complejidad, serán tratados en temas independientes.

4.7.1 Compartir carpetas con NFS

NFS (Network File System) permite compartir carpetas y ficheros entre sistemas através de la red. El equipo servidor de NFS comparte alguna de sus carpetas o ficheros y elcliente de NFS se conecta y hace uso de las carpetas o ficheros que comparte el servidor. Unequipo puede ser servidor y cliente de NFS al mismo tiempo, es decir, puede compartir algunade sus carpetas o ficheros y hacer uso de las carpetas o ficheros que otro servidor comparte.

Página.- 133

Page 136: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

NFS permite que los datos usados de forma común puedan almacenarse en una únicacarpeta compartida localizada en un equipo accesible a través de la red, centralizar losdirectorios de inicio de los usuarios, compartir dispositivos de almacenamiento interno yexterno 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 lainstrucción “sudo apt-get install nfs-kernel-server”.

– Configurar o especificar los directorios o ficheros a compartir. Cada recurso que secomparte se especifica en el fichero /etc/exports añadiendo una línea por cada recursocompartido, siguiendo la sintaxis que se muestra a continuación y que puede serconsultada 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 sudirección IP, por ejemplo “192.168.0.5”.

• Un grupo de red NIS.- tendrá la forma @grupo.

• Uso de caracteres comodines.- Utilizando los caracteres “*” y “?” en el nombreFQDN de los equipos puede referenciarse a, por ejemplo, todos los equipos de unsubdominio (*.informatica.tiernogalvan.es).

• Subredes.- Especificando la dirección IP de la red y la máscara en cualquiera desus dos notaciones (decimal o longitud), por ejemplo 192.168.0.0/24 o192.168.0.0/255.255.255.0. No deben utilizarse caracteres comodines en lasdirecciones IP.

opciones.- caracteriza y delimita la forma en que se comparte el recurso. Para ver unalista 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 unacoma (sin espacios). Entre las más utilizadas están:

• rw.- permite realizar operaciones de lectura y escritura en el directorio/fichero.

Página.- 134

Page 137: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

• 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 sistemasde 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 mismospermisos que el usuario root del servidor sobre la carpeta.

• insecure.- permite el uso de puertos superiores al 1024.

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) 192.168.8.0/22(ro,nohide)

Puesto que el conocimiento y comprensión de las opciones que se pueden utilizar es eltalón de Aquiles de este servicio, puede hacerse uso de herramientas como Webminque 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 suestado, lanzarlo, pararlo, reiniciarlo, etc. respectivamente.

Si se desea que el proceso no se lance de forma automática al iniciar el sistema, puedeutilizarse el comando sysv-rc-conf para desactivarlo de los niveles de ejecucióncorrespondientes (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 delservidor. 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.- 135

Page 138: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

– Si se desea que la operación de montaje se realice de forma automática al iniciar elsistema deberá incluirse una línea en el fichero /etc/fstab, que tendrá una forma similara 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/ocliente 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 seencuentre 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 delequipo local puede utilizarse la instrucción “sudo ifconfig” y para hacer ping alequipo 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 alpropietario, al grupo y a los otros. Con un usuario administrador se puede ejecutar:

sudo mkdir /home/NISsudo 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 yejecución de webmin se detalla en el anexo 1 de este manual. Su ejecución se lanza através del explorador, Firefox por ejemplo, especificando la dirección“http://localhost:10000”; a continuación solicita la autenticación y debe introducirseroot y su contraseña.

Si Webmin se instaló después de nfs-kernel-server, la subopción “Exportaciones deNFS” se encuentra dentro de la opción “Red”. Si se instaló antes puede buscarseespecificando “NFS” en el cuadro de texto para búsquedas.

Página.- 136

Page 139: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Una vez elegida la opción “Exportaciones de NFS” se elige “Añadir una nuevaexportació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”. Sehabrá 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.- 137

Fig 54: Programa de administración Webmin

Page 140: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

– En el cliente se crea la carpeta /home/NIS y se establecen los permisos adecuados:

sudo mkdir /home/NISsudo 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á comouna carpeta virtual en el sentido de que todas las operaciones que se realicen en ellarealmente se harán efectivas en la carpeta /home/NIS del servidor. Al desmontar lacarpeta del cliente desaparecerá su contenido pero permanecerá en la carpeta delservidor. 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 lamisma instrucción del apartado anterior.

• Se desmonta la carpeta en el cliente con “sudo umount /home/NIS” y secomprueba que el fichero ha desaparecido del cliente pero permanece en elservidor.

• 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 formaautomá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 montadocorrectamente y contiene el fichero creado.

– Finalmente, apagar los dos equipos, iniciar el servidor, esperar a que pida laautenticación y en ese momento iniciar el cliente. Comprobar que la carpeta se hamontado correctamente, es decir, que en la carpeta /home/NIS del cliente se encuentrael fichero creado y que físicamente se encuentra en el servidor.

– Una vez comprobado que NFS funciona correctamente se puede proceder a crear dosusuarios en el equipo cliente (us_nfs_01 y us_nfs_02) asignándoles como directorio detrabajo la carpeta /home/NIS.

Página.- 138

Page 141: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Una vez dados de alta, con cada uno de ellos se iniciará una sesión y se creará unfichero en su carpeta personal. Se comprueba que la estructura de directorios que segenera por cada usuario queda creada en el servidor NFS, que si se desmonta en elcliente la carpeta desaparece dicha estructura en el cliente pero no en el servidor y queal volver a montar la carpeta vuelve a aparecer.

4.7.2 Compartir carpetas e impresoras con Samba

Una de las formas más comunes de compartir ficheros e impresoras con equiposWindows o con equipos Linux configurados como clientes Samba es configurar el equipocomo servidor Samba. Para ello, en primer lugar hay que instalar el paquete “samba” aunqueen la versión 14.04 de Ubuntu se instala automáticamente al compartir una carpeta. Así, sepuede iniciar una sesión con un usuario con privilegios de administrador (para que no se leplanteen problemas si hay que instalar algún software), crear una subcarpeta llamada“Para_compartir” dentro de la carpeta “Público” de la carpeta de trabajo del usuario, acceder asu menú contextual (click con el botón derecho en el icono de la carpeta) y elegir la opción“Recurso compartido de red local”.

En la ventana que aparece habrá que marcar el cuadro de verificación “Compartir estacarpeta”. En ese momento, si samba no está instalado, el sistema dará opción a hacerlo:

Página.- 139

Fig 55: Compartir carpeta

Fig 56: Instalación automática de samba

Page 142: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Una vez instalado el paquete samba, al compartir una carpeta habrá que especificar:

– Nombre del recurso compartido.– Comentario (opcional).– Permisos de acceso. Se puede elegir si los demás usuarios tendrán permiso de escritura

y si estará accesible para el usuario invitado. Si para otorgar estos permisos esnecesario cambiar los permisos originarios de la carpeta se abrirá una ventanainformando de la situación y permitiendo el cambio con un simple click.

Para acceder a la carpeta desde otro equipo puede hacerse con el navegador dearchivos Nautilus, a través de la opción “Examinar red”.

Existen paquetes que permiten una administración de samba más fácil. Entre ellos seencuentran system-config-samba y swat. Hay cantidad de páginas web en las que se explicatodo el proceso. https://lavidaestux.wordpress.com/2012/11/08/samba-configurar-nuestra-red-local-lan-en-ubuntu-para-compartir-archivos-e-impresoras/ es una de ellas.

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 mayorparte de ellas comentadas, que proporcionan explicaciones y ejemplos sobre algunas de lasposibles opciones a utilizar para compartir carpetas e impresoras. Ciertas líneas de comentarioutilizan 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.

En /var/lib/samba/usershares se crea un fichero de configuración por cada recurso quecomparten los usuarios.

Samba admite configuraciones más o menos sencillas cuando se trata simplemente decompartir alguna carpeta o impresora pero también admite configuraciones muy complejascuando se desea que, por ejemplo, el equipo realice las funciones de controlador de undominio, de controlador secundario de dominio, o que gestione los grupos, accesos ypermisos de los diferentes usuarios, equipos, etc.

El fichero /etc/samba/smb.conf se encuentra dividido en secciones. Cada secciónempieza con un nombre de sección encerrado entre corchetes ([seccion]) y finaliza con elsiguiente 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.

Página.- 140

Page 143: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

– [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 unasección cuyo nombre identificará al recurso ante los clientes. Los parámetros incluidos encada sección tendrán la forma “nombre = valor”.

Dada la enorme cantidad de parámetros que se pueden incluir en el fichero, esconveniente acotar el desarrollo que se desea hacer en este apartado del servicio samba puestoque un estudio exhaustivo debería ser desarrollado a lo largo de varios temas.

Las prácticas que se desarrollan a continuación muestran cómo compartir carpetaseditando y modificando el fichero /etc/samba/smb.conf y , por otro lado, utilizando algunas delas muchas herramientas gráficas que permiten administrar el servicio. Las herramientaselegidas son: system-config-samba, swat, webmin y nautilus-share.

Más herramientas relacionadas con la gestión de samba son: gadmintools, gadmin-samba, samba-tools, thunar-shares, smb4k, gnome-user-share, smb-nat, jftp, qtsmbstatus-server, 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 ymodificando /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

Página.- 141

Page 144: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

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.copiasudo gedit /etc/samba/smb.conf

Se buscan y se modifican las líneas de la sección [global] que contienen losparámetros que establecen el nombre del grupo de trabajo (workgroup) y el tipo de seguridada utilizar (security), dejando dichas líneas de la forma:

workgroup = AULAB25security = user

Se añade al final del fichero editado (smb.conf) una nueva sección con los parámetrosque permiten compartir la carpeta creada anteriormente (/srv/samba/Carpeta01).

La sección puede quedar de la forma:

[Carpeta01]comment = Carpeta01 compartida por el equipo MaX60_S path = /srv/samba/Carpeta01browseable = yesguest ok = yeswriteable = yescreate 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 porSamba pueden estar situadas en cualquier parte del árbol de directorios, en esteejemplo se ha utilizado /srv/samba para seguir el estándar de jerarquía del sistema dearchivos (FHS o Filesystem Hierarchy Standard) y /srv es el directorio utilizado paraalbergar los datos servidos por el equipo. Cuando los datos son servidos por un usuariodeberán encontrarse en algún subdirectorio de /home.

– browseable.- permite a los clientes entrar o navegar por las subcarpetas de la carpetacompartida.

– 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).

Página.- 142

Page 145: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

– create mask.- establece los permisos para los ficheros y carpetas creados por losclientes dentro del recurso compartido. El número que se especifica sigue las mismasnormas que el utilizado con la instrucción “chmod”. En el ejemplo, 0755 equivale alos permisos rwxr – xr – x.

Finalmente, se reinician los servicios smbd y nmbd con:

sudo /etc/init.d/smbd stopsudo /etc/init.d/nmbd stopsudo /etc/init.d/nmbd startsudo /etc/init.d/smbd start

Ahora hay que comprobar que el servidor funciona correctamente. Algunas de laspruebas 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 ala de la figura.

– Ejecutar desde un cliente Linux la instrucción “smbclient -L ip_del_servidor”.

– Desde un cliente Linux, a través del explorador de archivos Nautilus, a través de laopción “Examinar red”.

– Desde un cliente Linux, con el explorador Firefox, especificando la dirección“smb://ip_del_servidor”.

Página.- 143

Fig 57: Resultado de la instrucción "smbclient -L localhost"

Page 146: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

– Desde un cliente con Windows XP, con botón derecho sobre el icono “Mis sitios dered” - Conectar a unidad de red, eligiendo como unidad, por ejemplo “Z:” y comocarpeta “\\nombre_del servidor | ip_del_servidor\nombre_recurso_compartido”. En micaso como carpeta he utilizado \\MaX60_S\Carpeta01.

Práctica (Samba: compartir una carpeta usando system-config-samba)

Crear y compartir la carpeta /srv/samba/Carpeta02 haciendo uso de la herramientagrá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/Carpeta02sudo 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 compartirrecursos 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 laherramienta.

Página.- 144

Fig 58: Cliente Windows XP

Page 147: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

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 herramientagrá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 lapráctica anterior.

Se instala el paquete swat y se lanza su ejecución desde Firefox, especificando comodirección “localhost:901”. Pedirá nombre de usuario y contraseña y deberán ser introducidoslos datos correspondientes al usuario root. Si se introduce otro usuario y contraseña diferentesa 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 paracada uno de ellos.

– Wizard.- permite establecer el tipo de servidor, anular las lineas de smb.conf que soncomentarios o que asignan valores por defecto a los parámetros.

Página.- 145

Fig 59: System-config-samba

Page 148: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

– Status.- muestra el estado de los diferentes servicios y las conexiones actuales.

– View.- Muestra el fichero /etc/samba/smb.conf sin los comentarios y permitemodificar su contenido.

– Password.- permite gestionar los usuarios y contraseñas de los usuarios de 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 situadaencima del cuadro de texto y en la parte inferior de la página aparecerán una serie de botonesy cuadros de texto que permitirán establecer los parámetros para este recurso compartido. Sepueden 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 sepuede 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 elservidor samba y a la que conviene dedicar cierto tiempo de estudio para conocer elsignificado de todas sus opciones y posibilidades.

Página.- 146

Fig 60: Swat

Page 149: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

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.confanulando todas las líneas de comentario y todas las que asignan valores por defecto alos parámetros.

– La página “Shares”, además de permitir crear recursos compartidos, permite modificaro borrar los ya existentes. Para ello en primer lugar hay que elegir el recurso en la listadesplegable situada entre los botones “Choose Share” y “Delete Share” y acontinuación pulsar sobre uno de los dos botones mencionados. Si se están realizandomodificaciones sobre un recurso compartido y en un momento dado se desean anularlas modificaciones para que aparezcan de nuevo las opciones iniciales, basta conpulsar sobre el botón “Reset Values”.

– Las opciones básicas mostradas para los recursos compartidos son unas 15. Paracambiar a la modalidad de “Vista avanzada”, que muestra unas 100 opcionesdiferentes, 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 lamisma y un botón “Set Default” que permite asignar al parámetro la opción pordefecto.

– Para evitar incompatibilidades sobre el fichero /etc/samba/smb.conf, se recomienda noalternar el uso de esta herramienta con el uso de otras. Dicho de otra forma, si se eligeswat para configurar samba, debe utilizarse siempre swat para gestionar los recursoscompartidos.

Práctica (Samba: compartir una carpeta usando nautilus-share)

Iniciando una sesión con un usuario distinto a los predeterminados, crear y compartiruna 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 lared local”. Este privilegio lo que hace realmente es que usprueba01 sea miembro delgrupo “sambashare”, que es el grupo que tiene permisos para escribir en eldirectorio /var/lib/samba/usershares, que es donde se guardan los ficheros deconfiguración de los recursos que los usuarios comparten.

– Se inicia la sesión con el usuario usprueba01 y se crea dentro de su carpeta personaluna subcarpeta llamada “Carpeta04”.

Página.- 147

Page 150: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

– Se accede al menú contextual de la carpeta “Carpeta04” (botón derecho sobre lacarpeta), se elige la opción “Opciones de compartición” y se introducen los valoresadecuados.

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ésdel menú Aplicaciones – Sistema – Ayuda y Soporte – Temas avanzados que explicade forma sencilla y con ejemplos el uso del servicio.

– La instrucción “man smb.conf” que muestra un texto de unas 8.000 líneas explicandotodas 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 seaccede a través de http://samba.org/samba/docs/man/Samba-HOWTO-Collection/.

4.7.3 Centralización de la autenticación de usuarios. NIS.

Centralizar la autenticación de los usuarios consiste en dar de alta a los usuarios enuno o varios servidores de la red y permitir que esos usuarios inicien la sesión desde otrosequipos distintos a aquellos en los que han sido dados de alta. Esta centralización tieneenormes ventajas a la hora de administrar usuarios en aquellas redes donde los usuarios notienen 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 paracada alumno sin importar el ordenador que posteriormente ocupará cada uno de ellos y sintener que ir dando de alta en cada ordenador del aula a los posibles usuarios.

Página.- 148

Fig 61: Nautilus-share

Page 151: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

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 unnombre 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 laconsulta de usuarios y contraseñas (centralización de autenticación) o puede realizar lasfunciones 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óndesde 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 obases de datos que contienen la información de las cuentas de usuarios, claves, etc. La funciónde los clientes NIS es consultar los ficheros de los servidores para comprobar, por ejemplo, siel nombre de la cuenta y su contraseña son correctos.

Los datos sobre las cuentas de usuario, sus contraseñas y grupos de usuarios seencuentran en los ficheros /etc/passwd, /etc/shadow y /etc/group respectivamente.

Dada la importancia del servidor NIS, puesto que tiene la responsabilidad deautenticar a los usuarios, la configuración generalizada en una red consta de un servidormaestro y uno o más servidores esclavos que contienen una réplica de los ficheros delservidor maestro. En el caso de que el servidor maestro se caiga serán los servidores esclavoslos que se encarguen de realizar la autenticación. Esto conlleva que el servidor maestro envíeperiódicamente las modificaciones de sus ficheros a los servidores esclavos.

Antes de proceder a la instalación y configuración del servicio NIS es convenientetener en cuenta las siguientes consideraciones:

– Aunque la autenticación del cliente NIS es remota su sesión y ejecución es local por loque si un usuario creado en el servidor NIS tiene asignado como directorio detrabajo /home/usuario, dicho directorio deberá crearse y tener asignados los permisosadecuados en el equipo local antes de que el usuario inicie la sesión. Si al iniciar lasesión el directorio de trabajo del usuario no existe, el usuario intentará crearlo peropara conseguirlo deberá tener los permisos adecuados. De forma predeterminada eldirectorio /home tiene como propietario al usuario root y solamente él puede crearsubdirectorios (permisos rwxr-xr-x); por esta razón el directorio del usuario lo crearoot al dar de alta al usuario ya que 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 undirectorio, por ejemplo /home/NIS, con todos los permisos para todos los usuarios yasignar a aquellos usuarios que se conectan mediante NIS el directorio de trabajo/home/NIS/nombre_usuario.

Página.- 149

Page 152: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Otra solución, no aconsejable, es modificar los permisos del directorio /home delcliente para que todos los usuarios puedan crear subdirectorios.

Finalmente, la solución más aconsejable pasa por centralizar en un servidor lascarpetas de los clientes NIS, como se detalla más adelante en este mismo tema.

– La versión 14.04 de Ubuntu, con el paquete users-admin que administra las cuentas deusuario y grupo, al dar de alta un nuevo usuario crea su directorio de trabajo antes depermitir especificar donde se quiere crear; Si se desea que los usuarios tengan sucarpeta 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 usuariode /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 sehacen ping.

• El nombre de cada equipo, contenido en el fichero /etc/hostname, es el adecuado ydistintos todos ellos. Esta condición es aconsejable aunque no obligatoria.

• Los clientes tienen bien asignado el nombre de los servidores a sus direcciones ipen 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 asignara 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 deusuario. Configurar otra máquina virtual como cliente NIS e iniciar una sesión con el usuariocreado en el servidor NIS.

Antes de proceder a la instalación de paquetes, se deben tomar ciertas decisiones yrealizar ciertas comprobaciones:

1. Control de direcciones ip y nombres de equipo.- para esta práctica se va a asignar a lamáquina virtual que realizará la función de servidor NIS el nombre MaX60_S y ladirección ip 192.168.10.16; a la que hace de cliente NIS tendrá el nombre MaX60_C yla dirección ip 192.168.10.17. Se verificará que ambas máquinas se hacen ping.

Página.- 150

Page 153: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

El nombre asignado al equipo se encuentra en el fichero /etc/hostname. Para ver sucontenido puede utilizarse la instrucción “cat /etc/hostname” y para modificarlo “sudogedit /etc/hostname”. Si se modifica el nombre del equipo debe reiniciarse o de locontrario algunos programas no funcionarán correctamente.

2. Control de los nombres de los equipos de la red y del nombre del dominio nis.- paraesta práctica se utilizará como nombre de dominio “tiernogalvan.es”. Si se desea quelos 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. Elfichero que contiene estos datos es /etc/hosts. Si en la red hay configurado un servidorDNS esta operación no será necesaria. Para probar su funcionamiento en la máquinaMaX60_C se pueden ejecutar las instrucciones:

ping 192.168.10.16 (funcionará correctamente)ping MaX60_S (no funcionará)ping MaX60_S.tiernogalvan.es (no funcionará)

Se edita en MaX60_C el fichero /etc/hosts para que quede con los datos:

127.0.0.1 MaX60_C MaX60_C.tiernogalvan.es localhost127.0.1.1 MaX60_C192.168.10.16 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:

127.0.0.1 MaX60_S MaX60_S.tiernogalvan.es localhost127.0.1.1 MaX60_S192.168.10.17 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 unasdirecciones 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 yasignarle los permisos adecuados:

sudo mkdir /home/NISsudo chmod a+rwx /home/NIS

4. Creación del usuario.- en el servidor NIS (MaX60_S) se va a crear el usuario usnis01con el que después se hará el login en MaX60_C.

Página.- 151

Page 154: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Para que al crear el usuario se genere su carpeta de trabajo en /home/NIS hay queeditar el fichero /etc/adduser.conf (sudo gedit /etc/adduser.conf), buscar la línea quecontiene “DHOME=/home” y cambiarla por “DHOME=/home/NIS”.

A continuación se crea el usuario “usnis01” y se comprueba que su directorio detrabajo se ha creado correctamente (ls /home/NIS).

5. Software necesario.- con Synaptic se comprueba que en ambas máquinas se encuentrainstalado el paquete “portmap”, instalándolo si es necesario.

6. Si se hubiera decidido que las carpetas de trabajo de los usuarios deberían quedarcentralizadas en un servidor NFS, que puede ser el propio servidor NIS, ahora sería elmomento de realizar esta configuración adicional, tanto del servidor como del clienteNFS.

Una vez realizadas las tareas preliminares, se puede proceder a la instalación delservidor NIS:

7. Para asegurarse de que el servicio nis de MaX60_C podrá acceder al servidor se puedeeditar el fichero /etc/hosts.allow y añadir la línea:

portmap ypserv ypbind : 192.168.10.17

8. Se instala el paquete nis con “sudo apt-get install nis”. Durante la instalación sesolicita el nombre del dominio y habrá que especificar “tiernogalvan.es”. El nombredel dominio queda registrado en el fichero /etc/defaultdomain y podrá ser modificadoeditando el fichero o mediante la instrucción “domainname” que sin parámetrosmuestra el contenido de dicho fichero y con el formato “domainnamenombre_dominio” establece como nombre de dominio el nuevo especificado.

Durante la instalación se intenta conectar con el servidor nis (mensaje “binding to YPserver ...”) hasta en once ocasiones y finalmente se muestra un error ([Fail]) debido aque 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 lavariable “NISSERVER” el valor “master” (NISSERVER=master). De esta forma lamá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 lalinea que contiene “OPTIONS=”-i 127.0.0.1””.

11. Se edita el fichero /etc/yp.conf para establecer el nombre del servidor NIS añadiendola línea:

ypserver MaX60_S.tiernogalvan.es

Página.- 152

Page 155: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

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 ficherosque contienen los nombres de usuario, contraseñas, etc. El nombre que la instrucciónmuestra en primer lugar es el primero que encuentra asignado en el fichero /etc/hosts ala dirección IP 127.0.0.1.

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ánser 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 (o bien “sudo service portmap restart”)sudo /etc/init.d/nis 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 generarlos 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 configurargdm para que muestre los nombres de los usuarios para poder iniciar la sesióneligiendo el usuario en vez de tener que teclear su nombre. En MaX v.6.0 ésa es laconfiguració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 nombrede 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 alfichero /etc/hosts.allow la línea:

portmap: 192.168.10.16

Página.- 153

Page 156: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

19. Para indicar al sistema que además de los usuarios locales puede iniciarse la sesióncon los usuarios del servidor nis pueden utilizarse dos métodos:

• Modificar el fichero /etc/nsswitch.conf añadiendo la palabra nis en aquellas líneasque identifican alguno de los servicios a consultar. En este caso concreto serán laslineas relativas a passwd, group y shadow que quedarán de la forma:

passwd: compat nisgroup: compat nisshadow: compat nis

Si se añadiera nis a la linea relativa a “hosts” podría llegar a conseguirse que elservidor 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 loscaracteres “:” 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 deMaX60_S.tiernogalvan.es, la línea a añadir en /etc/yp.conf debería de ser:

ypserver 192.168.10.16

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.- 154

Page 157: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

22. Se reinicia la máquina y en la ventana de elección de usuario se introducen los datosrelativos al usuario “usnis01” dado de alta en MaX60_S. La autenticación deberealizarse sin problemas.

Pueden realizarse algunas pruebas adicionales para analizar el funcionamientocorrecto o incorrecto del servicio:

– En el punto 7 puede probarse a especificar en el fichero /etc/hosts.allow una lineadiferente:

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 lamáquina el servidor NIS sigue haciendo los once intentos de conexión antes demostrar el mensaje “[Fail]” puede deberse a la existencia de cierta incompatibilidadcon 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 elnúmero 18, es decir, existe S18nis. Es conveniente ejecutarlo con el número 29, lo quese consigue con las instrucciones:

sudo update-rc.d -f nis removesudo update-rc.d nis start 29 1 2 3 4 5 .

Observar la existencia de un punto al final de la segunda instrucción.

Con estas instrucciones se reduce enormemente el tiempo que nis tardaba enejecutarse 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 laslíneas adecuadas.

En Internet puede encontrarse información abundante sobre NIS; algunas direccionesinteresantes, que describen por ejemplo la configuración de un servidor esclavo, son:

https://help.ubuntu.com/community/SettingUpNISHowTohttp://patatux.net/nis-2/

cuyos contenidos simplificados se adjuntan como anexo al final del libro.

Página.- 155

Page 158: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

De forma generalizada el servicio NIS se utiliza conjuntamente con NFS haciendo quetanto la autenticación como las carpetas de trabajo se gestionen de forma centralizada. Lagestión conjunta no conlleva problemas adicionales a la configuración individual de ambosservicios, siendo indiferente el orden de instalación y configuración.

4.8 Actividades

1. En Ubuntu, crear un usuario con nombre “usprueba02”, nombre real “Anton Martin”,perfil de “Usuario del escritorio”, contraseña “pasprueba02” y con un teléfono decontacto. Comprobar los privilegios que se le atribuyen automáticamente, así como eldirectorio de trabajo y su intérprete de comandos.

2. En Ubuntu, 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 elcorrecto funcionamiento de la autorización.

3. Crear el usuario “Administrador2”, con privilegios de administrador, en WindowsServer 2008 a través del panel de control. Crear el usuario “usprueba01” con lasHerramientas administrativas.

4. Crear con un usuario distinto de root el directorio /prueba y a continuación borrarlo.

5. Ejecutar el comando users-admin con el usuario usprueba01.

6. Establecer para un usuario un máximo de 2 login's simultáneos y comprobarlo.

7. Limitar el acceso de un usuario a unos dias y horas determinadas.

8. Establecer una cuota de disco para el directorio de los usuarios.

9. En Windows, iniciar una sesión como usuario usprueba01 y ejecutar “cmd” comousuario Administrador a través del comando “runas”.

10. En Windows, iniciar una sesión como usuario usprueba01 y ejecutar la “Configuraciónregional y de idioma” del Panel de control haciendo uso de la opción “Ejecutar como”del menú contextual (click con botón derecho).

11. Crear la carpeta /usuarios con los permisos adecuados para que los usuarios puedancrear subcarpetas. Crear el usuario usprueba2 y hacer que su directorio personal sea/usuarios/usprueba02. Ver las carpetas y ficheros ocultos que se creanautomáticamente. Conectarse a internet con este usuario y buscar el directorio ocarpeta que contenga alguna información acerca de las páginas a las que se haconectado.

Página.- 156

Page 159: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

12. Probar a cambiar la apariencia de las ventanas para el usuario usprueba02 y comprobarel resultado. Probar a personalizar el puntero del ratón y los bordes y colores de lasventanas.

13. Cambiar el fondo del escritorio del usuario usprueba01 y probar la diferencia entre elestilo mosaico y el ampliación. Aplicar un estilo que permita hacer uso de unadegradación vertical entre un color amarillo y uno rojo.

14. Probar los efectos visuales “Ventanas Gelatinosas” y “Ventanas 3D”.

15. Enumerar, añadiendo una pequeña descripción y un ejemplo, todas las utilidades delmenú Aplicaciones – Sistema – Preferencias que permitan configurar algunacaracterística del perfil del usuario.

16. Añadir un usuario al fichero /etc/homealumno/config para que su perfil se reinicie aliniciar la sesión. Comprobar su funcionamiento.

17. Crear con Sabayon un perfil que se aplique a los usuario usprueba02 y usprueba03 ycomprobar su funcionamiento.

18. Configurar con máquinas virtuales un servidor y un cliente NFS.

19. Configurar en una máquina virtual un servidor samba que comparta 5 carpetas, cadauna de ellas haciendo uso de una herramienta diferente: gedit (editando el fichero deconfiguración), system-config-samba, swat, webmin y nautilus-share. Verificar elfuncionamiento desde una máquina virtual cliente.

20. Configurar con máquinas virtuales un servicio NIS con un servidor maestro, unservidor esclavo y un cliente.

21. Establecer un servidor NFS y NIS con un cliente de ambos servicios.

Página.- 157

Page 160: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

5 ADMINISTRACIÓN DE SOFTWARE DE BASE II. GRUPOS LOCALES

5.1 Aspectos didácticos

Objetivos:

– Conocer los tipos usuarios y de permisos de Linux.– 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 mane info de cada una de las instrucciones tratadas. También existen gran cantidad de documentosen 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 depermisos setuid, setgid y sticky.

También se trata con cierta profundidad las listas de control de acceso (ACL), sumanejo y administración.

Por último, se muestra una visión bastante general de los grupos predefinidos en elsistema y las autorizaciones y permisos que reportan.

Temporización: 10 horas.

Página.- 158

Page 161: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

5.2 Administración de grupos locales

La función de los grupos es simplificar la administración de usuarios. Los dos casosfundamentales para los que se generaliza el uso de grupos son:

– Administración de recursos.- se crean grupos según los diferentes permisos que sepuedan asignar a los diferentes recursos. Por ejemplo, al instalar una impresora sepuede crear el grupo “gr-impresores” al que se le otorga permiso para imprimir, y elgrupo “gr-adminimpre” al que se le otorgan permisos para imprimir y para administrarla 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éneasde los usuarios. Por ejemplo, los usuarios creados para un grupo determinado dealumnos (1º de bachillerato, A) pueden incluirse en un grupo, “gr-bach1A”, dado quelos 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 losmismos las cuentas de los usuarios e incluso otros grupos.

El objetivo último consiste en delimitar los tipos de acceso a los diferentes elementosu objetos (ficheros, directorios, dispositivos, …) de forma organizada y simple

5.2.1 Derechos de usuario

Linux fue concebido desde un principio como un sistema multiusuario, es decir, paraser usado por varios usuarios al mismo tiempo. Esta es una de las grandes diferencias conrespecto al sistema operativo Windows de Microsoft.

La característica más importante es la obligación de registrarse en el sistema al iniciode cada sesión de trabajo. Para ello el usuario dispone de un nombre de usuario propio con sucontraseña correspondiente. Esta diferenciación entre usuarios impide que personas noautorizadas puedan acceder a archivos que les han sido vetados. Un usuario, por lo general, nopuede (o sólo de forma muy limitada) hacer grandes cambios en el sistema como, porejemplo, la instalación de programas. Tan sólo el superusuario o administrador root disponeprá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 realmentenecesario, puede reducir en gran medida el riesgo de perder datos de forma involuntaria. Laamenaza de caballos de Troya o de comandos destructivos introducidos sin querer se reducende forma significativa dado que normalmente sólo el superusuario puede borrar archivos delsistema o formatear discos duros.

Página.- 159

Page 162: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Derechos en el sistema de archivos

Para controlar el sistema básico de derechos o permisos que los usuarios poseen sobreun determinado archivo o directorio, dentro del sistema de archivos de Linux hay queconsiderar 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 elpropietario.

• Los otros (other).- son los demás usuarios que no son el propietario nipertenecen al grupo del propietario.

– Tipos de permisos.- existen tres tipos de permisos, cuyo significado es diferente paralos 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 permitecrear nuevos ficheros o borrar los existentes.

• ejecución (execute).- Permite ejecutar el fichero (si es ejecutable) o situarse enel directorio (hacer que sea el directorio activo).

Los diferentes tipos de usuario pueden ser manejados por un usuario administradormediante algunas utilidades como users-admin, webmin, etc. vistas en el tema anterior.

Página.- 160

Fig 62: Gestión de usuarios y grupos con users-admin

Page 163: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Vamos a desarrollar un ejemplo que permita realizar la aplicación de los diferentesconceptos. Para ello vamos a crear 5 usuarios: usprueba01, …, usprueba05. Algunos de ellosya 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, conla 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 unfichero 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 delos campos descritos, pero otros se toman por defecto según los valores de configuración delfichero /etc/adduser.conf. Por ejemplo, si se desea que al crear un usuario se cree un grupocon el mismo nombre, con el GID igual al UID y que sea asignado como grupo principal delusuario, en /etc/adduser.conf deberá establecerse “USERGROUPS=yes”, que es laconfiguración establecida por defecto. Si por el contrario se desea que a los usuarios que secrean 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 unalínea).

Siguiendo con el ejemplo anterior, se puede comprobar el contenido de los ficherosafectados (/etc/passwd, /etc/shadow y /etc/adduser.conf) con las instrucciones:

cat /etc/passwdsudo cat /etc/shadow (Se necesitan permisos de usuario administrador)cat /etc/adduser.conf

Página.- 161

Page 164: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Los datos correspondientes a los grupos se encuentran en el fichero /etc/group. Cadalí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 elque contiene las claves encriptadas (/etc/shadow).

Por último, el directorio /etc/skel contiene las carpetas y ficheros que se incluirán deforma 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 elmismo nombre y se le atribuye la “categoría” de grupo principal del usuario. Puedeestablecerse que los usuarios nuevos se incorporen al grupo users y no se creen gruposadicionales nuevos editando y modificando /etc/adduser.conf como se ha descritoanteriormente, con la instrucción “sudo editor /etc/adduser.conf”.

Desde la línea de comandos pueden utilizarse algunas de las siguientes instruccionespara 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 losdistintos tipos de usuario (propietario (u), grupo (g), otros (o)) puede hacerse uso de laspropiedades del fichero o carpeta, mediante la ficha “Permisos”.

Página.- 162

Page 165: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

La comprobación de los permisos de los ficheros y directorios puede hacerse mediantela instrucción “ls -l”. En la figura se muestra un ejemplo.

La información relativa a los permisos se encuentra en las columnas primera, tercera ycuarta:

– 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: - paraficheros normales, d para directorios, l para links o accesos directos, b paradispositivos 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 unguión (-), que indica ausencia del permiso de escritura.

Página.- 163

Fig 64: Resultado de la instrucción "ls -l"

Fig 63: Propiedades de un fichero

Page 166: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

• El carácter 4º puede ser una “x”, que indica permiso de ejecución, o unguión (-), que indica ausencia del permiso de ejecución. Este permisopuede ignorarse para ficheros que no son ejecutables.

• Los caracteres 5, 6 y 7 indican los permisos del grupo, es decir, de los usuariosque pertenecen al grupo principal del usuario propietario. Su significado essimilar al de los caracteres 2, 3 y 4, es decir, r significa permiso de lectura, wde escritura, x de ejecución y “-” ausencia del permiso correspondiente.

• Los caracteres 8, 9 y 10 tienen un significado similar a los tres anteriores peropara los demás usuarios, es decir, para aquellos usuarios que no son elpropietario 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 defectoa los ficheros y directorios de nueva creación. Para ello, iniciamos una sesión como usuariousprueba01 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 decomandos habría que ejecutar las instrucciones:

cd Documentos Para cambiar el directorio activo.ls > fich Crea el fichero “fich”.mkdir direc Crea el directorio “direc”.ls -l 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.- 164

Page 167: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Esta última instrucción en su forma más general va acompañada de una expresión detres caracteres cuyo significado es:

– El primer carácter identifica a quien afecta el cambio, pudiendo ser: u para elpropietario, g para el grupo, o para los otros y a para todos. Puede utilizarse unacombinació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 permisosde los diferentes usuarios: teniendo en cuenta la forma en que muestra los permisos lainstrucción “ls -l” resulta que los nueve caracteres de la columna relativa a los permisospuede dividirse en tres grupos de tres caracteres cada uno conteniendo cada grupo lospermisos del usuario propietario, los del grupo y los de los demás respectivamente. Cadagrupo de tres caracteres tendrá el carácter correspondiente al permiso para expresar laposesión del mismo, o un guión que expresa la ausencia, por ejemplo “rwx rw- r--”. Si secambian las letras por números 1 y los guiones por 0 se obtiene una notación en binario de laforma: 111 110 100. Pasando cada grupo de tres dígitos a decimal se obtiene “7 6 4”. Algunosejemplos más serían:

rw- rw- r-- → 664rw- r-- --- → 640

Para hacer la conversión obviando el paso a binario se puede suponer que el permisode 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 pordefecto que pueden ser modificados mediante la instrucción “umask”. En umask se utiliza unaexpresión numérica que cumple la relación:

Permisos_base - Expresión_umask = Permisos_reales

Página.- 165

Page 168: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Los permisos base para los directorios son 777 (rwx rwx rwx: lectura, escritura yejecución para todos) y para los ficheros son 666 (rw- rw- rw-: lectura y escritura paratodos). Así, la instrucción:

umask 022

establecerá para los directorios que se creen a partir de su ejecución los permisos reales:

777 – 022 = 755 (rwx r-x r-x)

y para los ficheros:

666 – 022 = 644 (rw- r-- r--)

umask cambia el valor de los permisos por defecto de forma temporal mientras elusuario se encuentra activo en una consola, si cierra la consola o la sesión se perderán losefectos de umask. Para que los efectos de umask sean permanentes hay que introducir lainstrucción en el archivo .bashrc de la carpeta /home/nombre_usuario y así afectará siempre alusuario. 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 lasinstrucciones:

cat /etc/profile | grep umaskcat /home/usprueba01/.bashrc | grep umask

Ampliación de derechos

– El bit setuid.- hay situaciones en las que los derechos básicos son demasiadorestrictivos. En estos casos, existen en Linux opciones adicionales que permitencambiar temporalmente el usuario y grupo de identidad actual para realizar unadeterminada acción.

Por ejemplo, el programa “passwd” requiere normalmente derechos de root paraacceder a /etc/passwd. Este archivo contiene información importante como porejemplo los directorios personales de los usuarios y los IDs de usuarios y grupos. Unusuario normal no podría cambiar passwd porque sería demasiado peligroso concedera todos los usuarios acceso directo a este archivo. La solución a este problema seencuentra en el mecanismo setuid. Setuid (Set User ID) es un atributo especial dearchivo que el sistema regula, con el fin de que se ejecuten los programasseleccionados con una determinada identificación de usuario previamente indicada.Veamos el comando passwd:

-rwsr-xr-x 1 root root 37084 2009-04-04 07:49 /usr/bin/passwd

Página.- 166

Page 169: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

En el ejemplo se puede ver el bit “s” definido para los permisos de usuario. Gracias albit setuid, todos los usuarios que inicien el comando passwd lo ejecutarán comousuario root.

– El bit setgid.- el atributo setuid es válido para usuarios, pero existe un atributoequivalente para grupos: setgid. Cuando se asigne a un programa, este se ejecutará conla identificación de grupo definida, independientemente del usuario que lo hayaarrancado. Por eso todos los archivos y subdirectorios que se crean dentro de estedirectorio pertenecen al mismo grupo que el directorio. Veamos el siguiente ejemplo:

drwxrws--- 2 usprueba01 gr-prueba12 2010-03-06 11:23 copia

Se puede ver el bit “s” definido para los permisos de grupo, lo que significa que elpropietario del directorio y los miembros del grupo gr-prueba12 pueden acceder aeste directorio. Los usuarios que no son miembros de este grupo se “mapean” al grupocorrespondiente. 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-prueba12podrá 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 undirectorio. En el caso de un programa, un archivo marcado con este bit se carga a lamemoria RAM para no tener que obtenerlo del disco duro cada vez que se utiliza. Hoyen día, este atributo se usa en raras ocasiones porque los discos duros modernoscumplen con creces los requisitos de velocidad. Ahora bien, si se asigna este atributo aun directorio, este impide que los usuarios borren los archivos. (En directorios consticky bit, los usuarios sólo puede eliminar archivos que posean ellos mismos). Losejemplos típicos son los directorios “/tmp” y “/var/tmp”:

drwxrwxrwt 15 root root 4096 2010-03-11 11:40 tmp

El comando chmod permite manejar estos permisos de forma similar a como hace conlos 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 vistosanteriormente un dígito cuyo valor es la suma de los valores individuales siguientes: 4 para elbit setuid, 2 para el bit setgid y 1 para el bit sticky. Por ejemplo:

chmod u+s fich Añade a fich el bit setuid.chmod g-s fich Quita a fich el bit setgid.chmod o+t direc Añade al directorio “direc” el bit sticky.chmod 6754 fich 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.- 167

Page 170: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

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 tresclases de usuarios: propietario del archivo (owner), grupo (group) y el resto (other). Ademáses posible definir los bits setuid, setgid y sticky. Para la mayoría de los casos que se dan en lapráctica, este escueto concepto es más que suficiente. En el caso de escenarios complejos oaplicaciones más avanzadas, los administradores de sistemas debían echar mano antiguamentede distintos trucos para evitar las limitaciones del concepto de permisos tradicional.

Las ACLs intervienen en las situaciones en las que el concepto tradicional de permisospara archivos resulta insuficiente. Estas permiten asignar permisos a otros usuarios distintosdel propietario y a otros grupos distintos del grupo al que pertenece el propietario. Las listasde control de acceso son una característica del kernel de Linux y actualmente están soportadaspor, al menos, ReiserFS, Ext2, Ext3, Ext4, JFS y XFS. Con su ayuda es posible llevar a lapráctica complejos escenarios sin que sea necesario implementar complicados modelos depermisos a nivel de aplicaciones.

Para ilustrar las ventajas de las listas de control de acceso puede tomarse el ejemplo deun servidor Windows que va a ser reemplazado por un servidor Linux. Algunas de lasestaciones de trabajo conectadas seguirán funcionando con Windows. El sistema Linux, porsu parte, proporciona a los clientes Windows servicios de servidor de archivos y de impresiónpor medio de Samba. Samba soporta las listas de control de acceso, por lo que los permisos deusuarios pueden ser configurados tanto en el servidor Linux como en Windows a través deuna interfaz gráfica de usuario. La herramienta winbindd permite incluso definir permisospara usuarios que sólo existen en el dominio Windows y no disponen de cuenta de usuario enel 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, solamentese le asignaban permisos al usuario propietario, con las ACL's se podrán añadirpermisos a otros usuarios individuales. Por ejemplo, se podrán especificar permisosdel tipo: Pedro lectura, Juan lectura y escritura, etc.

– Los grupos especificados o nombrados.- de forma similar a los usuarios, podránespecificarse permisos para otros grupos, por ejemplo: gr-contables lectura, gr-nominas lectura y escritura, etc.

Con lo cual, con las ACL's existen cinco tipos de usuarios: el propietario, los usuariosnombrados, el grupo de usuarios del propietario, los grupos nombrados y los otros.

Página.- 168

Page 171: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Además de establecer permisos para cada tipo de usuario, puede especificarse unamáscara que limita los permisos otorgados a los usuarios nombrados, al grupo del propietarioy a los grupos nombrados, es decir, limita los permisos de todos los usuarios excepto delpropietario y de los otros. La limitación consiste en que si el permiso no se encuentra en lamáscara no se aplica. Por ejemplo, si Juan (que no es el propietario) tiene asignado sobre unfichero permisos de lectura y escritura pero se crea una máscara con permiso de lectura, elpermiso real de Juan es de lectura.

Las ACL's están formadas por una serie de entradas (listas) y cada entrada especificaun 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 delpropietario y del grupo gr-prueba34 al permiso de lectura (r). También se puede observarcomo las entradas correspondientes a los usuarios y grupos nombrados llevan especificado elnombre 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.

Ubuntu está preparado para utilizar ACL's. Puede comprobarse mediante lainstrucció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 refieranal tipo de sistema de archivos que se está utilizando con valor “y”:

CONFIG_EXT3_FS_POSIX_ACL=yCONFIG_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 deficheros montados con acl tendrán la palabra clave "acl" en las opciones de montaje desus entradas en el fichero.

Página.- 169

Page 172: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

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=40495... / ext4 relatime,errors=remount-ro 0 1# /home was on /dev/sda7 during installation UUID=6b477... /home ext4 relatime,acl 0 2

En este caso sda7 tiene soporte acl en el punto de montaje /home; si se quiere hacer lomismo en sda6 habría que modificar la línea correspondiente para que tuviera laforma:

UUID=40495... / ext4 relatime,acl,errors=remount-ro 0 1

Una vez modificado /etc/fstab hay que volver a montar el sistema de ficherosreiniciando 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 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 lostres pasos anteriores pueden realizarse algunas pruebas. Por ejemplo, que usprueba02 cree ensu 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 deacceso”. 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 acomo lo hace la ficha “Lista de control de acceso”.

Página.- 170

Page 173: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

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 lospermisos el carácter “+”.

Página.- 171

Fig 65: ACL's

Fig 66: El carácter "+" indica existencia de ACL

Page 174: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

La instrucción getfacl muestra la ACL del fichero o directorio especificado. Porejemplo:

Las tres primeras líneas muestran el nombre del fichero, el del usuario propietario y eldel grupo. Las líneas siguientes muestran los permisos, incluida la máscara y los permisos delos 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á elnombre o el nº identificador del usuario (UID) o grupo (GID).

– El tercer campo identifica los permisos y será una cadena compuesta de los caracteresr, w, x, -, según corresponda.

Las instrucciones chown y chgrp permiten cambiar el propietario y el grupo delfichero o directorio. Hay que recordar que para utilizar estas instrucciones hay que disponerde los permisos adecuados.

Puede hacerse una clasificación de las ACL's según contengan o no una entrada para lamáscara. Esta entrada aparecerá al asignarle un valor o de forma automática al añadir unaentrada 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, solamentecontienen entradas para el propietario, el grupo y los otros. Su correspondencia con lospermisos estándar es trivial. Las modificaciones desde el entorno gráfico, o a través dela instrucción chmod, de los permisos estándar se trasladan automáticamente a lasACL's y viceversa.

Página.- 172

Fig 67: Resultado de "getfacl f1"

Page 175: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

– Las ACL's extendidas son aquellas que contienen la entrada de la máscara. En éstas, lacorrespondencia que se establece entre los permisos estándar y las entradas ACL es lasiguiente:

Entrada ACL Ej. ACL Ej. permisos Permisos

Propietario user: :rw- ↔ rw- Propietario

Usuario especificado user:pepe:rw

Grupo propietario group: : rw

Grupo especificado group:gr1:rw

Máscara mask: : rw ↔ rw- Grupo propietario

Otros other: : r ↔ r - - Otros

Es decir, las entradas de usuario especificado, grupo del propietario y grupoespecificado no tienen correspondencia con los permisos estándar, las entradas delpropietario y de los otros tienen correspondencia con sus homólogos y la entrada de lamá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 (ala tabla) se observa que el fichero f1 tiene una ACL extendida pues contiene la entrada demá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 sidola correspondiente a la máscara, no la correspondiente al grupo. Si esta misma comprobaciónse realiza con un fichero con ACL estándar se verá que la entrada ACL modificada es la delgrupo, puesto que la de la máscara no existe.

La instrucción chacl permite cambiar, examinar o eliminar una ACL existente. Porejemplo:

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. Estainstrucción tiene varias opciones entre las que se encuentran -B, -D y -R que permiten borrarentradas.

La instrucción setfacl sobreescribe una ACL anterior, o, con la opción -m, permitemodificarla. Por ejemplo, para añadir a la ACL de f1 el permiso de lectura y escritura para elusuario usprueba04, hay que ejecutar la instrucción:

setfacl -m u:usprueba04:rw- f1

Página.- 173

Page 176: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

El resultado podrá verse con “getacl f1”. Además, setfacl puede modificar la entradade la máscara de forma automática para que la entrada especificada pueda tener efecto, estoes, si se añade un nuevo usuario con permiso “rw” pero la máscara estaba establecida con elvalor “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 delcomando man.

Directorios con ACL's predeterminados

Los directorios pueden ser equipados con un tipo especial de ACLs, las ACLspredeterminadas. Estas definen los derechos que heredan los subobjetos de estos directoriosen el momento de su creación. La ACL predeterminada afecta tanto a los subdirectorios comoa los archivos.

Los permisos de acceso en la ACL predeterminada son heredados de forma distinta porarchivos y subdirectorios:

– Un subdirectorio hereda la ACL predeterminada del directorio superior como propiadefault 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 unparámetro “mode”. Este parámetro se encarga de definir los permisos de acceso sobre elnuevo objeto del sistema: si el directorio superior carece de ACL predeterminada, lospermisos resultantes son los introducidos en el parámetro “mode” menos los permisosasignados en “umask”. Si existe una ACL predeterminada para el directorio superior, seasignan al objeto los bits de permiso resultantes de la intersección de los permisos delparámetro “mode” y de los que contiene la ACL predeterminada. En este caso no se tiene encuenta umask.

Página.- 174

Page 177: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

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 laACL predeterminada o por defecto. También pude hacerse desde la línea de comandos comose 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: grprueba12user: : rwxgroup: : r – xother: : 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.- 175

Fig 68: ACL's predeterminadas

Page 178: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

La ACL ahora es:

getfacl d2

# file: d2# owner: usprueba02# group: grprueba12user: : rwxgroup: : r – xother: : r – xdefault:user: : rwxdefault:group: : r – xdefault:group:grprueba34:r – xdefault:mask:: r – xdefault:other: : r – x

La salida de getfacl contiene tanto la access ACL como la ACL predeterminada. Todaslas líneas que comienzan por “default” forman la ACL predeterminada. Aunque en elcomando setfacl sólo se había indicado una entrada para el grupo grprueba34 en laACL predeterminada, setfacl ha copiado automáticamente el resto de entradas de laaccess ACL para construir una ACL predeterminada válida. Las ACL'spredeterminadas no influyen de manera directa en los permisos de acceso, sino quesó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 ACLpredeterminada:

mkdir d2/subd2

getfacl d2/subd2

# file: d2/subd2# owner: usprueba02# group: grprueba12user: : rwxgroup: : r – xgroup:grprueba34:r – xmask: :r – xother: : r – xdefault:user: : rwxdefault:group: : r – xdefault:group:grprueba34:r – xdefault:mask:: r – xdefault:other: : r – x

Página.- 176

Page 179: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Como era de esperar, el subdirectorio recién creado subd2 tiene los permisos de laACL predeterminada del directorio superior. La access ACL de subd2 es una réplicaexacta de la ACL predeterminada de d2. Lo mismo sucede con la ACLpredeterminada, 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 -ld2/f2” mostrará:

- rw - r - - r - - + 1 usprueba02 grprueba12 9 2010-03-15 21:19 d2/f2

La instrucción “getfacl d2/f2” mostrará:

# file: d2/f2# owner: usprueba02# group: grprueba12user: : rw-group: : r – x #effective:r - -group:grprueba34:r – x #effective:r - -mask: :r - -other: : r - -

El parámetro mode con el que se crean los ficheros es 0644, lo que significa que losnuevos archivos se crean con permisos de lectura y escritura para el propietario ylectura para el grupo y los otros, a no ser que existan otras restricciones por parte deumask o de la ACL predeterminada. En nuestro ejemplo esto significa que todos lospermisos que no están incluidos en mode serán eliminados de las entradas ACLcorrespondientes. Aunque no se ha eliminado ningún permiso de la entrada ACL degrupo, la entrada de máscara puede ser adaptada para que los bits de permiso definidospor mode no sean enmascarados.

De este modo se garantiza que un compilador, por ejemplo, pueda funcionar sinproblemas con ACLs. Puede crear archivos con permisos de acceso restringidos y acontinuación marcarlos como ejecutables. El mecanismo mask se ocupa de que sólolos 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ásimportantes de las ACLs, a continuación se describe brevemente el algoritmo de evaluación alque se somete cualquier proceso o aplicación antes de que se le proporcione acceso a unobjeto del sistema protegido por ACLs. Las entradas ACL son analizadas en el siguienteorden: owner, named user, owning group o named group y other. El acceso se regula a travésde la entrada que mejor se ajuste al proceso.

Página.- 177

Page 180: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

El mecanismo se complica cuando un proceso pertenece a más de un grupo, ya quepotencialmente podrá ajustarse a varias entradas group. En este caso se selecciona una de lasentradas adecuadas con los permisos requeridos. Para el resultado final de “accesoautorizado” es irrelevante cuál de estas entradas ha sido seleccionada. Si ninguna de lasentradas group apropiadas contiene los permisos correctos, se selecciona una cualquiera queprovocará el resultado final de “acceso denegado”.

Como se ha mencionado en los apartados anteriores, las ACLs permiten implementarcomplejos escenarios de permisos que cumplen a la perfección los requisitos de lasaplicaciones más actuales. El concepto tradicional de permisos y las ACLs pueden combinarsede forma muy hábil. Los comandos de archivos básicos (cp, mv, ls, etc.) soportan las ACLsasí como Samba.

En cambio, numerosos editores y administradores de archivos (ej. Konqueror) carecende soporte ACL. Así, las ACLs todavía se pierden al copiar archivos con Konqueror. Alprocesar con un editor un archivo que contenga una access ACL, el que la access ACL semantenga o no tras finalizar el proceso de edición depende del modo backup del editorutilizado: Si el editor escribe los cambios en el archivo original, la access ACL se mantiene. Siel editor crea un nuevo archivo que recibe el nombre del antiguo archivo al finalizar loscambios, es posible que se pierdan las ACL a no ser que el editor las soporte. En el campo delos programas de copias de seguridad, no existe (con la excepción del archivador star) ningúnprograma que pueda garantizar el mantenimiento total de las ACLs.

5.2.3 Gestión de grupos

Una de las formas más sencillas de gestionar los grupos en Ubuntu es mediante laherramienta gráfica “users-admin” ejecutable desde el lanzador de aplicaciones o desde lalinea de comandos. Una vez que se desbloquea la ventana y se pulsa sobre el botón “Gestionargrupos” aparece la ventana de “Configuración de los grupos” que permite añadir, borrar y, através del botón “Propiedades”, establecer los usuarios que pertenecen al grupo previamenteseleccionado.

Página.- 178

Fig 69: Gestión de grupos con users-admin

Page 181: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Desde el modo comando, adduser y addgroup permiten añadir usuarios y grupos alsistema. La operación de estos comandos se configura en el fichero /etc/adduser.conf. Veamosalgunos ejemplos:

adduser usprueba07

añade el usuario usprueba07 al sistema. El sistema pedirá alguna información adicional sobreel 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 deusuarios es numeroso y heterogéneo, puede ser necesario añadir nuevos grupos. Esto se hacecon 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 leeninformación de configuración del fichero /etc/login.defs.

Para eliminar usuarios y grupos se emplean userdel y groupdel respectivamente. Porejemplo:

userdel usprueba08

elimina el usuario usprueba08. Si además se indica la opción -r, también se borrará eldirectorio 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 comandosusermod 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 directorioal nuevo emplazamiento.

Página.- 179

Page 182: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

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 empleanshadow passwords.

– /etc/group: contiene los miembros de cada grupo, excepto para el grupo principal, queaparece en /etc/passwd.

– /etc/skel: directorio que contiene el contenido del directorio de los nuevos usuarios.

Página.- 180

Page 183: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

5.3 Grupos predeterminados

Además de los grupos creados por el usuario existen otros grupos especiales quesirven fundamentalmente para:

– Establecer los privilegios y controlar los accesos a los dispositivos mediante lospermisos adecuados a ficheros de dispositivos situados en /dev.

A este tipo pertenecen los siguientes grupos predeterminados:

• plugdev.- permite acceder automáticamente a dispositivos de almacenamientoexterno.

• 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.

Página.- 181

Fig 70: Ajustes avanzados para los usuarios

Page 184: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

• 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.• 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 grupoadecuado. Alternativamente, para sistemas pequeños suele ser mejor “desproteger” losdispositivos adecuados para que todos los usuarios puedan usarlos, evitando tener querecordar añadir usuarios a los grupos adecuados. Por ejemplo, para dar acceso delectura 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 teneracceso a la aplicación deben ser incluidos en dicho grupo. Como ejemplos podemostener 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 lainstrucción:

groups nombre_usuario

Página.- 182

Page 185: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

5.4 Actividades

1. Crear un usuario editando los ficheros /etc/passwd y /etc/group. A continuaciónasignarle una clave haciendo uso de la utilidad del entorno gráfico “Usuarios ygrupos”. 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 comandoschown, 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 lamá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 ycomprobar 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 unsubdirectorio y un fichero y comprobar que se cumple la herencia de ACL's. Modificarlas 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.- 183

Page 186: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

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ónIP, la máscara de (sub)red, la puerta de enlace y los DNS's. En este tema se explicaexhaustivamente el significado de cada uno de estos parámetros, se realizan prácticas y seproponen actividades de apoyo a su comprensión. También se incluyen apartados que cuentanel funcionamiento de la nueva versión del protocolo TCP/IP: ipv6. Por último, se comentanlos archivos de configuración fundamentales y algunos de los scripts encargados de lanzar ocontrolar determinados servicios.

Temporización: 20 horas.

Página.- 184

Page 187: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

6.2 Fundamentos de conexión a redes

MaX utiliza al igual que otros sistemas operativos un protocolo de comunicación quese llama TCP/IP. En realidad no se trata de un solo protocolo de red sino de una familia deprotocolos con diferentes prestaciones. Para el intercambio de datos vía TCP/IP entre dosordenadores con Linux, existen los siguientes servicios:

– TCP.- (Transmission Control Protocol) es un protocolo asegurado orientado a laconexión. Desde el punto de vista de las aplicaciones, los datos se transmiten como uncaudal y es el sistema operativo el que se encarga de convertirlos al formato adecuadopara su transmisión. Las aplicaciones en la máquina remota reciben el caudal de datostal 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 hablarde una conexión.

– UDP.- (User Datagram Protocol) es un protocolo no asegurado y sin conexión. Latransferencia de datos está orientada a paquetes creados directamente por laaplicación. El orden de llegada de los paquetes no está garantizado y tampoco lallegada en sí. UDP sirve para aplicaciones que transmiten bloques de datos y tienemenos tiempo de respuesta que TCP.

– ICMP.- (Internet Control Message Protocol) es un protocolo que básicamente nopuede ser usado por el usuario, ya que su tarea es la de transmitir errores y decontrolar los ordenadores que participan en el intercambio de datos. Además ICMPincorpora un modo especial de eco, que se puede comprobar mediante ping.

– IGMP.- (Internet Group Management Protocol) es un protocolo que controla elcomportamiento de los ordenadores utilizando IP multicast.

Las redes basadas en TCP/IP y que están interconectadas a nivel mundial sedenominan en su conjunto como “ Internet.”.

RFC son las siglas de Request for Comments. Los RFC son documentos que describenlos diferentes protocolos de Internet y la implementación de ellos en un sistema operativo o enaplicaciones. Los documentos RFC describen la estructura de los protocolos de Internet. Paraprofundizar sobre un determinado protocolo se recomienda consultar el documento RFC delprotocolo correspondiente. Puede visitarse http://www.ietf.org/rfc.html 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 acabo la transferencia de datos insegura a través de IP (Internet Protocol). Por encima de IP, elprotocolo TCP (Transmission Control Protocol) garantiza la seguridad de la transferencia dedatos hasta cierto punto. Por debajo de la capa IP se encuentra el protocolo que depende delhardware (por ejemplo Ethernet).

Página.- 185

Page 188: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

La imagen muestra uno o dos ejemplos para cada capa. Las capas se ordenan según sunivel de abstracción; la capa inferior se encuentra más próxima al hardware, mientras que lacapa superior “envuelve” el nivel de abstracción mas alto. Cada capa tiene una determinadafunción que se explica a continuación. La red está representada por la capa de transmisión debits y por la capa de seguridad.

Casi todos los protocolos de hardware están basados en paquetes. Los datos atransmitir se han de dividir en pequeños “paquetes”, ya que es imposible transmitirlos “degolpe”. TCP/IP también trabaja con paquetes cuyo tamaño máximo es de casi 64 kilobytes. Enrealidad los paquetes suelen tener un tamaño mucho menor, ya que el tamaño máximo de unpaquete sobre una Ethernet es de 1500 bytes. Por eso el tamaño de cada paquete TCP/IP selimita a estos 1500 bytes cuando el paquete pasa por una red del tipo Ethernet. Para transmitirmá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 unpequeño bloque de datos (denominado “cabecera de protocolo” (protocol header) al paqueteque se está formando. La siguiente figura muestra el ejemplo de la composición de un paqueteTCP/IP que viaja sobre un cable de una red tipo Ethernet. Una excepción de la estructura de lacabecera son los dígitos de control que no se encuentran en la cabecera sino al final. De estaforma el hardware de red lo tiene más fácil.

Página.- 186

Fig 71: Modelo de capas para TCP/IP

Fig 72: Paquete TCP sobre Ethernet

Page 189: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Cuando una aplicación quiere enviar datos por la red, los datos pasan por las diferentescapas 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 capainferior. 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 laparte útil de datos. Finalmente la cuarta capa se encarga de preparar los datos para laaplicación en la máquina remota. Durante el proceso de transferencia, cada capa sólo secomunica con aquella que se encuentra directamente encima o debajo. Por eso para unaaplicación es totalmente irrelevante si los datos viajan a través de una red de 100 MBit/s-FDDI o a través de una línea de módem de 56 kbit/s. Igualmente para la línea no sonimportantes los datos que se han de transferir sino que estos estén correctamenteempaquetados.

6.2.1 Direcciones IP

En principio esta sección y las siguientes se refieren a las redes IPv4. Su sucesor, IPv6será 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 ejemplosiguiente:

Dirección IP en binario: 11000000 10101000 00000000 00010100Dirección IP en decimal: 192 168 0 20

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 192.168.0.20. Estadirección asignada al ordenador o a su interfaz de red es única y no puede ser utilizada enningún otro lugar del mundo, con algunas excepciones, que no tienen relevancia para elejemplo 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 latarjeta red. La asignación de los números MAC por parte de los fabricantes tiene unadesventaja fatal: no hay ninguna jerarquía entre las tarjetas, están distribuidas “al azar”; poreso no es posible utilizarlas para comunicarse con un ordenador a mucha distancia. Sinembargo la dirección MAC es de mucha importancia en una red local, siendo la parteimportante de la cabecera del protocolo en la capa 2.

Los puntos separadores de la dirección ip ya indican la estructura jerárquica de lasdirecciones. Hasta mediados de los noventa había una separación estricta en clases pero elsistema resultó muy poco flexible por lo que practicamente se ha dejado de utilizar. Ahora seusa “routing sin clases” (Classless Inter Domain Routing o CIDR).

Página.- 187

Page 190: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

La dirección IP de un equipo está dividida en dos partes, como se muestra en la figurasiguiuente:

– Dirección de red.- son los primeros bits de la dirección ip. Se cumplen doscaracterísticas muy importantes:

• Todos los equipos de la misma red tienen en su dirección ip la misma direcciónde red.

• Todos los equipos de la misma red se pueden comunicar de forma directa, sinintermediarios. Un equipo que quiera enviar un mensaje a otro equipo de lamisma 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, elreceptor estará supervisando el medio de comunicación continuamente paracomprobar si las tramas que circulan son para él (tienen su dirección ip). Si sonpara é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 serdiferente para cada equipo de la red.

Luego, los equipos de la misma red tienen direcciones ip con la misma dirección dered y diferente dirección de host o equipo. En el ejemplo de la figura anterior la dirección dered ocupa los tres primeros bytes y la dirección de host el último byte. Por lo tanto, losequipos de esa red tendrán todos como dirección ip 192.168.0.n, siendo n cualquier valorentero entre 0 y 255 (con unas pequeñas excepciones que se verán más adelante).

6.2.2 Máscara de (sub)red

La función fundamental de la máscara de red es establecer la longitud de la direcciónde red, es decir, establecer qué parte de la dirección ip corresponde a la dirección de la red yqué parte corresponde a la dirección del host.

La máscara de red, también llamada máscara de subred, tiene la forma de unadirección ip un poco particular: es una dirección ip que tiene todos los bits de la partecorrespondiente a la dirección de red con valor 1 y los bits correspondientes a la dirección delequipo con valor 0.

Página.- 188

Fig 73: Partes de una dirección IP

Page 191: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Aplicando esto al ejemplo anterior se obtiene:

Para especificar la dirección ip y la máscara, además de la notación decimal, existeotra notación denominada Classless Inter-Domain Routing (CIDR) que consiste en especificarla dirección ip en notación decimal y a continuación, separada por el carácter “/”, la longituden número de bits de la parte correspondiente a la dirección de red. En el ejemplo, como ladirección de la red son 24 bits, la dirección ip y la máscara en formato CIDR sería:

192.168.0.20 / 24

Cuando un equipo tiene que comunicarse con otro, la primera operación que realiza esconsultar si el equipo con el que se quiere comunicar se encuentra en su misma red yentonces:

– Si está en la misma red, pone la información en el medio encargado de realizar latransmisió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á deenrutarla hacia el destino.

El procedimiento del equipo emisor para comprobar si si el equipo receptor está en lamisma 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 delequipo receptor.

3. Si obtiene el mismo resultado es porque los dos equipos están en la misma red. Encaso contrario los equipos estarán en redes diferentes y la información deberá sertransmitida a través de enrutadores intermedios.

Página.- 189

Fig 74: Máscara de (sub)red

Page 192: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

La siguiente tabla muestra los resultados obtenidos al realizar la operación AND conlos correspondientes operandos binarios:

Operación AND

Operando 1 Operando 2 Resultado

0 0 0

0 1 0

1 0 0

1 1 1

Como ayuda para agilizar la operativa entre la dirección ip de un equipo y su máscarade 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 ala parte de dirección de red con valor 1 y los bits correspondientes a la parte de dirección deequipo con valor 0, al realizar la operación AND entre una ip y la máscara se obtendrá unadirecció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áscaratodos esos bits tienen valor 0.

La dirección resultante de la realización de la operación AND entre la ip y la máscarase llama dirección de la red y su característica fundamental es que coincide con la dirección ipmás baja de las pertenecientes a la misma red, es decir, la parte de dirección de red es lamisma de todas las ip's de la red y la parte de dirección del host está a ceros. En el ejemplo, laparte de dirección de red son los tres primeros bytes, con lo cual todos los equipos de esa redtendrán la forma 192.168.0.n, con n entre 0 y 255 y la dirección ip más baja de esa red sera la192.168.0.0 que, como se puede ver en la figura, corresponde con la dirección resultante delAND, es decir, con la dirección de la red.

Página.- 190

Fig 75: Operación AND entre dirección IP y máscara de red

Page 193: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Dentro del rango de posibles direcciones ip's que puede haber dentro de una red haydos direcciones que tienen un significado especial, y que no pueden ser asignadas a losequipos de la red:

– La dirección de red.- es la dirección más baja del rango y se utiliza para identificar a lared. 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 utilizaun equipo cuando quiere comunicarse con todos los demás equipos de la red. Su partede dirección del host está a unos. Por ejemplo, si un equipo quiere comunicar a todoslos 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 192.168.0.20 y máscara de red255.255.255.0 (192.168.0.20 / 24) quiere enviar alguna información al equipo con direcciónip 192.168.0.76, antes de enviar ninguna trama de información procede de la forma:

1. Realiza la operación AND entre su ip (192.168.0.20) y la máscara (255.255.255.0)obteniendo como resultado la dirección de red 192.168.0.0.

2. Realiza la operación AND entre su máscara (255.255.255.0) y la ip del receptor(192.168.0.76) obteniendo como resultado la dirección de red 192.168.0.0.

3. Compara los dos resultados obtenidos y si coinciden (como es el caso) es porque losdos equipos están en la misma red y enviará las tramas directamente al receptor. Si nocoinciden enviará las tramas al router.

Una característica esencial de las redes o subredes, determinada por el número de bitsde la dirección IP que corresponden a la dirección del host, es el número de equiposdireccionables en la red. Teniendo en cuenta que:

– Todos los equipos de la misma red tienen en su dirección ip los bits correspondientes ala dirección de red iguales.

– Todos los equipos de la misma red tienen en su dirección ip los bits correspondientes ala dirección del equipo distintos.

– Hay dos direcciones dentro del rango de posibles direcciones ip de la red que nopueden ser asignadas a los equipos, que son la dirección de la red y la dirección dedifusión (broadcast), que coinciden con la dirección más baja y con la más alta delrango 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.- 191

Page 194: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

– Con 2 bits se pueden especificar 4 valores diferentes (00, 01, 10, 11), es decir, 22 = 4valores.

– 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 ladirección de la red (bits a 1 en la máscara) y cuantos a la dirección del equipo (bits a 0 en lamáscara) se tiene que:

– La máscara 255.255.255.254 identifica 31 bits de dirección de red y 1 bit de direcciónde equipo.

– La máscara 255.255.255.252 identifica 30 bits de dirección de red y 2 bits dedirección de equipo.

– La máscara 255.255.255.248 identifica 29 bits de dirección de red y 3 bits dedirección de equipo.

– Y así sucesivamente.

se obtiene la tabla:

Máscara endecimal

Máscara en binario Nº bits de dir.de red

Nº bits de dir.de equipo

Nº max. dedir. ip

Nº max. deequipos

255.255.255.255 1111 1111 1111 1111 1111 1111 1111 1111 32 0 - -

255.255.255.254 1111 1111 1111 1111 1111 1111 1111 1110 31 1 21 = 2 21 – 2 = 0

255.255.255.252 1111 1111 1111 1111 1111 1111 1111 1100 30 2 22 = 4 22 – 2 = 2

255.255.255.248 1111 1111 1111 1111 1111 1111 1111 1000 29 3 23 = 8 23 – 2 = 6

255.255.255.240 1111 1111 1111 1111 1111 1111 1111 0000 28 4 24 = 16 24 – 2 = 14

255.255.255.224 1111 1111 1111 1111 1111 1111 1110 0000 27 5 25 = 32 25 – 2 = 30

255.255.255.192 1111 1111 1111 1111 1111 1111 1100 0000 26 6 26 = 64 26 – 2 = 62

255.255.255.128 1111 1111 1111 1111 1111 1111 1000 0000 25 7 27 = 128 27 – 2 = 126

255.255.255.0 1111 1111 1111 1111 1111 1111 0000 0000 24 8 28 = 256 28 – 2 = 254

255.255.254.0 1111 1111 1111 1111 1111 1110 0000 0000 23 9 29 = 512 29 – 2 = 510

255.255.252.0 1111 1111 1111 1111 1111 1100 0000 0000 22 10 210 = 1024 210 – 2 = 1022

. . . . . . . . . . . . . . . . . . . .

Para atravesar distancias largas, ya no se puede utilizar Ethernet sino que hace faltapasar los paquetes IP por un soporte diferente (por ejemplo FDDI o RDSI) mediantedispositivos denominados router (enrutador) o gateway (pasarela). Un ordenador con MaXtambién se puede encargar de ello; esta funcionalidad se denomina “ip_forwarding”.

Página.- 192

Page 195: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

En caso de trabajar con una pasarela, el paquete IP se manda a ésta y la pasarela tratade pasar el paquete según el mismo esquema. Este proceso se repite hasta el momento dealcanzar el ordenador de destino o hasta que el “tiempo de vida del paquete” TTL (time tolive) se haya agotado.

No se pueden utilizar direcciones IP al azar, ya que éstas deben ser únicas en todo elmundo. Existen tres rangos de direcciones IP que pueden utilizarse en la configuración de unared privada y con las cuales no puede realizarse una conexión directa a Internet sino que laconexión se realiza a través de un equipo, por lo general un router, que realiza ciertasconversiones en las direcciones IP. Estos tres rangos están especificados en la RFC 1597 yson los siguientes:

Rangos para direcciones IP privadas

Red / máscara de red Rango

10 . 0 . 0 . 0 / 255 . 0 . 0 . 0 10 . n . n . n

172 . 16 . 0 . 0 / 255 . 240 . 0 . 0 172 . 16 . n . n - 172 . 31 . n . n

192 . 168 . 0 . 0 / 255 . 255 . 0 . 0 192 . 168 . n . n

Además, en cada ordenador la dirección 127.0.0.1 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 IPpúblicas y privadas vamos a tomar un ejemplo sencillo:

Cuando una empresa quiere que sus empleados tengan acceso a Internet debe ponerseen contacto con un proveedor de servicios de Internet, que por lo general son empresas detelefonía (pero no exclusivamente). El proveedor de servicios de Internet instala en la empresaun 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 otromedio (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 ala 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 40.50.60.70 y la privada 192.168.0.1.

Cuando un equipo de la red local, por ejemplo el que tiene dirección IP 192.168.0.2,envía una trama de información a Internet, la trama sale con dirección IP origen 192.168.0.2pero cuando pasa por el router es cambiada por la dirección IP externa del router, es decir, porla 40.50.60.70 y así llegará a su destino. Cuando el equipo destino responda, la trama irádirigida al equipo con IP 40.50.60.70, es decir, al router, que al recibir la trama la encaminaráal equipo con IP 192.168.0.2. Esta conversión de direcciones IP se denomina NAT (NetworkAdress Traslation) y para poder realizarla el router deberá gestionar ciertas tablas coninformación sobre los equipos que envían y esperan información.

Página.- 193

Page 196: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Práctica (obtención de las características de la red)

Si un equipo tiene la configuración IP 192.168.3.210 / 25 calcular: la máscara enformato decimal, la dirección de la red, la dirección de difusión, el número máximo dedirecciones 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:

1100 0000 1010 1000 0000 0011 1101 0010

De la máscara se sabe que tiene los primeros 25 bits con valor uno, es decir,

1111 1111 1111 1111 1111 1111 1000 0000

Pasando estos datos a decimal se obtiene que la máscara es:

255 . 255 . 255 . 128

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ándiferentes para cada equipo. La dirección de la red puede hallarse realizando la operaciónAND entre la dirección IP y la máscara, y coincidirá con la dirección IP más baja en la red, esdecir, aquella cuya parte correspondiente a la dirección del equipo esté a ceros:

1100 0000 1010 1000 0000 0011 1000 0000

que en decimal es:

192 . 168 . 3 . 128

La dirección de difusión es la más alta, es decir, aquella cuya parte correspondiente ala dirección del equipo esté a unos:

1100 0000 1010 1000 0000 0011 1111 1111

que en decimal es:

192 . 168 . 3 . 255

El número máximo de direcciones IP es 2 elevado al número de bits correspondientesa 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.- 194

Page 197: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Datos de la red

Dirección IP 192 . 168 . 3 . 210

Máscara de red 255 . 255 . 255 . 128

Dirección de la red 192 . 168 . 3 . 128

Dirección de difusión 192 . 168 . 3 . 255

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 aInternet. ¿ Qué direcciones IP y máscara de red puede utilizar ?. Hallar los demás datos de lared.

Se necesita una red que admita 6 direcciones IP: tres para los ordenadores, una para elinterface interno del router, la dirección de la red y la dirección de difusión. El dato quecondiciona el número máximo de direcciones IP (o de equipos) es la máscara. Para este casose necesita una máscara que establezca 29 bits para la dirección de red y 3 para la dirección delos equipos puesto que el número máximo de direcciones IP se obtiene al elevar dos alnúmero de bits destinados a la dirección del equipo, es decir, dos elevado a tres que da comoresultado ocho y que cumple con los requerimientos de la práctica.

Luego, la máscara puede ser: 1111 1111 1111 1111 1111 1111 1111 1000,

o, en decimal: 255 . 255 . 255 . 248

y la distribución de las direcciones IP podría ser.

Dirección de la red: 192 . 168 . 0 . 0Dirección del router: 192 . 168 . 0 . 1Direcciones de los ordenadores: de 192 . 168 . 0 . 2 a 192 . 168 . 0 . 6Dirección de difusión: 192 . 168 . 0 . 7

En esta red podría haber un máximo de 6 equipos.

Página.- 195

Page 198: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

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 yestá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 quehaga de intermediario:

– Si el medio físico es diferente. El ejemplo más generalizado se encuentra en laconexión de la intranet, o red formada con los equipos de casa o de la empresa, con elresto de equipos de Internet. Los equipos de la intranet pueden utilizar una conexióninalámbrica o un cable de par trenzado con conectores RJ-45 pero el medio deconexió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 mediofí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 personasen la misma casa se comunican de forma directa pero para comunicarse con las de otracasa hacen uso del teléfono, que hace la función del router.

– Si el protocolo es diferente. Para comunicar redes u ordenadores que utilizanprotocolos diferentes, por ejemplo una intranet que utiliza TCP/IP con otra red queutiliza AppleTalk, se hace necesario el uso de un dispositivo capaz de traducir lainformación de un protocolo al otro; es la función del gateway. Este caso es menosfrecuente debido al uso generalizado del protocolo TCP/IP.

Como ejemplo cotidiano podemos suponer que el protocolo es el idioma. Para que dospersonas que utilizan idiomas diferentes puedan comunicarse tienen que hacer uso deun traductor que conozca ambos idiomas.

– Si no están en la misma red lógica. En organismos con un gran número de equipos oque necesitan una diferenciación de los equipos atendiendo a niveles de seguridadpueden establecerse varias subredes. La comunicación de unas subredes con las otraspuede hacerse a través de otro ordenador o router que controle y delimite lacomunicación entre las subredes. Evidentemente el ordenador o router que hace deintermediario 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 situarseuna 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 losde 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 elparámetro correspondiente. Dicho parámetro no es otro que la dirección IP de la puerta deenlace, pasarela, gateway o router.

Página.- 196

Page 199: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Práctica (análisis de tramas)

Instalar en el equipo anfitrión y en el invitado con MaX 5.0 un analizador de tramasque 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 atodos los equipos de la misma red. El equipo al que va dirigida la trama la procesa ylos 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 noenvía la trama.

• Si tiene configurada la puerta de enlace, envía la trama al equipo especificadocomo puerta de enlace. El equipo que realiza la función de puerta de enlacereenviará 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óncomo 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 elmenú 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 deadministración como los tienen los usuarios “madrid” o “root”. Desde la línea de comandos selanza con el nombre del paquete (wireshark).

La primera vez que se ejecuta Wireshark aparecerán dos ventanas, una lacorrespondiente al programa y otra con un mensaje que avisa que se está ejecutando comousuario “root” y grupo “root” con los riesgos que ello conlleva. Para continuar hay que pulsarel botón “Aceptar” de esta última.

Página.- 197

Fig 76: Mensaje de Wireshark

Page 200: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Algunas de las opciones más interesantes del programa son:

– Interfaces... .- Permite elegir el interface o tarjeta donde se realizará la captura yaná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 debenser capturadas para analizar y cuales deben ser ignoradas.

Para capturar tramas, en primer lugar hay que elegir el interface. Además de lasinterfaces de red del equipo, aparecen el interface “any”, que equivale a seleccionar todos, yel interface “lo”, que es el interface de loopback del equipo.

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.- 198

Fig 77: Wireshark

Fig 78: Selección de interfaces

Page 201: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Con el botón de “Stop” se finalizará la captura de las tramas. Si se vuelve a pulsar pararealizar una nueva captura el programa avisará de si se quieren guardar en un fichero lastramas de la captura anterior.

La ventana que muestra las tramas se encuentra dividida horizontalmente en tressubventanas:

– La primera muestra una lista con un resumen de las tramas capturadas, coninformació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 enascii a la derecha.

Una vez visto, de forma somera, el funcionamiento de Wireshark vamos a proceder dela forma siguiente:

1. Comprobar que los tres equipos (anfitrión, invitado con MaX 5.0 e invitado conWindows XP o similar) se encuentran en la misma red, es decir, comprobar quecoincide el resultado de realizar la operación AND entre ip y máscara de cada equipo.

Página.- 199

Fig 79: Captura de tramas

Page 202: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

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 192.168.10.19 255.255.240.0 192.168.0.0

Invitado MaX 192.168.0.26 255.255.240.0 192.168.0.0

Invitado XP 192.168.0.43 255.255.240.0 192.168.0.0

Si la dirección de red no fuera la misma para los tres equipos deberá modificarse la ipy 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 dela red. Por ejemplo, desde el equipo invitado con XP vamos a realizar un “pingsostenido” al equipo anfitrión y comprobaremos que las tramas llegan tanto alanfitrió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 equipoorigen que ejecuta la instrucción envía una trama al equipo destino que, si se encuentraescuchando, responderá con otra trama. En MaX la instrucción ping envía tramas deforma indefinida (sostenida) hasta que se pulsan las teclas <Ctrl>+<C> pero enWindows XP, la misma instrucción, solamente envía tres tramas y hay que hacer usode 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 192.168.0.19 -t

En el equipo anfitrión primero, y en el invitado con MaX después, lanzamos elprograma Wireshark y podrá comprobarse que reciben tramas, unas con direcciónorigen 192.168.0.43 y destino 192.168.0.19 y otras en el sentido contrario.

3. Comprobar que si el invitado con XP no tiene configurada la puerta de enlace y se leasigna 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 noenviará ninguna trama a la red, es decir, el equipo anfitrión y el invitado con MaX noreciben las tramas correspondientes al ping de XP.

4. Volver a configurar el equipo invitado con XP con la dirección ip inicial y configurarsu puerta de enlace con la dirección ip del anfitrión. Si ahora el equipo con XP haceping a un equipo que no esté en su red, por ejemplo al equipo 10.20.30.40:

ping 10.20.30.40 -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.- 200

Page 203: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Práctica (dos subredes con un MaX enrutando)

Configurar tres equipos de tal forma que dos de ellos pertenezcan a redes diferentes yel otro se encuentre en ambas redes y haga la función de enrutamiento entre las dos redes. Elesquema de configuraciones puede ser el siguiente:

A la hora de elegir tanto las redes como las direcciones IP debe tenerse en cuenta queno 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, sumáscara de red y su puerta de enlace, como se muestra en la figura.

Página.- 201

Fig 80: Subredes

Fig 81: Configuración de XP

Page 204: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

2. Para realizar la configuración TCP/IP de la máquina virtual con MaX hay que realizaruna configuración adicional para que dicha máquina simule tener dos adaptadores dered. Para realizar esta configuración es necesario que la máquina virtual se encuentreapagada y proceder de la forma:

• En VirtualBox seleccionar la máquina virtual con MaX y pulsar sobre laopción “Red”.

• Seleccionar la ficha correspondiente a “Adaptador 2” y rellenarla con datossimilares a la de “Adaptador 1”. La única diferencia debe ser la direcciónMAC, que el programa tomará de forma aleatoria.

Página.- 202

Fig 82: Añadir adaptador de red

Fig 83: Adaptador 2

Page 205: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

• Después de pulsar sobre el botón “Aceptar”, en la ficha “General”, debajo de laopción “Red”, aparecerán dos adaptadores.

A continuación se lanza la ejecución de la máquina virtual y se configuran los dosadaptadores (menú Aplicaciones – Sistema – Administración – Red) con suscorrespondientes direcciones IP, máscaras y sin puerta de enlace, como se muestra enla figura.

Una vez realizada esta configuración puede probarse si desde la máquina con XP sehace “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 puedecomprobar:

• 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 queconfigurar la máquina con MaX para que haga la función del router y enrute las tramasentre las dos redes. Esto se consigue ejecutando con el usuario root (no vale con elusuario 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.- 203

Fig 84: Configuración de los dos adaptadores

Page 206: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Además, la instrucción no es persistente y si se desea que la máquina realice lafunción de enrutado de forma continuada deberá ejecutarse cada vez que se inicie lamáquina. Otra forma de configurar la máquina para que realice siempre dicha funciónes 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 queincluirla. Reiniciar la máquina.

Con la función de enrutado activa puede comprobarse que XP ya hace ping aW_Server y viceversa.

Si a XP se le quita la puerta de enlace predeterminada no sabrá comunicarse conW_Server y puede comprobarse que ocurre lo siguiente:

• Al ejecutar en la máquina con XP la instrucción “ping 192.168.1.2” compruebaque la dirección especificada no se encuentra en su misma red y, sin puerta deenlace, no podrá comunicarse con otras redes y mostrará un mensaje de errorcomo: “Host de destino inaccesible”, como se muestra en la figura.

• Al ejecutar en la máquina W_Server la instrucción “ping 192.168.0.2” enviaráunas tramas de información a la máquina con XP pero, como ésta no puederesponderle, W_Server mostrará un mensaje de error como “Tiempo de esperaagotado para esta solicitud”, como se muestra en la figura.

Página.- 204

Fig 85: Ping de XP a W_Server

Fig 86: Ping de W_Server a XP

Page 207: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

6.3 Configuración de la resolución de nombres

Gracias al Servicio de Nombres de Dominio (DNS) no hace falta recordar direccionesIP, 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 especialllamado bind es el que se encarga de establecer el vínculo entre nombres y direcciones IP. Unordenador que presta este servicio se denomina servidor de nombres (name server). Losnombres también están estructurados dentro de una jerarquía; las diferentes partes funcionalesde los nombres se separan por puntos. Esta jerarquía de nombres es independiente de la yamencionada jerarquía de direcciones IP.

Un nombre completo se denomina nombre de dominio totalmente cualificado (FullyQualified Domain Name o FQDN) y se compone del nombre del ordenador y del nombre deldominio. Por ejemplo, servidor.tiernogalvan.es sería un nombre FQDN donde servidor es elnombre del ordenador y tiernogalvan.es el nombre del dominio. Este nombre de dominioincluye 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 ISOde dos letras. Desde el año 2000 existen TLDs adicionales para campos específicos que enocasiones 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 losnombres de todos los ordenadores disponibles en Internet. Esta forma de resolución denombre se tornó poco práctica debido al rápido crecimiento de Internet. Por eso se diseñó unabase de datos descentralizada, capaz de guardar los nombres de las máquinas de formadistribuida. Esta base de datos o un servidor de nombres no dispone de los datos de todos losordenadores en Internet, sino que es capaz de consultar otros servidores de nombres en unnivel más alto.

En la cúspide de la jerarquía de servidores de nombres se encuentran los “Root-Nameserver” que administran los dominios de primer nivel (TLD). El “Network InformationCenter” (NIC) se encarga de la administración de estos servidores. El Root-Nameserverconoce los servidores de nombres que se encargan de cada dominio de primer nivel. En lapágina web http://www.internic.net puede encontrar más información acerca de los dominiosde primer nivel gestionados por el NIC.

DNS es capaz de realizar otras tareas además de la resolución de nombres. El servidorde 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 servidorde nombres para que sea capaz de convertir nombres en direcciones IP. Con MaX es muy fácilconfigurar el servidor de nombres. En el caso de una conexión vía módem, puede que no seanecesario configurarlo manualmente, ya que el protocolo utilizado para la conexiónproporciona esta información durante el proceso de conexión.

Página.- 205

Page 208: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

La configuración de un servidor de nombres es más compleja y se trata en un capítuloaparte.

El protocolo whois es muy similar al de DNS y sirve para averiguar rápidamente quiénse 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 queintervienen 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 puedautilizarse el segundo.

Para introducir estos datos se accede con un usuario con los permisos adecuados (rooto madrid) al menú Aplicaciones – Sistema – Administración – Red, se desbloquea la ventanade configuración de la red (si aparece bloqueada) introduciendo la clave para el usuariomadrid, en la ficha “Conexiones” se selecciona el adaptador a configurar y pulsando sobre elbotón “Propiedades” aparecerá la ventana de propiedades que permitirá seleccionar unaconfiguració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 configurecon los datos que le envíe un servidor de DHCP, basta con marcar el cuadro deverificación “Activar el modo itinerante”, o bien, no marcar dicho cuadro y en losdatos 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 deverificació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, lamáscara de (sub)red y la dirección IP de la puerta de enlace.

Página.- 206

Page 209: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Finalmente se introducen en la ficha “DNS” las direcciones IP de los DNS's. Paraañadir un servidor de DNS hay que pulsar el botón “Añadir”, se introduce la dirección IP y sepulsa <Intro>. Una vez realizada la configuración se pulsa el botón “Cerrar”.

Página.- 207

Fig 87: Configuración de TCP/IP

Fig 88: Configuración de los DNS's

Page 210: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

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 deordenadores que se comunican vía TCP/IP han crecido vertiginosamente. Desde la invenciónde 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 crecidode 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 IPse pierden por la forma en que están organizadas las redes. Internet se divide en subredes. Elnúmero de direcciones disponibles en una subred es dos elevado a la potencia del número debits menos dos. Por eso una subred se compone por ejemplo de 2, 6, 14, 30, etc. direccionesIP. Para conectar por ejemplo 128 ordenadores a Internet, se necesita una subred con 256direcciones IP de las que hay 254 útiles. Hay que restar dos direcciones para la dirección basede la red y para la de difusión.

Para contrarrestar la previsible escasez de direcciones, en el protocolo utilizadoactualmente, IPv4, se emplean mecanismos como DHCP o NAT (Network AddressTranslation). Ambos procedimientos atenúan relativamente la escasez de direcciones enInternet junto con la convención de zonas de direcciones de red públicas y privadas. El mayorinconveniente de estos métodos radica en su compleja configuración, que requiere además unmantenimiento muy intensivo. Para configurar un ordenador en la red IPv4 es necesariointroducir numerosos datos como la dirección IP propia, la máscara de subred, dirección de lapasarela y en ocasiones incluso un servidor de nombres. Tiene que “saber” esta informaciónque 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 deIPv6 y sobre la transición del antiguo al nuevo protocolo.

6.5.1 Ventajas de IPv6

La ventaja más importante y llamativa del nuevo protocolo es la considerableampliación del espacio direccional. Una dirección IPv6 contiene 128 bits en lugar de lostradicionales 32, con lo que el número de direcciones IP disponibles asciende a miles debillones.

Las direcciones IPv6 se diferencian de sus predecesoras no sólo en la longitud, sinotambién en su estructura interna. Esta estructura permite codificar información especial sobreel sistema correspondiente y su red, como se muestra en las siguientes secciones.

Página.- 208

Page 211: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

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”. Unsistema recién instalado puede integrarse sin problemas en la red (local). Elmecanismo automático de configuración del terminal deduce la propia dirección de lainformación transmitida a través del protocolo ND (“Neighbor Discovery Protocol”)por los enrutadores adyacentes. Este procedimiento no requiere la intervención deladministrador y tiene la ventaja adicional de que, a diferencia del distribuidor dedirecciones DHCP usado en IPv4, hace innecesario el mantenimiento de un servidorcentral 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 yfácilmente. Puede comparar este mecanismo con el “roaming” de las redes de telefoníamóvil: aunque usted se encuentre en otro país, su teléfono móvil se introduce en lanueva red garantizando que siga disponible bajo el mismo número de teléfono. Ustedllama 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 unafunción adicional, IPv6 incluye IPSec y por tanto la comunicación segura entre dossistemas mediante un túnel a través de Internet.

– Compatibilidad con la versión anterior.- No es realista creer que la migración de latotalidad de Internet de IPv4 a IPv6 se va a llevar a cabo rápidamente. Por eso esimportante que ambas versiones puedan coexistir en Internet e incluso en un mismosistema. La coexistencia de ambos protocolos en Internet está asegurada por el uso dedirecciones compatibles (las direcciones IPv4 pueden convertirse fácilmente adirecciones 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 (“dual-stack-IP”) posibilita el soporte de ambos protocolos en el mismo sistema. Cadaprotocolo utiliza su propia pila de red para que no se produzcan conflictos entre ambasversiones.

– 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 redlocal, IPv6 permite un procedimiento muy distinto: con multicast es posible dirigirseal mismo tiempo a un grupo de ordenadores. Es decir, no a todos (broadcast) o sólo auno (unicast), sino a un grupo. De qué grupo se trate depende de la aplicación. Noobstante, existen algunos grupos ya definidos como “todos los servidores de nombres”(all nameservers multicast group) o “todos los enrutadores” (all routers multicastgroup).

Página.- 209

Page 212: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

6.5.2 El sistema de direcciones IPv6

Como ya se ha mencionado, el protocolo IP utilizado hasta la fecha presenta dosinconvenientes importantes. Por un lado, las direcciones IP disponibles son cada vez másescasas y por otro, la configuración de red y la administración de tablas de enrutamiento soncada vez más complicadas y requieren un gran esfuerzo de mantenimiento. IPv6 resuelve elprimer problema con la ampliación del espacio de direcciones a 128 bits. En cuanto alsegundo problema, la solución se encuentra en la estructura jerárquica de direcciones, lossofisticados mecanismos de asignación de direcciones en la red y la posibilidad del “multi-homing” 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 lospaquetes con una dirección unicast se entregan a un solo destinatario. Las direccionesde esta clase se utilizan para dirigirse a ordenadores individuales en una red local o enInternet.

– Multicast.- Las direcciones de este tipo hacen referencia a un grupo de interfaces. Lospaquetes con una dirección multicast se entregan a todos los destinatariospertenecientes a ese grupo. Este tipo de direcciones es utilizado principalmente porciertos servicios de red para dirigirse a grupos determinados.

– Anycast.- Las direcciones de este tipo hacen referencia a un grupo de interfaces. Lospaquetes con una dirección anycast se entregan a los miembros del grupo más cercanoal remitente según lo determine el protocolo de enrutamiento utilizado. Lasdirecciones de este tipo son utilizadas por terminales para encontrar servidores queofrezcan un servicio determinado en su sector de red. Todos los servidores reciben lamisma dirección anycast. Cuando un terminal solicita un servicio, el servidor queresponde es aquel que se encuentre más cercano al ordenador según el protocolo deenrutamiento empleado. Si este servidor no está disponible, se utiliza automáticamenteel segundo más cercano y así sucesivamente.

Las direcciones IPv6 se representan de forma hexadecimal y están formadas por ochobloques de 16 bits cada uno separados por dos puntos (:). Está permitido suprimir bytes decero al principio, pero no en medio ni al final de un grupo. Es posible sustituir más de cuatrobytes de cero sucesivos con el comodín ::. No se permite utilizar más de un comodín en unadirección. El proceso de suprimir los ceros se denomina en inglés “collapsing”. En elsiguiente ejemplo se ilustra este procedimiento a través de una misma dirección escrita de tresformas equivalentes:

fe80 : 0000 : 0000 : 0000 : 0000 : 10 : 1000 : 1a4fe80 : 0 : 0 : 0 : 0 : 10 : 1000 : 1a4fe80 : : 10 : 1000 : 1a4

Página.- 210

Page 213: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Cada parte de una dirección IPv6 tiene un significado determinado. Los primerosbytes forman un prefijo que indica el tipo de la dirección. La parte central hace referencia auna red o bien no representa nada, y el final de la dirección es la parte del equipo o host. Lasmáscaras de red se definen en IPv6 mediante la longitud del prefijo que se indica al final de ladirección con /. Según la dirección representada en el ejemplo siguiente, los últimos 64 bitsintegran la parte del ordenador y los primeros 64 la parte de red de la dirección. En otraspalabras, la cifra 64 significa que la máscara de red se rellena bit a bit comenzando por laizquierda. Por eso la máscara de red tiene 64 bits. Al igual que en IPv4, un enlace del tipo Yde la máscara de red con la dirección IP determina si el ordenador se encuentra en la mismasubred 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 adecuadotiene que convertir el paquete IPv6 a IPv4. Hay otras direcciones especiales(por ejemplo loopback device) que utilizan este prefijo.

Primera cifra2 ó 3

(Aggregatable Global Unicast Address) Igual que ahora, también en el casode 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 portanto sólo se puede accer a ellas en la misma subred.

fec0 : : / 10 (site-local) Estas direcciones pueden ser enrutadas pero solamente dentro deuna 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 direccionesmulticast.

La estructura de las direcciones se divide en tres partes:

– Public topology.- La primera parte, que incluye entre otras cosas uno de los prefijosmencionados en las líneas superiores, sirve para enrutar el paquete en Internet.Contiene información codificada sobre el proveedor o la institución que proporcionala conexión de red.

– Site topology.- La segunda parte contiene información de ruta sobre la subred en laque ha de entregarse el paquete.

Página.- 211

Page 214: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

– Interface ID.- La tercera parte identifica de forma unívoca la interfaz a la que vadirigida el paquete. Aquí se permite utilizar la dirección MAC como parte de ladirección, lo que simplifica enormemente la configuración del ordenador al ser unadirección única en el mundo y estar determinada por el fabricante de hardware. Dehecho, los primeros 64 bits se agrupan incluso en un identificador EUI – 64 en el quelos últimos 48 bits se toman de la dirección MAC y los 14 restantes incluyeninformación especial sobre el tipo de identificador. Esto también permite asignar unidentificador 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 suinterfaz de red se inicia por primera vez y todavía no dispone de información sobre lapropia dirección.

– : : 1 (loopback).- Dirección del dispositivo loopback.

– Dirección compatible con IPv4.- La dirección IPv6 está compuesta por la direcciónIPv4 y un prefijo de 96 bits 0 al principio de la dirección. Este tipo de direccionescompatibles se utiliza en el tunneling. De esta forma, los ordenadores IPv4/IPv6pueden comunicarse con otros situados en redes exclusivamente IPv4.

– Direcciones IPv6 asignadas a IPv4.- Este tipo de dirección indica la dirección IPv6 deun 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ónde salida o destino de este tipo a Internet o a otras subredes. Estas direccionesse caracterizan por un prefijo especial (fe80 : : / 10) y el ID de interfaz de latarjeta de red. La parte central de la dirección se compone de bytes 0 sinsignificado. Este tipo de dirección se emplea en los procesos de configuraciónautomática para dirigirse a ordenadores en la misma subred.

• Site-local.- Este tipo de dirección puede enrutarse entre distintas subredes perono fuera de una organización (site) hacia Internet. Estas direcciones se utilizanen intranets y equivalen a las direcciones privadas de IPv4. Además de unprefijo definido (fec0 : : / 10) y del ID de interfaz, estas direcciones incluyenun campo de 16 bits en el que está codificado el ID de subred. El resto serellena con bytes 0.

Página.- 212

Page 215: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

En IPv6 existe además una novedad: a una interfaz de red se le asignan por lo generalvarias direcciones IP, pudiendo así disponer de redes distintas. Una de ellas puedeconfigurarse por completo automáticamente con ayuda de la dirección MAC y un prefijoconocido. De esta forma, todos los ordenadores de la red local (direcciones link-local) estándisponibles inmediatamente después de iniciar IPv6 sin procesos de configuraciónadicionales. Gracias a las direcciones MAC integradas en las direcciones IP, estas direccionespueden 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 redlocal en la que funciona normalmente el ordenador y el prefijo correspondiente. La “homeaddress” es estática y no se modifica. Todos los paquetes dirigidos a este ordenador seentregan tanto en la red local como en la externa. La entrega de paquetes en la red externa esposible gracias a importantes novedades del protocolo IPv6: stateless autoconfiguration yneighbor discovery. Además de la “home address”, un ordenador móvil cuenta con una ovarias direcciones adicionales pertenecientes a las redes externas en las que se mueve. Estetipo de direcciones se denomina “care-of address”. La red local del ordenador móvil debecontener una instancia que “reenvíe” los paquetes dirigidos a la “home address” en caso deque el ordenador se encuentre en otra red. En entornos IPv6, esta función la realiza un “homeagent” que entrega todos los paquetes dirigidos a la dirección local del ordenador móvilmediante un túnel. Aquellos paquetes cuya dirección destino sea la “care-of address” puedenser entregados directamente a través del “home agent”.

6.5.3 Coexistencia de IPv4 e IPv6

La migración de todos los ordenadores en Internet de IPv4 a IPv6 no va a producirsede la noche a la mañana, sino que ambos protocolos coexistirán durante algún tiempo. Lacoexistencia 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ómose transporta IPv6 a través de las redes IPv4 aún predominantes. El método de tunneling y lasdirecciones compatibles constituyen la respuesta a estos problemas.

Las islas IPv6 individuales en medio de una red (global) IPv4 intercambian sus datos através de túneles. Este método consiste en empaquetar los paquetes IPv6 en paquetes IPv4para poder transportarlos a través de una red exclusivamente IPv4. Un túnel se define como laconexión entre dos puntos finales IPv4. Aquí debe especificarse la dirección destino IPv6 (oel prefijo correspondiente) a la que se dirigen los paquetes IPv6 encubiertos y la direcciónremota IPv4 en la que han de recibirse los paquetes enviados por el túnel. En el caso mássencillo, los administradores configuran manualmente estos túneles entre su red y el puntodestino. Este método se denomina tuneling estático.

Página.- 213

Page 216: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Sin embargo, el método manual no siempre basta para configurar y administrar lostúneles necesarios para el trabajo diario en red. Por este motivo se han desarrollado tresmétodos que permiten el tuneling dinámico:

– 6over4.- Los paquetes IPv6 se empaquetan automáticamente en paquetes IPv4 y seenvían a través de una red IPv4 en la que se ha activado el multicasting. De cara aIPv6 se actúa como si toda la red (Internet) fuese una única LAN (Local AreaNetwork) de proporciones gigantescas. Así se detecta automáticamente el punto finalIPv4 del túnel. Los inconvenientes de este mecanismo son una escalabilidad deficientey 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 empresaspequeñas o redes de instituciones que dispongan de multicasting.

– 6to4.- En este método se generan automáticamente direcciones IPv4 a partir dedirecciones IPv6, permitiendo así que las islas IPv6 se comuniquen entre sí a través deuna red IPv4. No obstante, también existen algunos problemas en la comunicaciónentre las islas IPv6 e Internet. Este método se basa en el RFC 3056.

– IPv6 Tunnel Broker.- En este método se utilizan servidores especiales que se encargande crear automáticamente túneles para los equipos con direcciones IPv6. Esteprocedimiento se describe en el RFC 3053.

En medio de la “anticuada” Internet, existe una red mundial de subredes IPv6conectadas entre sí por medio de túneles. Dicha red se conoce como 6Bone y en ella se pruebaIPv6. Los desarrolladores de software y proveedores que desarrollan u ofrecen servicios IPv6pueden servirse de este entorno de pruebas para acumular experiencias con el nuevoprotocolo. Puede obtener información adicional en la página web del proyecto 6Bone:http://www.6bone.net.

6.5.4 Configuración de IPv6

Para utilizar IPv6 normalmente no hace falta configurar nada especial en el lado delcliente. Únicamente es necesario cargar el soporte de IPv6 por ejemplo ejecutando elcomando “modprobe ipv6” como usuario root.

De acuerdo con la filosofía de autoconfiguración en IPv6, se asigna a la tarjeta unadirección de red dentro de la red link-local. Normalmente no se mantiene ninguna tabla deenrutamiento en un ordenador cliente, ya que éste puede consultar mediante el RouterAdvertisement 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 losclientes 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 dedirecciones y enrutadores.

Página.- 214

Page 217: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

La página del manual de ifup (man ifup) contiene información muy útil sobre laconfiguración de túneles con ayuda de los archivos de /etc/sysconfig/network.

6.5.5 Información adicional sobre IPv6

El resumen de IPv6 presentado no pretende ser una introducción completa acerca delamplio tema IPv6. Para más información (en inglés), puede consultar la literatura impresa oen línea que se presenta a continuación:

– http://www.ngnet.it/e/cosa-ipv6.php

Serie de artículos que describen de forma excelente los fundamentos de IPv6. Resultamuy adecuado para irse introduciendo en este tema.

– http://www.bieringer.de/linux/IPv6/

CÓMOs de IPv6 en Linux y muchos enlaces.

– http://www.6bone.net/

Acceder a IPv6 a través de un túnel.

– http://www.ipv6.org/

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,2002. - (ISBN 0-596-00125-8)

Página.- 215

Page 218: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

6.6 Ficheros de configuración de red

6.6.1 Conceptos

Para realizar la configuración de la red pueden utilizarse las herramientas gráficas delapartado anterior o bien realizar las modificaciones oportunas en los ficheros que contienenlos datos de configuración, teniendo en cuenta que para ello deberá operarse con un usuarioque tenga los permisos adecuados.

Es recomendable que los usuarios administradores conozcan los ficheros queintervienen en la comunicación entre ordenadores y nunca vendrá mal una explicación de losconceptos subyacentes.

Todas las tarjetas de red — ya sean integradas o dispositivos hotplug (PCMCIA, USBy parcialmente también PCI) — se detectan y configuran por medio de hotplug. Paracomprender 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 undispositivo (device) físico, y por otra, actúa como interfaz (interface). Cuando undispositivo es insertado o detectado, se genera un evento hotplug. Este evento hotplughace que el dispositivo sea activado a través del script /sbin/hwup. Al activarse latarjeta de red como nueva interfaz de red, el kernel produce otro evento hotplug que asu 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 sehan registrado. El orden de inicio es decisivo para la denominación. Si la primera devarias tarjetas de red falla, se modifica la numeración/denominación de todas lastarjetas iniciadas con posterioridad. En el caso de tarjetas con “auténtico” soportehotplug, 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 laconfiguración de dispositivos (hardware) e interfaces y, por otra, la asignación deconfiguraciones 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 delas interfaces en /etc/sysconfig/network/ifcfg-*. Los nombres de las distintas configuracionesdescriben los dispositivos o interfaces a los que pertenecen. Puesto que la asignación decontroladores a nombres de interfaces presupone que los nombres de interfaces permanezcaninvariables, esta asignación ya no puede tener lugar en /etc/modprobe.conf. Las entradas aliasen este archivo podrían tener incluso efectos secundarios negativos en el nuevo concepto.

Página.- 216

Page 219: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Los nombres de configuración, es decir, todo lo que sigue a hwcfg- o ifcfg-, puedendescribir a los dispositivos mediante el lugar donde están instalados, su ID específico o elnombre 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 yproducto). Para la interfaz correspondiente puede utilizarse bus-pci-0000:02:01.0 o wlan-id-00:05:4e:42:31:7a (dirección MAC).

Si se prefiere no asignar una configuración de red determinada a una tarjetaespecificada sino a cualquier tarjeta de un tipo concreto (del que sólo puede haber una tarjetainsertada en cada momento), se elige un nombre de configuración menos específico. Porejemplo, es posible emplear bus-pcmcia para todas las tarjetas PCMCIA. Por otra parte, losnombres 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 dispositivocorrespondiente a la interfaz. /sbin/getcfg se encarga de buscar la configuración másadecuada. La salida de getcfg proporciona todos los datos que pueden emplearse paradescribir un dispositivo. Consulte la página del manual de getcfg para obtener laespecificación exacta de los nombres de configuración.

El método descrito permite configurar correctamente una interfaz de red de formafiable incluso aunque los dispositivos de red no se inicien siempre en el mismo orden. Noobstante, aún queda por resolver el problema de que el nombre de interfaz todavía dependedel orden de activación. Existen dos formas de garantizar el acceso fiable a la interfaz de unatarjeta de red determinada:

– /sbin/getcfg-interface nombre_de_configuración.- devuelve el nombre de la interfaz dered correspondiente. Por eso también es posible introducir en algunos (por desgraciano en todos) archivos de configuración de servicios de red el nombre de laconfiguració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 redvirtuales (túneles).

– Es posible asignar un nombre de interfaz permanente a todas las interfaces cuyaconfiguración no se designa con el nombre de interfaz. Para ello se define la entradaPERSISTENT_NAME=<pname> en una en una configuración de interfaz (ifcfg-*). Elnombre permanente pname no puede ser uno de los nombres que el kernel asignaautomáticamente, lo que ya excluye a eth*, tr*, wlan*, qeth*, iucv*, etc. En su lugarpuede utilizarse, por ejemplo, net* o nombres descriptivos como external, internal odmz. Los nombres permanentes se asignan a la interfaz inmediatamente después de suregistro, por lo que es necesario volver a cargar el controlador de la tarjeta de red (obien ejecutar “hwup <descripción_del_dispositivo>”). En este caso no basta conejecutar rcnetwork restart.

Página.- 217

Page 220: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Hay que tener en cuenta que el uso de nombres permanentes de interfaz no se haprobado en todas las áreas. Puede ocurrir que algunas aplicaciones no funcionencorrectamente con nombres de interfaz elegidos libremente.

ifup no inicia el hardware, sino que presupone la existencia de una interfaz. Parainiciar el hardware se emplea hwup, que es ejecutado por hotplug (o coldplug). En cuanto seinicia un dispositivo, ifup se inicia automáticamente para la nueva interfaz a través de hotplugy, si el modo de inicio es onboot, hotplug o auto y el servicio network ha sido activado, ifupes ejecutado. Antiguamente lo normal era que “ifup <nombre_de_interfaz>” desencadenase elinicio del hardware. Hoy en día el proceso es exactamente el inverso. Primero se inicia uncomponente de hardware y todas las acciones posteriores resultan de ésta. Esto permiteutilizar un juego de configuración existente para configurar de forma óptima una cantidadvariable de dispositivos.

Para una mayor claridad, en la siguiente tabla se recogen los scripts más importantesque intervienen en la configuración de red. Donde sea posible se distingue entre el punto devista del hardware y de la interfaz:

Etapa de laconfiguración

Comando Función

Hardwarehw{up, down,status}

Los scripts hw* son activados por el subsistema hotplug parainiciar un dispositivo, cancelar el inicio o preguntar el estadode un dispositivo. Puede obtenerse información adicional con“man hwu”.

Interfaz getcfggetcfg pregunta el nombre de interfaz correspondiente a unnombre de configuración o una descripción de hardware.Puede obtenerse información adicional con “man getcfg”.

Interfazif{up, down,status}

Los scripts if* activan o desactivan interfaces de redexistentes o devuelven el estado de la interfaz en cuestión.Puede obtenerse información adicional con “man ifup”.

6.6.2 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.- 218

Page 221: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Un ejemplo de fichero /etc/network/interfaces para un equipo con tres interfaces dered, dos ethernet y otro wireless, podría ser:

auto loiface lo inet loopback

iface wlan0 inet static address 192.168.0.2netmask 255.255.255.0gateway 192.168.0.1wireless-key s:estaesmiclavewireless-essid Miredauto wlan0

iface eth0 inet static address 192.168.0.3netmask 255.255.255.0

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éntotalmente 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 NetworkManagersearch tiernogalvan.esnameserver 87.216.1.65nameserver 87.216.1.66

Página.- 219

Page 222: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Algunos servicios, como pppd (wvdial), ipppd (isdn), dhcp (dhcpcd y dhclient),pcmcia y hotplug pueden modificar los archivos /etc/resolv.conf mediante el scriptmodify_resolvconf. Al modificar el archivo /etc/resolv.conf con este script, se incluirá en elarchivo un comentario con información sobre los servicios que se han modificado, el lugardonde se encuentra el archivo original y cómo es posible suprimir las modificacionesautomáticas. Si /etc/resolv.conf es modificado más veces, se volverá a limpiar este cúmulo demodificaciones cuando se recojan en otro orden; lo cual puede ocurrir con isdn, pcmcia yhotplug.

Si un servicio no ha finalizado “limpiamente”, se puede restaurar el estado originalcon ayuda del script modify_resolvconf. Al arrancar se probará si resolv.conf se ha quedadomodificado (por ejemplo debido a un cuelgue del sistema); en ese caso se volverá a restaurarel resolv.conf original (sin modificar).

/etc/hosts

Este archivo tiene una tabla de correspondencia entre nombres de ordenadores ydirecciones IP. En esta tabla deben aparecer todos los ordenadores con los que se quiereestablecer una conexión IP cuando no se usa un servidor de nombres. Cada ordenador ocupauna línea en la tabla que contiene el número IP, el nombre completo de la máquina y elnombre (abreviado), por ejemplo profe. La línea debe comenzar con la dirección IP y lasdemás indicaciones se separan con espacios o tabuladores. Los comentarios comienzan con #.Un ejemplo puede ser el siguiente:

127.0.0.1 localhost192.168.0.1 servidor.tiernogalvan.es servidor192.168.0.10 profe.tiernogalvan.es profe192.168.0.50 alumno.tiernogalvan.es alumno

/etc/networks

En este archivo se convierten los nombres de redes en direcciones de red. El formatose parece al del archivo hosts sólo que aquí los nombres de las redes aparecen por delante desus direcciones IP, por ejemplo:

loopback 127.0.0.0redlocal 192.168.0.0

/etc/host.conf

La resolución de nombres, o sea, la traducción del nombre del ordenador o de la redmediante la librería resolver, se gestiona a través de este archivo. Este sólo se utiliza paraprogramas con enlaces a libc4 o libc5 (para programas glibc actuales, ver las opciones deconfiguración en /etc/nsswitch.conf). Un parámetro debe ocupar una sola línea y loscomentarios comienzan con #.

Página.- 220

Page 223: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Los parámetros posibles se muestran en la tabla siguiente:

Parámetro Descripción

order hosts, bind,nis

Determina el orden de llamada a los servicios de resolución de nombres.Los parámetros posibles, separados por espacios o comas, son: - hosts: búsqueda en el archivo /etc/hosts. - bind: llama a un servidor de nombres. - nis: mediante NIS.

multi on/offDetermina si un ordenador dado e alta en /etc/hosts puede tener variasdirecciones IP.

nospoof onspoofalert on/off

Estos parámetros influyen sobre el spoofing del servidor de nombres, perono tienen ninguna influencia adicional sobre la configuración de red.

trimnombredominio

El nombre de dominio que se indica aquí, se resta del nombre totalmentecualificado del ordenador que lo contiene (antes de asignar la dirección IPal nombre de ordenador). Se trata de una opción muy útil cuando elarchivo /etc/hosts sólo contiene nombres de ordenadores locales (alias) yéstos deben ser reconocidos también cuando se añade el nombre deldominio.

Un ejemplo de contenido del fichero /etc/host.conf puede ser:

# En la red hay un servidor de nombresorder hosts bind# permitir múltiples direccionesmulti 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 deThe 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 determinadasinformaciones. El ejemplo siguiente muestra un archivo nsswitch.conf en el que las líneas decomentarios comienzan con # y respecto a la “base de datos” hosts indica que se envía unasolicitud al servicio DNS después de consultar /etc/hosts (files).

passwd: compatgroup: compat

hosts: files dnsnetworks: files dns

Página.- 221

Page 224: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

services: db filesprotocols: db files

netgroup: filesautomount: files nis

Las “bases de datos” accesibles vía NSS se recogen en la tabla siguiente. Para el futurose espera también la disponibilidad de automount, bootparams, netmasks y publickey.

Base dedatos

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 comogethostbyname o similares.

netgroup Lista de hosts y de usuarios válida en la red para administrar los derechos deacceso; 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 porgetrpcbyname y funciones similares.

services Servicios de red; datos usados por getservent.

shadow Las contraseñas “shadow” de los usuarios, utilizada por getspnam. Ver lapágina del manual man 5 shadow.

Las opciones de configuración para bases de datos NSS se muestran en la tablasiguiente:

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.- 222

Page 225: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

/etc/nscd.conf

Este es el archivo para configurar nscd (Name Service Cache Daemon) - ver páginasdel manual man 8 nscd y man 5 nscd.conf. La información en cuestión es la que se encuentraen passwd y groups. Es esencial para el buen rendimiento de servicios de directorio como NISy LDAP, ya que en caso contrario cualquier acceso a nombres o grupos requeriría unaconexión de red. hosts no se lee para no tener que reiniciar el daemon, por ejemplo, cuando secambia la resolución de nombres de dominio (DNS) modificando /etc/resolv.conf.

Cuando está activada la característica “caching” para passwd, suelen pasar unos 15segundos hasta que un usuario recién creado sea conocido en el sistema. Este tiempo deespera 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 elnombre de dominio. Hay distintos scripts que leen este archivo durante el arranque delordenador. 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 otrosdispositivos. Incluyen los parámetros necesarios como por ejemplo módulo del kernel, modode inicio y correspondencias de scripts. Puede encontrar información adicional en la páginadel manual de hwup. Los archivos de configuración hwcfg-static-* se aplican al iniciarsecoldplug 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 eifstatus. Este archivo está completamente comentado. También hay comentarios en dhcp ywireless, donde se almacenan las opciones generales de configuración para DHCP y lastarjetas de red inalámbricas. También se pueden utilizar todas las variables de estos archivosen 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 lasdiversas tareas del sistema: la ruta a un ordenador, a un ordenador a través de una pasarela o auna red. Las rutas individuales requeridas por algunas interfaces pueden introducirse en elarchivo /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 siguienteaspecto:

DESTINO GATEWAY MASCARA INTERFACE [TIPO] [OPCIONES]DESTINO GATEWAY PREFIXLEN INTERFACE [TIPO] [OPCIONES]DESTINO/PREFIXLEN GATEWAY - INTERFACE [TIPO] [OPCIONES]

Página.- 223

Page 226: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

En caso de que no se especifiquen GATEWAY, MÁSCARA, PREFIXLEN oINTERFACE, debe introducirse en su lugar el signo -. Las entradas TIPE y OPCIONESpueden omitirse sin más.

La primera columna contiene el destino de la ruta. Dicho destino puede tratarse de ladirección IP de una red u ordenador o del nombre completo cualificado de una red uordenador en el caso de servidores de nombres accesibles.

En la segunda columna aparece la pasarela predeterminada o una pasarela a través dela cual puede accederse a un ordenador o a una red. La tercera columna contiene la máscarade red de una red u ordenador detrás de una pasarela. La máscara de red para ordenadores quese encuentran detrás de una pasarela es, por ejemplo, 255.255.255.255.

La última columna sólo tiene importancia en el caso de redes conectadas al ordenadorlocal (loopback, Ethernet, RDSI, PPP, …). Aquí debe aparecer el nombre del dispositivo.

6.6.3 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 seinician cuando el sistema entra en uno de los niveles de ejecución de multiusuario. Lasiguiente 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, elhardware debe haber sido iniciado a través de /etc/init.d/coldplug (pormedio de hotplug). En caso de que el servicio network no se hayainiciado, ninguna interfaz de red será activada mediante hotplug al serinsertada.

/etc/init.d/inetd Inicia xinetd. xinetd puede utilizarse para proporcionar servicios deservidor en el sistema. Así por ejemplo, puede activar vsftpd cuando seinicia una conexión FTP.

/etc/init.d/portmap Inicia portmapper, el cual se necesita para utilizar servidores RPC talescomo 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.- 224

Page 227: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

6.7 Actividades

1. Calcular los datos de una red (dirección IP, máscara, dirección de la red, dirección dedifusión, nº máximo de direcciones IP y nº máximo de equipos) sabiendo que unequipo está configurado con 192.168.17.234 / 22.

2. En una red configurada para un máximo de 30 equipos, un equipo tiene la dirección IP192.168.25.130. Calcular los demás datos de la red.

3. Se desea instalar una red con 64 ordenadores. ¿ Qué rango de direcciones IP y máscarase 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 192.168.4.255.¿ Calcular el rango de direcciones IP de los equipos y los demás datos de la red.

5. En una red con máscara 255.255.240.0 y dirección de la red 192.168.32.0 hallar elrango 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ácticadesarrollada en la documentación pero para dos redes con máscaras diferentes yprobar el funcionamiento correcto de la puerta de enlace.

7. Reconfigurar el adaptador de red con valores diferentes a los actuales y comprobar quetodo funciona correctamente haciendo uso de la instrucción ping y consultando algunapágina de Internet.

8. Modificar la dirección IP del equipo editando el fichero correspondiente y comprobardesde el entorno gráfico que ha quedado modificada. Parar y levantar elfuncionamiento del interface afectado y comprobar mediante ifconfig que lamodificación efectuada está activa.

9. Añadir un Servidor de nombres editando el fichero adecuado y comprobar lamodificación desde el entorno gráfico.

10. Añadir un equipo (con su correspondiente dirección IP) al fichero /etc/hosts ycomprobar que se le puede hacer ping tanto por su dirección IP como por su nombrede 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 oinexistencia.

13. Consultar en el fichero adecuado el nombre del equipo.

Página.- 225

Page 228: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

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 Ubuntu.

Resumen.

En este tema se dan a conocer los diferentes sistemas de archivos utilizados por losdiferentes sistemas operativos y cómo se gestionan tanto desde el entorno gráfico como desdela línea de comandos. Se muestra la organización de los ficheros dentro del sistema dearchivos en un área de directorios, otra de inodos y otra con los bloques de información. Setratan los conceptos de directorio activo, trayectoria, comodines, redireccionamientos yfiltros. Y finalmente se recorren las diferentes herramientas y comandos que permiten obtenerinformación del sistema.

Temporización: 12 horas.

Página.- 226

Page 229: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

7.2 Sistemas de archivos

Antes de pasar a analizar los diferentes sistemas de archivos soportados por Ubuntu esconveniente conocer algunos conceptos:

– Metadatos.- información sobre la estructura interna de los datos de un sistema dearchivos que garantiza su orden y disponibilidad. Todo sistema de archivos posee supropia estructura de metadatos. Aquí es donde radica en parte la causa de lasdiferencias en cuanto a rendimiento de los sistemas de archivos. Es extremadamenteimportante mantener intactos los metadatos, ya que de lo contrario se podría dañartodo el sistema de archivos. Un ejemplo pueden ser las fichas de una biblioteca.

– Inodos.- contienen toda la información sobre un archivo: el nombre, el tamaño, elnúmero de enlaces, la fecha, la hora en que fue creado, modificaciones, accesos comopuntero 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 elque el controlador del sistema de archivos introduce los (meta)datos del sistema dearchivos que van a ser modificados. El “journaling” reduce enormemente el tiempo deelaboración de un sistema Linux, ya que de este modo el controlador del sistema dearchivos 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 dearchivos. El programa Gparted, accesible solamente para usuarios con privilegios deadministración, muestra los sistemas de archivos soportados por Ubuntu:

Página.- 227

Fig 89: Sistemas de archivos mostrados por Gparted

Page 230: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Para lanzar la ejecución del programa puede hacerse desde la línea de comandos con“gparted” o a través del lanzador de aplicaciones - Opción “Ver” - Opción “Soporte parasistema de archivos”. La ventana muestra además las operaciones permitidas y los paquetesnecesarios para cada sistema de ficheros.

Hay que tener siempre en cuenta que no existe ningún sistema de archivos que puedafuncionar del mismo modo con todas las aplicaciones. Cada sistema de archivos tiene puntosfuertes y débiles que se deben de tener presentes. Ni el sistema de archivos más desarrolladode todo el mundo puede sustituir a la copia de seguridad.

Los conceptos “integridad de los datos” o “coherencia de los datos” no se refieren eneste capítulo a la coherencia de los datos que un usuario tiene guardados (los datos que unaaplicación escribe en los archivos). La coherencia de estos datos debe quedar asegurada porlas aplicaciones mismas.

En principio, todas las operaciones de particionamiento, así como de creación yedición de sistemas de archivos puede realizarse mediante Gparted.

7.2.1 Ext2

El origen de Ext2 se remonta a los primeros días de Linux. Su antecesor, el ExtendedFile System fue implementado en abril de 1992 e integrado en Linux 0.96c. Este sufrió unaserie de modificaciones y durante años se le conoció como Ext2 a la vez que se le consideró elsistema de archivos más popular de Linux. Con la introducción del sistema Journaling File yde su tiempo de elaboración tan sorprendentemente corto, Ext2 perdió importancia. Algunasde sus características más relevantes son:

– Estabilidad.- Con el correr del tiempo, Ext2 sufrió muchas mejoras que le hicieronganarse la reputación de ser “sólido como una roca”. En caso de una caída del sistemaen la que el sistema de archivos no puede desmontarse adecuadamente, e2fsck iniciaun análisis de los datos del sistema de archivos. Los metadatos se reconstruyen y losarchivos o bloques de datos que quedan sueltos se guardan en un directoriodenominado lost+found.

En contraposición a la mayoría de los sistemas de archivos transaccionales ojournaling, e2fsck analiza todo el sistema de archivos y no sólo los bits de metadatosmodificados. Esto lleva más tiempo que la comprobación de los datos de protocolo deun sistema journaling. Dependiendo del tamaño del sistema de archivos, puede llegar adurar más de media hora. Por esta razón, Ext2 no se escoge para ningún servidor quedeba tener un alto rendimiento. Dado que Ext2 no debe hacerse cargo de ningún diarioy 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 seconvertirá en el sistema de archivos de la próxima generación. Su fiabilidad yestabilidad se complementarían perfectamente con las ventajas de los sistemas dearchivos journaling.

Página.- 228

Page 231: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

7.2.2 Ext3

Ext3 fue concebido por Stephen Tweedie. A diferencia del resto de los sistemas dearchivos de “última generación”, no está basado en un nuevo diseño, sino en Ext2. Ambossistemas de archivos están estrechamente vinculados. Un sistema de archivos Ext3 se puedemontar fácilmente sobre un sistema Ext2. La diferencia fundamental entre ambos radica enque 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 deExt2, a la vez que comparten formato tanto para el disco como para los metadatos, lasactualizaciones no son complicadas. Incluso se pueden llevar a cabo mientras elsistema de archivos Ext2 está montado. El proceso de cambio a otro sistema dearchivos journaling, como por ejemplo ReiserFS, JFS, o XFS, puede llegar a ser muytrabajoso debido a que se deben realizar copias de seguridad de todo el sistema dearchivos y después instalarlo desde cero. Sin embargo, el cambio a Ext3 puede ser unacuestión de minutos. Además es muy seguro, ya que resulta difícil que lareelaboració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 unaactualización a un sistema de archivos journaling, se puede imaginar fácilmente elsignificado de Ext3 para muchos administradores de sistemas. El pasar de Ext3 a Ext2es tan fácil como la actualización en sentido contrario. Tan sólo se tiene que desmontarel sistema Ext3 y montarlo como Ext2.

– Fiabilidad y rendimiento.- Otros sistemas de archivos journaling siguen el principiojournaling de “sólo metadatos” (metadata-only). Esto significa que los metadatospermanecen en un estado coherente, lo que sin embargo no puede garantizarseautomáticamente para los datos del sistema de archivos. Ext3 tiene capacidad paracuidar tanto de los metadatos como de los datos mismos. Se puede configurarindividualmente el detalle con el que Ext3 debe ocuparse de los datos y metadatos. Elgrado más alto de seguridad (es decir, integridad de los datos) se consigue al arrancarExt3 en modo data=journal; esto puede hacer que el sistema sea más lento, ya que seguardarán en el diario tanto los datos como los metadatos. Una posibilidadrelativamente nueva consiste en la utilización del modo data=ordered, que garantiza laintegridad tanto de los datos como de los metadatos a pesar de que sólo realizajournaling para los metadatos. El controlador del sistema de archivos reúne todos losbloques de datos relacionados con la actualización de los metadatos. Estos bloques dedatos se escriben en el disco antes de que los metadatos sean actualizados. Con esto seconsigue la coherencia de datos y metadatos sin pérdida de rendimiento. Un tercer tipode modo es data=writeback. De esta forma se puede escribir datos en el sistema dearchivos 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 estaopción puede ocurrir que aparezcan viejos datos en los archivos después de haberseproducido una caída del sistema mientras se garantiza la integridad del sistema dearchivos. Mientras no se indique otra opción, Ext3 arrancará con la opciónpredeterminada data=ordered.

Página.- 229

Page 232: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

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 usuarioroot. tune2fs se encarga de crear el diario Ext3 con parámetros estándar. Si por elcontrario se prefiere definir con qué tamaño y en qué dispositivo debe crearse eldiario, hay que ejecutar “tune2fs -J” con los parámetros “size=...” y “device=...”. Sepuede 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 dearchivos Ext3 sea detectado como tal, hay que abrir el archivo /etc/fstab y cambiar eltipo de sistema de archivos de la partición correspondiente de ext2 a ext3. Lamodificació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 RAMdisk inicial initrd. A continuación introduzca estos dos módulos en el archivo/etc/sysconfig/kernel bajo INITRD_MODULES. Posteriormente hay que ejecutar elcomando “mk_initrd”.

7.2.4 Ext4

Ext4 es el sistema de archivos sucesor de ext3 que actualmente está empezando autilizarse para Linux. Nace para implementar algunas nuevas características que ext3 no podíaimplementar. El desarrollo de ext4 empezó en Noviembre de 2006, aunque ha sidodesconocido para la mayoría de usuarios de Linux hasta ahora, que empieza a aparecer pordefecto 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 Tbmientras 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 lostiempos de borrado de ficheros largos, además de otras ventajas.

– Preasignación persistente.- Si una aplicación necesita espacio de disco predefinidopreviamente a usarlo, la mayoría de Sistemas Operativos lo hacen escribiendo ceros enun 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.- 230

Page 233: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

– 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 puedacontener 32.000 subdirectorios en ext3, te alegrará saber que este límite se haeliminado en ext4.

– Checksums.- ext4 añade dígitos de control (checksum) a los datos, que aumentan lafiabilidad y el rendimiento.

– Desfragmentación.- Aunque ext3 apenas se fragmenta, los ficheros almacenadossiempre tienen cierta tendencia pequeña a estar fragmentados. ext4 añade soporte parala desfragmentación, que mejorará el rendimiento global.

– Undelete: ext4 soporta undelete, herramienta para recuperar archivos que han sidoborrados de forma accidental.

– Comprobación de ficheros más rápida: ext4 añade estructuras de datos que permite afsck 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 laprecisión de este dato hasta el nanosegundo. Asimismo se dispondrá de marcas detiempo 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íarecomendado para sistemas importantes en producción, aunque llevando más de un año decorrección de bugs, se considera actualmente estable y recomendado para sistemasdomésticos o sistemas en producción no estrictamente vitales. Quitando algunas aplicacionesque se muestran incompatibles con ext4 por la utilización de entrada/salida a disco noestándar, el resto de aplicaciones mostrarán un incremento notable de rendimiento.

7.2.5 ReiserFS

ReiserFS es producto elaborado por Hans Reiser y por el equipo de desarrolloNamesys. ReiserFS se perfiló como una alternativa poderosa a Ext2. Sus grandes ventajaseran: una mejor administración de la memoria del disco duro, un rendimiento optimizado delacceso al disco y una recuperación más rápida después de una caída del sistema. Acontinuación se describen con más detalle:

– Mejor administración de la memoria del disco duro.- En ReiserFS, todos los datos seorganizan en una estructura llamada B*-balanced tree. La estructura de árbolcontribuye a una mejor administración de la memoria del disco duro, ya que losarchivos pequeños se pueden guardar directamente en las hojas del B*tree (árbol), enlugar de guardarlos en otro lugar y luego tener que administrar el puntero para queapunte al sitio indicado. Además, la memoria no se asignará en unidades de 1 a 4 Kb,

Página.- 231

Page 234: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

sino en la unidad exactamente necesaria. Otra ventaja es el proceso dinámico deinodes. Esto dota al sistema de archivos de una gran flexibilidad frente a los sistemasconvencionales, como por ejemplo Ext2, en el que se debe indicar la densidad delinode en el momento de crear el sistema de archivos.

– Mejor rendimiento del acceso al disco duro.- En los archivos pequeños, tanto los datosdel 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ónnecesaria.

– Rápida recuperación tras una caída del sistema.- Desde el contenido de un diario alseguimiento de las pequeñas modificaciones de metadatos, la comprobación delsistema de archivos se reduce a unos pocos segundos incluso en sistemas de archivosgrandes.

– Fiabilidad gracias al registro de diario (data journaling).- ReiserFS también soporta eldiario y el modo “ordered” de datos. El modo predeterminado es data=ordered, lo quegarantiza la integridad tanto de los datos como de los metadatos. No obstante, el diariose utiliza sólo para los metadatos.

7.2.6 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 diferenciasustancialmente de su predecesor ReiserFS (versión 3.6), introduce el concepto de pluginspara configurar las funciones del sistema de archivos y un concepto de seguridad máselaborado.

– Concepto de seguridad elaborado.- Durante el diseño de Reiser4, los desarrolladorespusieron especial énfasis en la implementación de funciones relacionadas con laseguridad. Como consecuencia, Reiser4 incorpora un conjunto de plugins de seguridaddedicados, el más importante de los cuales introduce el concepto de elementos dearchivo o “items”. Actualmente, el control de acceso a los archivos se define enfunción del archivo. Si existe un archivo muy grande que contiene informaciónrelevante para varios usuarios, grupos o aplicaciones, los permisos de acceso deben serpoco precisos para incluir a todos los interesados. En Reiser4 es posible dividir estetipo de archivos en porciones más pequeñas o items. Los permisos de acceso puedendefinirse para cada elemento y usuario, permitiendo una gestión de seguridad dearchivos 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 queel resto de usuarios sólo tiene permiso de lectura. El concepto de “items” de Reiser4hace que sea posible dividir este archivo en un conjunto de elementos (un “item” porcada usuario) y permitir a usuarios o aplicaciones modificar sus propios datos sinacceder a los datos de otros usuarios. Este concepto favorece tanto la seguridad comola flexibilidad.

Página.- 232

Page 235: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

– Extensiones a través de plugins.- Muchas de las funciones inherentes a un sistema dearchivos o externas pero usadas normalmente por sistemas de archivos se hanimplentado en Reiser4 en forma de plugins. Si desea enriquecer el sistema de archivoscon nuevas funciones, estos plugins pueden añadirse fácilmente al sistema base sinnecesidad de volver a compilar el kernel o reformatear el disco duro.

– Estructura mejorada del sistema de archivos gracias a la asignación retardada.- Aligual que XFS, Reiser4 soporta la asignación retardada incluso para metadatos,mejorando el rendimiento global del sistema.

7.2.7 JFS

JFS, “Journaling File System”, fue desarrollado por IBM para AIX. La primeraversión beta de JFS portada a Linux llegó al entorno Linux en el verano del año 2000. Laversión 1.0.0 salió a la luz en el año 2001. JFS está diseñado para cumplir las exigencias delentorno de un servidor de alto rendimiento. Al ser un sistema de archivos de 64 bits, JFSsoporta archivos grandes y particiones LFS (Large File Support), lo cual es una ventaja máspara los entornos de servidor.

Un análisis más detallado de JFS muestra por qué este sistema de archivos es unabuena elección para su servidor Linux:

– Journaling eficaz.- JFS sigue el principio de “metadata only”. En vez de unacomprobación completa, sólo se tienen en cuenta las modificaciones en los metadatosprovocadas por las actividades del sistema. Esto ahorra una gran cantidad de tiempoen la fase de recuperación del sistema tras una caída. Las actividades simultáneas querequieren más entradas de protocolo se pueden unir en un grupo en el que la pérdidade rendimiento del sistema de archivos se reduce en gran medida gracias a múltiplesprocesos de escritura.

– Eficiente administración de directorios.- JFS abarca diversas estructuras dedirectorios. En pequeños directorios se permite el almacenamiento directo delcontenido 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 Ext2es necesario indicar el grosor del inode (la memoria ocupada por la información deadministración) por adelantado. Con ello se limita la cantidad máxima de archivos odirectorios de su sistema de archivos. Esto no es necesario en JFS, puesto que asignala memoria inode de forma dinámica y la pone a disposición del sistema cuando no seestá utilizando.

Página.- 233

Page 236: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

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 XFSconsigue un sistema de archivos journaling de 64 bits de gran rendimiento adaptado a lasnecesidades extremas de hoy en día. XFS también está indicado para el trabajo con archivosgrandes 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 delos 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ónde un sistema de archivos XFS, el dispositivo de bloque (block-device) que sirve debase al sistema de archivos se divide en ocho o más campos lineales de igual tamañodenominados grupos de asignación. Cada grupo de asignación administra inodes asícomo memoria libre. Se puede considerar a estos grupos prácticamente como sistemasde archivos dentro de sistemas de archivos. Puesto que estos grupos de asignación sonbastante independientes, el kernel puede dirigirse a más de uno simultáneamente. Esteconcepto de grupos de asignación independientes satisface los requisitos de lossistemas con varios procesadores.

– Alto rendimiento con eficiente administración de la memoria del disco.- B+treesadministran la memoria libre y los inodes dentro de los grupos de asignación. Elmanejo de B+trees contribuye al gran rendimiento de XFS. Una característica de XFSes la llamada asignación retardada. XFS realiza la asignación de la memoria mediantela división en dos de los procesos. Una transacción “en suspenso” queda guardada enRAM y el espacio en la memoria queda reservado. XFS aún no decide dóndeexactamente (en qué bloque del sistema de archivos) se almacenan los datos. Estadecisión se retrasará hasta el último momento. Con esto, algunos datos temporales noquedan nunca almacenados en el disco, ya que cuando llegue el momento de decidir ellugar de almacenamiento ya estarán obsoletos. Así, XFS aumenta el rendimiento ydisminuye la fragmentación del sistema de archivos. Debido a que una asignaciónretardada tiene como consecuencia menos procesos de escritura que en otros sistemasde archivos, es probable que la pérdida de datos tras una caída del sistema durante elproceso de escritura sea mayor.

– Preasignación para evitar la fragmentación del sistema de archivos.- Antes de laescritura de los datos en el sistema de archivos, XFS reserva el espacio de memorianecesario para un archivo que vaya a ser asignado. De esta forma se reduceenormemente la fragmentación del sistema de archivos y el rendimiento aumenta, yaque el contenido de los archivos no queda dividido por todo el sistema de archivos.

Página.- 234

Page 237: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

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 elintercambio de datos entre distintos medios o sistemas operativos:

Sistema Descripción

cramfs Compressed ROM file system: sistema de archivos comprimido con permiso delectura 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 enLinux. 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 quese 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 parael 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 lascaracterísticas de Unix (derechos, enlaces, nombres de archivo largos) mediantearchivos especiales.

vfat Virtual FAT: extensión del sistema de archivos fat (soporta nombres de archivolargos).

ntfs Windows NT file system: sistema de archivos utilizado por Windows.

7.2.10 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 datoso en la edición de datos de audio y vídeo, se ha hecho necesario el modificar el kernel y lalibrería GNU C (glibc) para que soporten archivos mayores de 2 Gb, y se han introducidonuevas interfaces que pueden ser utilizadas por las aplicaciones. Hoy en día todos los sistemasde archivos importantes soportan LFS (Large File System – sistema de archivos grandes), loque permite la edición de datos de gama alta. La siguiente tabla incluye un resumen de laslimitaciones de los archivos y sistemas de archivos bajo Linux:

Página.- 235

Page 238: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

SistemaTamaño máximo

de archivoTamaño máximo delsistema 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 Tb (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)

El núcleo (kernel) del sistema operativo también impone sus restricciones en cuanto atamaño de los ficheros y sistemas de archivos y si son sobrepasados no podrán ser procesadoscorrectamente. Por ejemplo, para la versión 2.6 el límite para ficheros era de 2 Tb (2 41) y parasistemas de archivos 273 bytes.

7.2.11 Información adicional

Cada proyecto de sistema de archivos cuenta con su propia página web en la quepuede encontrar información adicional y listas de correo, así como FAQs:

– http://e2fsprogs.sourceforge.net/

– http://www.zipworld.com.au/~akpm/linux/ext3/

– http://www.namesys.com/

– http://oss.software.ibm.com/developerworks/opensource/jfs/

– http://oss.sgi.com/projects/xfs/

Página.- 236

Page 239: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

7.3 Estructura de un sistema de archivos

Para poder entender el comportamiento de algunos comandos, sobre todo losrelacionados con la gestión de enlaces a ficheros, es conveniente conocer la estructura típicade los sistemas de ficheros estándares de linux (ext3, ext4, …). Además, aunque un sistema deficheros puede contener otros elementos distintos de los ficheros: directorios, enlaces, etc., eneste apartado se va a hacer referencia únicamente a los ficheros para simplificar laterminología y delimitar el estudio a la lógica de funcionamiento.

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 delfichero 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. Estebloque de información del fichero (propiedades) contiene entre otros datos: el tipo defichero, 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 deenlaces y los números de los bloques donde se almacena la información contenida enel fichero.

Para especificar los bloques donde se encuentra el fichero cada inodo contiene 13referencias: 10 referencias a bloques directos, una referencia a un bloque indirectosencillo, una referencia a un bloque indirecto doble y una referencia a un bloqueindirecto triple. Las referencias a bloques directos son números de bloque cuyocontenido son datos del fichero. Las referencia al bloque indirecto sencillo es unnúmero de bloque cuyo contenido son referencias a bloques directos. Y asísucesivamente. Ver esquema.

Página.- 237

Fig 90: Esquema de localización de un fichero

Page 240: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

– Bloques de datos.- son bloques de información con una capacidad determinada (porejemplo 1 Kb.) que contienen los datos del fichero. Cuando se crea un fichero se leasigna, si es posible, un grupo de 8 bloques de datos contiguos para evitar lafragmentació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 losdiscos duros, CD's y DVD's. Existen multitud de dispositivos de almacenamientoincorporados a un sinfín de aparatos electrónicos: cámaras digitales para almacenar fotos,fotocopiadoras para almacenar copias, faxes, televisores para almacenar películas, lavadoraspara 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 oherramientas específicas para que el tratamiento de la información de esos dispositivos seamás intuitivo. Ejemplos claros los encontramos en las cámaras digitales, con programas quepermiten 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 estándar de un ordenador: eldisco duro con sus particiones; todos los conceptos y explicaciones pueden hacerse extensivospara cualquier tipo de sistemas de ficheros, que al fin y al cabo no dejan de ser un tipo dememoria 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 yantes de formatearlo puesto que el formateo precisamente distribuye las diferentes áreas deorganizació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 quesolamente reconocen un tipo determinado de sistema de archivos.

Durante la instalación de Ubuntu se particiona el disco y se elige el tipo de sistema dearchivos de cada partición, siendo en la actualidad ext4 el más estándar. Cuando, una vezinstalado el sistema operativo, se necesitan crear nuevas particiones, puede utilizarse elprograma gparted.

Página.- 238

Page 241: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

La siguiente figura muestra su aspecto:

Algunas de las opciones más significativas son:

– Gparted – Refrescar dispositivos.- permite escanear de nuevo los dispositivosdisponibles. Útil cuando se trabaja con dispositivos extraibles.

– Gparted – Dispositivos.- permite seleccionar el dispositivo cuyas particiones se deseavisualizar 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 noes definitiva.

– Editar – Limpiar todas las operaciones.- anula todas las operaciones que aún no hayansido llevadas a efecto.

– Editar – Aplicar todas las operaciones.- lleva a efecto todas las operacionesprogramadas con las particiones.

– Ver.- permite mostrar información sobre el dispositivo seleccionado, las operacionesprogramadas pero pendientes de efectuar en el dispositivo y los diferentes sistemas dearchivos soportados.

– Dispositivo – Crear tabla de particiones.- Crea una nueva tabla de particiones lo queconlleva la pérdida de las particiones y los datos del dispositivo.

Página.- 239

Fig 91: Programa Gparted

Page 242: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

– 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óncomo 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 extremadamentedelicado y que deben hacerse copias de seguridad de la información de los dispositivos antesde realizar cualquier modificación sobre las particiones.

Para que el sistema asuma las modificaciones realizadas sobre la tabla de particionesdebe reiniciarse el equipo.

Después de redimensionar una partición NTFS, antes de realizar cualquier operaciónen la misma, debe iniciarse el sistema Windows para que efectúe las verificaciones, chequeosy pruebas de consistencia oportunas.

Una herramienta interesante que permite analizar el disco es “baobab”, que muestra elcontenido y tamaño de los directorios de los sistemas de archivos.

Página.- 240

Fig 92: Programa Baobab (analizador de uso de disco)

Page 243: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Nautilus, además de mostrar las carpetas y ficheros del directorio de trabajo delusuario, en la parte izquierda de la ventana muestra una serie de elementos agrupados enLugares, Dispositivos y Red que permiten acceder a cualquier sistema de archivos conectadoal sistema. También permiten realizar operaciones como montar, desmontar o formatearcualquier dispositivo o partición. El tercer grupo permite acceder a recursos compartidos conla red.

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 discoanalizando las particiones existentes en el mismo. También busca y lista los tipos,localizaciones y dimensiones de particiones borradas inintencionadamente, tantoprimarias como lógicas. Proporciona la información necesaria para poder volver acrear manualmente las particiones con fdisk, cfdisk, sfdisk, …

gpart ignora la tabla primaria de particiones y escanea el disco sector a sectorbuscando los diferentes tipos de sistemas de ficheros y particiones. Esta labor serealiza preguntando a los distintos módulos de reconocimiento de sistemas de ficherossi una determinada secuencia de sectores se corresponde con el inicio de un tipo desistema de ficheros o partición.

La tabla supuesta puede ser grabada en un fichero o, si se está completamente segurode 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 elmódulo correspondiente se encuentre instalado.

Hay circunstancias en las que gpart no puede reemplazar la tabla de particiones. Paraestos 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.- 241

Page 244: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

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 ficheropara 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 obtenerinformación completa acerca de este comando puede instalarse el paquete parted-doc.Algunas de sus opciones son:

-h Visualiza información de ayuda.-v Muestra la versión.-m 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 lasopciones adecuadas o no especificar ninguno y parted mostrará un prompt y esperará a que seintroduzcan 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 deficheros de la partición_origen del dispositivo_origen en la partición_destino deldispositivo actual.

help [comando].- Muestra información general o sobre el comando especificado.

Página.- 242

Page 245: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

mkfs partición tipo_sistema_ficheros.- Crea un sistema de ficheros del tipoespecificado en la partición.

mkpart tipo_partición [tipo_sistema_ficheros] inicio fin.- Crea una partición con unsistema de ficheros empezando en inicio y terminando en fin (expresadosnormalmente 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 entreinicio y fin. Si se encuentra una partición, parted pregunta si se desea crear unaentrada para ella en la tabla de particiones.

resize partición inicio fin.- Redimensiona el sistema de ficheros de la partición paraque 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. Eldispositivo normalmente será un disco duro de Linux pero también puede ser unapartición, un dispositivo RAID o un volumen lógico (LVM).

set partición atributo estado.- cambia el estado del atributo de una partición. Losatributos 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 ocapacidades y cuando se asignen por el usuario sin especificar la unidad. La unidadpuede ser: “s” (sectores), “B” (bytes), “kB”, “MB”, “GB”, “TB”, “%” (porcentaje dela 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 ext3y ext4. Para ello puede utilizarse la instrucción resize2fs.

Página.- 243

Page 246: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

fdisk [opciones] dispositivo

Permite manejar las particiones del disco. La forma generalizada de utilizarlo esintroducir el comando acompañado del nombre del dispositivo sobre el que se deseaactuar, por ejemplo: fdisk /dev/sda. A continuación el comando muestra un mensajesobre 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 posiblesopciones:

a Cambia el indicador de iniciable.b Modifica la etiqueta de disco bsd.c Cambia el indicador de compatibilidad con DOS.d Borra una partición.l Muestra los tipos de particiones que reconoce.m Muestra las opciones disponibles.n Añade una partición.o Crea una nueva tabla de particiones DOS vacía.p Muestra la tabla de particiones.q Sale sin guardar los cambios.s Crea una nueva etiqueta de disco Sun.t Cambia el identificador de sistema de una partición.u Cambia las unidades de visualización y entrada.v Verifica la tabla de particiones.w Escribe la tabla en el disco y sale.x 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 dedirectorios del sistema. En la instrucción debe indicarse el tipo de sistema de ficherosdel dispositivo, el nombre del dispositivo y el directorio donde se va a situar lainformació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ándefinidas en el archivo /etc/fstab y solamente el usuario root podrá montarlo. Para queel sistema de archivos pueda ser montado por otros usuarios debe introducirse laopción “user” en la línea correspondiente del archivo /etc/fstab, utilizando comas paraseparar los usuarios y guardando los cambios.

Ejemplos: mount -t ntfs /dev/sda1 /media/windows

Página.- 244

Page 247: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

umount [opciones] punto_de_montaje

Desmonta un dispositivo del árbol de directorios, quedando así inaccesible. Debeejecutarse antes de retirar un medio de almacenamiento, por ejemplo las memoriasusb, 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 particionesy dispositivos montados. Si se especifica un directorio se mostrarán las estadísticas delvolumen que incluya ese directorio.

-h Muestra la información en Kb, Mb o Gb.-T Muestra el tipo de volumen.

du [opciones] [ruta]

Muestra el espacio total de almacenamiento utilizado por los archivos del directorioactivo o del especificado y de sus subdirectorios.

-a Indica el tamaño de cada archivo.-h Utiliza las unidades Kb, Mb, GB, etc.-s 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 Utiliza como unidad de medida el byte.-k Utiliza el Kb.-m 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 sectorconcreto del disco, por ejemplo el sector 0. Para obtener información completa puedeejecutarse “info coreutils 'dd invocation'”.

Página.- 245

Page 248: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

7.6 Estructura de directorios

7.6.1 Herramienta gráfica para administrar directorios y ficheros: Nautilus

El programa incluido dentro de gnome para manejo de directorios y ficheros se llamaNautilus. 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.

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 yAyuda.

– 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.- 246

Fig 93: Nautilus

Page 249: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

– Barra de navegación.- muestra en forma de botones toda la jerarquía de carpetas desdela carpeta raíz del sistema hasta la carpeta que se está visualizando. Permite moverse alas carpetas superiores con un solo click. Mediante el botón de más a la izquierda conforma de libreta con lápiz (o pulsando <Ctrl> + <L>) se puede cambiar la forma devisualizar 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 losarchivos y una lista desplegable que permite cambiar la vista de los ficheros entre lasopciones:

• Vista de icono.- cada archivo o carpeta estará representado por un icono sobreel nombre.

• Vista de lista.- los archivos se mostrarán en forma de listado con informaciónadicional en cada línea. El listado será en forma de árbol de forma que sepuede ver el contenido de una carpeta haciendo un click en el triángulo queaparece 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áspequeño.

– Panel lateral izquierdo.- su visualización se activa y desactiva desde el menú deopciones – 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 movimientosencillo 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á sereliminado en las propiedades de la carpeta, ficha Emblemas.

– Panel derecho.- muestra el contenido de la carpeta actual, tanto subcarpetas comoficheros.

Página.- 247

Page 250: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Hay que tener muy en cuenta que en los sistemas Linux se guardan los archivosutilizando una estructura de tipo árbol invertido o piramidal donde no existen unidades deltipo “C:”, “D:”, …, sino que todas las carpetas, subcarpetas y ficheros cuelgan de dichaestructura piramidal estando ocupado el vértice por la carpeta raíz o principal, denominada“/”.

7.6.2 Árbol de directorios

Página.- 248

Fig 94: Directorios

Page 251: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

La figura muestra las carpetas del primer nivel, las que se encuentran en el directorioraí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.- 249

Page 252: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

A través de la opción “Ver” de la barra de menú se puede acceder a algunos lugaresespeciales:

– 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 “Creardocumento”.

– Papelera.- lugar donde queda todo lo que se borre con Nautilus.– Grabador de CD / DVD.- permite grabar CD's / DVD's.

7.6.3 Trabajo con ficheros y carpetas

Propietarios y permisos

En MaX, como en todos los sistemas Linux, los ficheros y directorios tienenpropietario 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 perteneceel propietario. Los permisos predeterminados que se asignan a los ficheros/directorios creadosson los siguientes:

– Lectura y escritura para el propietario.

– Lectura para el grupo, es decir, para los usuarios que pertenecen al grupo principal delpropietario.

– Lectura para el resto, es decir, para aquellos usuarios que no son el propietario nipertenecen 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 carpetade trabajo.

Una forma de proceder puede ser la siguiente:

Accedemos con Nautilus a la carpeta de trabajo del usuario mediante el icono delescritorio “Carpeta personal de usprueba01”. En un espacio vacío del panel que muestra losficheros y carpetas pulsamos con el botón derecho, elegimos las opciones “Crear undocumento” - “Archivo vacío” y se creará un fichero que, salvo que cambiemos el nombre, sellamará “archivo nuevo”. Pulsando con el botón derecho sobre el icono de dicho archivo seaccede a su menú contextual y se elige la opción “Propiedades”.

Página.- 250

Page 253: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

La ficha “Permisos” muestra y permite modificar los permisos para el propietario, parael grupo (los usuarios que pertenecen al grupo principal del propietario) y para los otros (losdemás usuarios). Además, hay que tener muy en cuenta los permisos asignados a la carpetadonde 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 delfichero con un distintivo.

– La ficha “Abrir” permite asociar el tipo de fichero con los programas que puedenmanejarlo. Por ejemplo, en nuestro caso ya se encuentra asociado al editor de textos yal hacer doble click sobre el fichero se lanzará la ejecución del procesador de textosque abrirá el fichero para trabajar con él. Si se cambia la asociación de un fichero conun 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 notassó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'sy 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 comopara el cambio de permisos y demás operaciones.

Página.- 251

Fig 95: Propiedades de un archivo

Page 254: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

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ónderecho y seleccionar “Mover a la papelera” o “Borrar”. La diferencia consiste en que los quese mueven a la papelera son recuperables accediendo a ésta a través de su icono en la barra detareas.

Para seleccionar varias carpetas o ficheros se puede hacer click con el botón izquierdoen un espacio vacío y, sin soltar el botón, arrastrar hasta que el recuadro que se genera cubralos archivos que se quiere seleccionar. También se puede ir haciendo click con el botónizquierdo en cada fichero manteniendo pulsada la tecla <Ctrl>. Para deseleccionar basta conhacer click en un lugar vacío.

Para copiar archivos o carpetas se puede proceder de varias formas. Una de ellaspuede 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, elelemento 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 quepermite 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> oeligiendo la opción “Renombrar” de su menú contextual (click con botón derecho sobre elelemento).

Página.- 252

Page 255: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

En general, muchas de las ventanas de MaX sólo disponen del botón “Cerrar”, notienen ningún “Aceptar”, “Aplicar” o “Cancelar”, con lo cual los cambios se aplicanautomáticamente al pulsar “Cerrar”.

Ficheros y carpetas ocultos

Los ficheros y carpetas ocultos se diferencian de los “normales” en que su nombreempieza por un punto y normalmente Nautilus no los visualiza. Para hacerlos visibles hay queelegir en Nautilus la opción “Ver” y marcar la casilla de verificación “Mostrar los archivosocultos”. La instrucción “ls -a” los muestra.

La funcionalidad de estos directorios o archivos suele ser la de guardarconfiguraciones de programas; ocultándolos se evita su borrado accidental.

Para crear un archivo/directorio oculto basta con hacer que su nombre comience porun punto, por ejemplo “.noseve”.

7.6.4 Gestión de directorios mediante comandos

La mayor parte de las instrucciones o comandos del sistema operativo disponen de unagran cantidad de opciones que pueden ser consultadas mediante el comando “maninstrucción” o “info instrucción”. En ésta sección solamente se tratarán los comandos querealizan las operaciones homólogas a las del apartado anterior de Nautilus con sus opcionesmás relevantes.

Directorio activo

Ya se ha visto que toda la información que gestiona MaX se encuentra estructurada enuna serie de directorios y subdirectorios en forma arborescente siendo el directorio raíz el queocupa el nivel más alto, el que engloba a todos los demás elementos (ficheros ysubdirectorios) y que recibe el nombre de “/”.

A estas alturas debe estar totalmente claro que los ficheros son los elementos quecontienen la información y que los directorios y subdirectorios son elementos organizativoscuya función es la de mantener una estructura que permita tener organizados los ficheros parafacilitar el acceso a los mismos. Para evidenciar la diferencia puede tomarse como ejemplouna 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íancon los directorios.

Hay varias formas de referirse a un fichero o directorio dependiendo de que se tengaen 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 eldirectorio activo pero es conveniente conocer previamente el nombre de varios directorios quetienen un significado especial:

Página.- 253

Page 256: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

– / .- directorio raíz.

– ~ .- directorio de trabajo del usuario (por defecto /home/usuario).

– . .- directorio activo.

– .. .- directorio padre (directorio inmediatamente superior en la escala jerárquica queincluye al directorio activo. Por ejemplo, el directorio padre de /home/usuprueba01es /home.

Al abrir un terminal para introducir instrucciones, el sistema operativo muestra elllamado 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:

usuario@equipo:directorio_activo$

es decir, el nombre del usuario, el carácter “@”, el nombre del equipo, el carácter “:”, eldirectorio activo y el carácter “$”. Para el usuario root este último carácter en vez de ser undó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 dedirectorios del sistema es la trayectoria. Dentro de la trayectoria, el carácter “/” se utiliza paraseparar los nombres de los directorios, subdirectorios. Hay dos tipos de trayectorias:

– Trayectoria absoluta.- consiste en especificar el nombre de un fichero/directorioempezando desde el directorio raíz, los directorios intermedios hasta elfichero/directorio y finalmente el nombre del fichero/directorio, separando todos ellospor el carácter “/”. Así, en el ejemplo de la figura, la trayectoria absoluta del ficherof311 es: /d3/d31/f311. El primer carácter “/” no es un carácter separador sino que hacereferencia al directorio raíz.

Página.- 254

Fig 96: Ejemplo de árbol de directorios

Page 257: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Esta trayectoria no depende del directorio activo y es única.

– Trayectoria relativa.- consiste en especificar el nombre de un fichero/directorioempezando desde el directorio activo, los directorios intermedios hasta elfichero/directorio y finalmente el nombre del fichero o directorio, separando todosellos por el carácter “/”. Así, en el ejemplo de la figura, si el directorio activo es d3, latrayectoria relativa del fichero f311 es: d31/f311. Es muy importante tener en cuentaque 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 delnombre del directorio padre (..). Por ejemplo, si el directorio activo es d33, latrayectoria 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 Muestra el contenido de forma más detallada, visualizando los permisos.-a 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 fichero2cp -r /home/* /media/usbdisk

dd {[operando]... | opcion}

Convierte y copia ficheros.

Dispone de infinidad de opciones que permiten, por ejemplo copiar un sector de undisco 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.- 255

Page 258: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

mv [opciones] origen destino

Renombra o hace una copia de origen en destino y a continuación borra el archivooriginal.

-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 contenidohay que utilizar la opción -r.

-r Borrado recursivo. Permite borrar directorios y su contenido.-i Espera una confirmación antes de borrar cada fichero.

Ejemplos: rm ficherorm -r directorio

ln [opciones] destino link

Crea un acceso directo (link o enlace) a un fichero destino. Normalmente este enlaceapunta directamente a la posición de destino (a los datos del fichero) dentro del mismosistema de archivos. Aparentemente es como si se hubiera duplicado el fichero destinoaunque se puede comprobar que las modificaciones en uno de ellos se reflejan en elotro. Si se utiliza la opción -s, se crea un enlace simbólico apuntando al nombre delfichero.

-s Crea un enlace simbólico.

cd [opciones] [directorio]

Cambia el directorio activo. Si no se especifica directorio cambia al directorio detrabajo del usuario.

Ejemplos: cd ..cd /etc

mkdir [opciones] directorio

Crea un directorio

Ejemplos: mkdir proyecto

Página.- 256

Page 259: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

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 carpetachown usprueba fichero

chgrp [opciones] grupo archivos

Cambia el grupo al que pertenece el archivo. El propietario del archivo sólo puedecambiar este valor si pertenece tanto al grupo anterior como al nuevo al que se deseaasignar 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é derechose aplica. Para definir a quién se aplica pueden utilizarse los siguientes caracteres:

u al propietario.g al grupo del propietario.o a los otros.a 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.- 257

Page 260: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Para definir qué permisos pueden utilizarse:

r lectura.w escritura.x ejecución (o búsqueda en directorios).X ejecución o búsqueda (ver información mostrada por “man chmod”.s establecer usuario o grupo para ejecución (set uid bit).t restringir el borrado.

Una alternativa a esta forma de expresar el modo es utilizar un código de 4 cifrasdonde cada cifra corresponde a la suma de los valores 4, 2 y 1. La primera cifra ocupael atributo set user ID (4) y/o set group ID (2) y/o el atributo sticky-bit (1), la segundalos derechos del propietario, la tercera los del grupo y la cuarta los de los otros. Elderecho de lectura se representa con el valor 4, el de escritura con el 2 y el deejecución con el 1.

Ejemplos: chmod u+x ejecutablechmod a-w ficherochmod 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 deun archivo, o directorios completos, deberá utilizarse además el comando tar.

-d Descomprime el archivo (se corresponde con el comando gunzip).

Ejemplos: gzip ficherogzip -d fichero.gz (gunzip fichero.gz).

tar opciones paquete archivos

Agrupa uno o más archivos en un paquete para después comprimirlo, copiarlo, … Esuna instrucción compleja y con gran cantidad de opciones, entre ellas:

-f La información generada por el proceso se escribe en el fichero especificadoen vez de mostrarse por pantalla.

-c Crea un nuevo archivo de tipo tar.-r Agrega archivos a un paquete existente.-t Muestra el contenido de un paquete.-u Agrega archivos al paquete sólo si estos son más recientes que los existentes.-x Extrae o desempaqueta archivos de un paquete.-z Comprime con gzip el paquete generado.-j Comprime con bzip2 el paquete generado.-v Proporciona los nombres de los archivos procesados.

Página.- 258

Page 261: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Los archivos creados mediante tar tienen extensión .tar. Cuando el archivo tar secomprime con gzip la extensión es .tar.gz y si se comprime con bzip2 será .tar.bz2.

Ejemplos: tar -cvf paquete.tar directorio (crea paquete.tar con directorio).tar -xvf paquete.tar (extrae el cont. de paquete.tar).tar -tf paquete.tar (muestra el contenido).tar -xvzf paquete.tar.gz (extrae descomprimiendo).

locate ficheros

Muestra los directorios donde se encuentran los ficheros especificados. La búsquedaes muy rápida puesto que la búsqueda no se realiza en el sistema de ficheros sino enuna base de datos propia creada al efecto. Esta base de datos puede crearla el usuarioroot 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, findbusca en el directorio especificado. Es muy común que el primer argumento utilizadosea 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 -printfind . -name pp -printfind / -name [0-9]* -print

Página.- 259

Page 262: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

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 usode las teclas <Av Pág>, <Re Pág>, <Inicio>, <Fin>, etc. La tecla <Q> finaliza lavisualización.

Ejemplos: less fichero

more [opciones] [archivos]

Permite visualizar el contenido de los archivos especificados pantalla a pantalla o líneaa 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 lacadena y el nombre del fichero (sólo si se han especificado varios). Dentro de lacadena el carácter “^” identifica el principio de línea y el “$” el final de línea.

-i Ignora las diferencias entre mayúsculas y minúsculas.-l Muestra sólo el nombre del archivo y no el número de línea.-n Numera las líneas donde se encontró la cadena.-L 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 detectandiferencias. Puede utilizarse para enviar los cambios realizados en un programa sinnecesidad de enviar todo el texto fuente.

-q Indica solamente si existen diferencias entre los dos ficheros.-u Produce un resultado “unificado” para que sea más legible.

Página.- 260

Page 263: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Comodines

Para hacer referencia a uno o más ficheros/directorios puede hacerse uso de losdenominados comodines, cuya función es la de sustituir a uno o más caracteres del nombre delos 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, puedeexpresarse poniendo el primer carácter, un guión y el último carácter. Porejemplo [0-9] sustituye a un número, [a-z] a una letra minúscula y [A-Z] a unaletra mayúscula. También admite la forma [0-3,6-9] para identificar dossegmentos 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? Borra fich1, fich2 y fich3.rm fich* Borra todos los ficheros cuyo nombre comience por “fich”.rm [0-9].txt Borra 1.txt y 2.txt.rm [0-9]* 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 esel teclado. Para cambiar tanto la entrada como la salida estándar, pueden utilizarse lossiguientes caracteres de redireccionamiento:

> Permite redirigir la salida del comando. Si se redirige a un fichero, el fichero se creaantes 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” enfichero. Este redireccionamiento se utiliza muy frecuentemente para crear ficheros deforma rápida para probar comandos.

Página.- 261

Page 264: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

>> Redirige la salida añadiendo, es decir, si se redirige a un fichero y éste existepreviamente, no se borrará su contenido y el resultado de la ejecución del comando seañadirá a lo que contenía previamente. Si el fichero no existe se crea. Por ejemplo, lainstrucción “ls >> fichero” añade el resultado de la instrucción “ls” al contenido defichero.

< 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 muestrapor pantalla; “sort < fich > fichero_ordenado” ordena las líneas de fich llevando elresultado a fichero_ordenado.

2> Redirecciona la salida estándar de errores. Por ejemplo, “cp f1 f2 2>mensaje” haceuna 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 sedesea mostrar ordenadamente el contenido del fichero f1 puede hacerse con la instrucción “catf1 | 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 seencuentra ubicado. El uso más común es la creación de enlaces en el escritorio que permitenel acceso rápido a los programas, ficheros o carpetas. Algunos programas durante lainstalación crean de forma automática, o previa consulta al usuario, un enlace al programa enel escritorio.

El hecho de que un fichero pueda ser accedido desde diferentes lugares del árbol dedirectorios, que pueda tener nombres diferentes e incluso permisos distintos, facilita el accesoy el control del mismo. Pero los enlaces ofrecen otra gran ventaja que es el mantenimiento dela integridad del fichero y la no duplicación de datos. Al ser un único fichero el que esaccedido desde diferentes lugares garantiza que las modificaciones que puedan realizardiferentes usuarios, o la apertura del fichero desde diferentes carpetas, queden siempreregistradas en el fichero único de datos.

Página.- 262

Page 265: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

7.7.1 Gestión de enlaces desde el entorno gráfico

La forma más simple de crear un enlace a un fichero o carpeta es elegir laopción “Crear un enlace” del menú contextual (click con botón derecho) del mismo. De estaforma 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 en la esquina superior derechaque 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, puedemoverse el enlace, igual que se mueve cualquier fichero, al lugar que convenga para teneracceso al mismo fichero desde lugares diferentes.

7.7.2 Gestión de enlaces mediante comandos

Es conveniente recordar que en la estructura de ficheros de Ubuntu cada fichero tieneasignado un número de inodo y que este inodo contiene información relativa al tipo defichero, permisos, etc., así como los números de los bloques donde se encuentra físicamente elcontenido del fichero. Los números de inodos pueden verse con la instrucción “ls -i” o, mejoraún, con “ls -il”.

Existen dos tipos de enlaces: enlaces rígidos, también llamados duros o físicos, yenlaces simbólicos. Para crear enlaces se utiliza el comando ln; por ejemplo, para crear unenlace 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_simbolicoLa instrucción ls -il mostrará algo parecido a la figura siguiente:

donde puede observarse que la primera columna contiene el nº de inodo del fichero y latercera el número de enlaces físicos (duros) del fichero. Un fichero no se borrará físicamentehasta que no le queden enlaces físicos apuntándole.

Página.- 263

Fig 97: Resultado de la instrucción "ls -il"

Page 266: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Enlaces duros

Cuando se crea un enlace duro a un fichero, se crea una entrada en el directorio con elnombre del enlace pero con el número de inodo del fichero. Así, el fichero pasa a tener dosnombres pero un solo inodo y un único contenido. En el ejemplo de la figura anterior, latercera columna de la información mostrada por “ ls -il” muestra un 2 para fichero y paraenlace_rígido, que indica la existencia de dos nombres para el mismo fichero. También puedecomprobarse que los dos nombres tienen el mismo número de inodo, el 675754. El fichero nose borrará hasta que se borren todos sus nombres.

Los directorios tienen dos enlaces duros, uno apuntando a si mismo (.) y otroapuntando 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 unarchivo pero no hacen un enlace a nivel de inodo. Serían los homólogos de los accesosdirectos de Windows.

Se crean con la instrucción “ln -s nombre_fichero nombre_enlace” y, como muestrala figura, la instrucción “ls -il” muestra a qué archivo está apuntando. Las diferencias mássignificativas con los enlaces duros son:

– La instrucción “ls -l” muestra a qué archivo apuntan los enlaces simbólicos pero nolos enlaces duros.

– Los enlaces simbólicos no apuntan al mismo inodo que el nombre del fichero.

– Los permisos de los enlaces simbólicos no se utilizan, se usan los de los ficheros a losque apuntan.

– La instrucción “ls -l” muestra en el primer carácter de la primera columna, el relativoal 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.

Página.- 264

Page 267: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

7.8 Búsqueda de información del sistema

Existen multitud de herramientas gráficas e instrucciones que reportan informaciónsobre diferentes aspectos del sistema. Algunas pueden ser utilizadas por cualquier usuario yotras solamente por el usuario root o por usuarios con ciertos privilegios.

7.8.1 Herramientas gráficas

Dada la gran diversidad de herramientas existentes, solamente se van a tener en cuentaaquellas que se instalan de forma predeterminada y se describirán en el mismo orden queaparecen 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 lasdiferentes 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.

Buscador de archivos

Se accede desde Lugares – Buscar archivos.

Permite buscar archivos mediante la introducción de algunas característicasrelacionadas con su nombre, la carpeta donde se encuentra, el texto que contiene, la fecha demodificació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.

Página.- 265

Page 268: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

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 loscontroladores de red, de sonido, la resolución de la pantalla, … y finalmente elabora uninforme detallado que puede mostrarse pulsando sobre el enlace “View report” o enviarse auna 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. Esteprograma (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 sidodescrito anteriormente.

Herramientas de red

Se accede desde Sistema – Administración – Herramientas de red.

Página.- 266

Page 269: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

La ventana que muestra el programa dispone de varias fichas que permiten administrarlos dispositivos de red del sistema y hacer uso de herramientas relacionadas con laadministración de la red:

– Dispositivos.- permite seleccionar el dispositivo de red, configurarlo y muestrainformación y estadísticas de transmisión/recepción del mismo.

– Ping.- permite enviar, un número determinado o de forma indefinida, tramas ping ypresenta información acerca de las tramas enviadas y recibidas y los tiemposnecesitados para realizar los envíos/recepciones.

– Netstat.- permite mostrar tablas de ruteo, servicios de red activos e informaciónmulticast.

– Traceroute.- muestra los routers por los que pasa una trama hasta llegar a unadirección de destino previamente especificada. La dirección puede ser una dirección ipo un nombre de host (equipo).

– Explorar puerto.- permite detectar los puertos abiertos de un equipo.

Página.- 267

Fig 98: Herramientas de red

Page 270: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

– 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 procesadordisponibles, y el espacio disponible en disco.

– Procesos.- informa sobre los procesos en ejecución, su estado, su identificador, lacantidad de memoria que utilizan, etc.

– Recursos.- presenta de forma gráfica el porcentaje de uso de CPU, el porcentaje de usode la memoria RAM y de la memoria de intercambio (swap) y los Kb./seg. Enviados yrecibidos a través de los interfaces de red.

– Sistemas de archivos.- muestra los diferentes sistemas de archivos existentes, el tipo ylas 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.- 268

Page 271: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

7.8.2 Búsqueda de información desde la línea de comandos

uname [opcion]

Visualiza información del sistema

-a 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 sistemaoperativo).

-p Tipo de procesador o unknown.-r Versión del núcleo.

fdisk [opciones] [dispositivo]

Permite consultar, crear, borrar, redimensionar, … particiones. Para su correctaejecución se necesitan privilegios de usuario root.

-l Visualiza las características y la tabla de particiones del dispositivoespecificado. Si no se especifica dispositivo muestra las particiones de/proc/partitions (si existe). Es una opción muy útil por mostrar las particionesde todos los dispositivos existentes.

Ejemplos: fdisk -l

free [opciones]

Muestra la cantidad de memoria RAM y de memoria swap libre y usada. Para el buenfuncionamiento del sistema la memoria de swaping no debe estar utilizándose.

-m Muestra la información en Mb.-t 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. Sinopciones 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 complementacon los comandos de inserción (insmod) y borrado (rmmod) de módulos.

Página.- 269

Page 272: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

lspci [opciones]

Muestra los dispositivos PCI del sistema. Para analizar la información puede utilizarsela 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 (IntelCorporation), el nombre del dispositivo (PRO/Wireless 3945ABG NetworkConnection) y el número de revisión del mismo (rev 02).

-v Muestra información más detallada.-vv 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 delequipo.

-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 usuariosconectados y la carga promedio de la CPU (load average) en los últimos 1, 5 y 15minutos. Para saber quienes son los usuarios conectados puede utilizarse la instrucción“w”.

Página.- 270

Page 273: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

w

Muestra los usuarios conectados y sus programas en ejecución. Como complemento auptime y w puede utilizarse la instrucción “who -b” que indica la fecha y hora en quese inició el equipo.

lsof

Muestra los archivos abiertos por los diferentes procesos en ejecución. Un ejemplo deutilización puede ser el siguiente: para saber los archivos que abre la instrucción “manlsof” se ejecuta dicha instrucción desde un terminal y desde otro buscamos su PIDcon, por ejemplo, la instrucción “ps -ed | grep man”; con la instrucción “lsof -pnumero_PID” se obtiene la información deseada. Es muy útil para conocer lasdependencias 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 muestralos intentos erróneos de inicio de sesión y puede permitir determinar los intentos dehackeo (logins no permitidos) al sistema. Permite conocer el terminal, día, fecha yhora 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 conocerposibles errores producidos durante la carga de los módulos durante el inicio paradeterminar posibles problemas de funcionamiento o reconocimiento de losdispositivos. Dada la extensión de la información mostrada, puede redireccionarse aun 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.- 271

Page 274: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

7.9 Actividades

1. Comprobar qué paquetes necesita tener instalado MaX para que pueda manejar elsistema 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 lapapelera, 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.- 272

Page 275: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

8 ADMINISTRACIÓN DE LA INFORMACIÓN II

8.1 Aspectos didácticos

Objetivos:

– Configurar y utilizar un gestor de paquetes.– 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 laAyuda 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.- 273

Page 276: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

8.2 Identificación del software instalado mediante herramientas gráficas y comandos

8.2.1 Herramientas gráficas

El software distribuido con un sistema operativo se compone de un gran número deprogramas y ficheros. De ellos, una pequeña parte son imprescindibles para el funcionamientodel sistema y la gran mayoría son utilidades que facilitan la gestión y administración delsistema, programas ofimáticos, programas relativos al uso de Internet, programas educativos,juegos, etc.

Generalmente un programa necesita más de un fichero para su correctofuncionamiento. Para facilitar la distribución e instalación de programas se forman paquetesde software que contienen los ficheros necesarios para el correcto funcionamiento de unprograma. Si el volumen de software de un programa es muy pequeño, o excesivamentegrande, pueden conformarse paquetes que contengan varios programas o paquetes quecontengan una parte de un programa. También puede ocurrir que un programa o paquete tengadependencias 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 paquetesse llaman Repositorios. Cada sistema operativo dispone de varios repositorios donde sealmacena todo el software que lo componen. De esta forma, si en un momento determinadouno de los repositorios no está disponible, existirán otros que proporcionarán los paquetessolicitados.

El Centro de software de Ubuntu es una utilidad incluida en Ubuntu que permite lagestión de paquetes. A él se puede acceder desde la Lanzadera de aplicaciones. Para poderutilizarlo es necesario iniciar la sesión con un usuario con privilegios de administrador. Elaspecto que presenta es parecido al de la imagen siguiente:

Página.- 274

Page 277: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Las opciones que se presentan son muy intuitivas y sencillas. Puede obtenerse másinformación en:

http://www.ubuntu-guia.com/2009/06/como-instalar-paquetes-y-programas-en.html

El acceso a los programas recién instalado podrá efectuarse desde el icono superiorizquierdo, introduciendo su nombre.

Para instalar software de otros distribuidores, que no se encuentra en la lista depaquetes de Ubuntu, habrá que proceder siguiendo las instrucciones del distribuidor. Unejemplo pueden ser las instrucciones de instalación de VirtualBox, Webmin, etc. Para el casoconcreto de Webmin el procedimiento será el siguiente:

– Conectarse mediante el explorador de Internet Firefox a la direcciónwww.webmin.com.

– Seleccionar de la lista “Download webmin x.xxx” la opción “Debian Package”. Así sepodrá descargar en nuestro ordenador el paquete correspondiente.

– Para instalarlo bastará con hacer click sobre el fichero descargado. Debe tenerse encuenta que la sesión debe haber sido iniciada por un usuario con privilegios deadministrador.

Página.- 275

Fig 99: Centro de software de Ubuntu

Page 278: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

– Por último, para lanzar la ejecución del programa habrá que hacerlo desde Firefox através de la dirección “https://localhost:10000”. El programa informará que no puedecomprobar si la conexión es segura y, aceptando las advertencias, solicitará un nombrede usuario y contraseña, que deberá ser un usuario administrador, y se ejecutarácorrectamente.

8.2.2 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 paquetesdesde 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 muyprecisa, hay que especificar una de las siguientes órdenes:

update.- actualiza el índice de paquetes respecto a sus fuentes. Los índices de los paquetesdisponibles se obtienen de los lugares especificados en /etc/apt/sources.list. Siempredebe realizarse un update antes de un upgrade o un dist-upgrade.

upgrade.- permite actualizar los paquetes instalados provenientes de las fuentes especificadasen /etc/apt/sources.list. No se desinstalan paquetes ni se instalan paquetes nuevos. Lasnuevas versiones de programas instalados que no puedan ser actualizados sin cambiarel estado de instalación de otros paquetes no se instalarán. Antes de upgrade deberealizarse un update para que apt-get sepa cuales son las versiones disponibles de lospaquetes.

dselect-upgrade.- se usa junto con la utilidad dselect. dselect-upgrade recoge los cambiosrealizados por dselect al campo Status de los paquetes disponibles y realiza lasacciones necesarias para que los cambios se lleven a efecto (por ejemplo, borrarpaquetes antiguos e instalar las nuevas versiones).

dist-upgrade.- además de realizar las acciones de upgrade, maneja inteligentemente loscambios de dependencias debidos a nuevas versiones de paquetes; apt-get tiene unsofisticado sistema de resolución de conflictos, si es necesario tratará de actualizar lospaquetes 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 puedeconsultar apt_preferences(5) si se quiere modificar este comportamiento para paquetesindividuales.

Página.- 276

Page 279: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

install.- instala los paquetes que siguen a la palabra install. Cada nombre de paquete no es elnombre completo del paquete junto con la versión sino sólo el nombre delpaquete. 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 localizarlos paquetes. Si al nombre del paquete se le antepone un guión (sin ningún espacio), elpaquete será desinstalado en vez de instalado. Similarmente el signo de la suma sepuede usar para especificar que un paquete debe de ser instalado. Estas últimascaracterísticas se pueden usar para modificar decisiones tomadas por el sistema deresolución de conflictos de apt-get.

Se puede seleccionar una versión especifica de un paquete poniendo a continuacióndel paquete un igual (=) seguido de la versión deseada. Alternativamente se puedeseleccionar una distribución especifica poniendo a continuación del nombre delpaquete 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 delos paquetes y debe ser usada con cuidado.

Finalmente, apt_preferences(5) permite modificar las normas de selección parapaquetes individuales.

Si ningún paquete coincide con la expresión que se ha dado y la expresión contiene unpunto (.), una interrogación (?), o un asterisco (*), entonces se asume que es unaexpresión regular de acuerdo con el estándar POSIX, y es aplicada a todos losnombres de paquetes de la base de datos. Cualquier coincidencia se instala (odesinstala). Hay que tener en cuenta que la comparación se hace en subcadenas, demanera que “lo.*” es válido para "how-lo" y para "lowest". Si este no es elcomportamiento deseado se debe anclar la expresión regular con un "^" o un "$", obien crear una expresión regular más específica.

remove.- se comporta de forma similar a install pero desinstalando los paquetes. Si el nombredel paquete es precedido por un carácter más (+) el paquete en cuestión será instaladoen vez de eliminado.

source.- hace que apt-get descargue paquetes fuente. APT examinará los paquetes disponiblespara decidir que paquete fuente cogerá. Entones descargará en el directorio actual laversión más reciente del paquete fuente. Los paquetes fuente se obtienen de sitiosdistintos a los binarios; estos sitios se especifican mediante líneas del tipo deb-src enel fichero sources.list(5). Esto puede provocar que la versión que se descargará delpaquete fuente no coincida con la del paquete binario que tenga instalado o puedainstalar. 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á.

Página.- 277

Page 280: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

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 unmecanismo similar al que se usa con los paquetes binarios. Esto permite seleccionarexactamente el nombre y versión del paquete fuente, activando implícitamente laopción APT::Get::Only-Source.

Hay que tener en cuenta que los paquetes fuentes no se tratan como los binarios, sóloexisten en el directorio actual, es parecido a descargar los paquetes tar comprimidoscon las fuentes.

build-dep.- hace que apt-get instale/desinstale paquetes en un intento de satisfacer lasdependencias de compilación de un paquete fuente. Si hay varios paquetes quesatisfacen 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 ybusca 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 ejecutarapt-get clean de vez en cuando para liberar algo de espacio en disco.

autoclean.- borra el repositorio local de paquetes descargados, pero solamente aquellospaquetes que ya no pueden ser descargados, o son claramente inservibles. Esto permitemantener la caché durante largos periodos de tiempo sin que aumente su tamaño sincontrol. 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 deconfiguración; en la descripción de cada opción se indica la opción de configuración que hayque modificar. Para opciones booleanas se puede modificar el fichero de configuraciónusando formatos tales como:

-f-, --no-f, -f=no y alguna variante más.

-d (--download-only).- descarga los ficheros con los paquetes pero no los desempaquetani los instala.Opción de configuración: APT::Get::Download-Only.

-f (--fix-broken).- intenta arreglar un sistema con dependencias actualmente rotas. Estaopción usada conjuntamente con install/remove, puede omitir cualquier paquete parapermitir a APT deducir una posible solución. Cualquier paquete especificado debe decorregir totalmente el problema. La opción es a veces necesaria cuando se ejecutaapt por primera vez. APT no permite que existan dependencias de paquetes rotas en un

Página.- 278

Page 281: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

sistema. Es posible que la estructura de dependencias de un sistema esté tandeteriorada que requiera una intervención manual (usualmente ejecutar dselect(8) odpkg --remove para desinstalar alguno de los paquetes que crean el conflicto). El usode 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 hayanpodido descargar o que después de la descarga se encuentren dañados, estos paquetesse tratan como no modificables y se continúa con el resto. El uso de esta opción juntocon -f puede producir un error en algunas situaciones. Si un paquete se selecciona parasu normal instalación (particularmente si se hace mediante la línea de órdenes) y nopuede 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 --ignore-missing es la mejor manera de forzar a APT a usar solo los ficheros que ya se handescargado con anterioridad.Opción de configuración: APT::Get::Download.

-q (--quiet).- silencioso. Produce una salida adecuada para un registro, omitiendo losindicadores de progreso. Si se especifican dos q's se conseguirá una salida mássilenciosa. También es posible usar -q=# para seleccionar el nivel de silenciosidad, noteniendo en cuenta el fichero de configuración. Hay que tener en cuenta que un nivelsilencioso de 2 implica -y, por lo tanto nunca se deberá usar -qq sin añadir unmodificador para que no realice ninguna acción como -d, --print-uris o -s para evitarque 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 cualesrepresenta una operación de dpkg, configurar (Conf), desinstalar (Remv), odesempaquetar (Inst). Un par de corchetes indican paquetes con dependencias rotas, sino hay nada entre ellos significa que no hay ningún problema (poco probable).

-y (--yes) (--assume-yes).- asume una respuesta afirmativa a todas las preguntas, de estaforma 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, comocambiar un paquete puesto en hold (un paquete puesto en hold es un paquete que nodebe 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.

Página.- 279

Page 282: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

-V (--verbose-versions).- muestra la versión completa para los paquetes actualizados einstalados.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 juntocon 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, no-upgrade evita que se actualicen los paquetes listados en la línea de órdenes si ya estánpreviamente instalados.Opción de configuración: APT::Get::Upgrade.

(--force-yes).- supone una respuesta afirmativa a todas las preguntas. Ésta es unaopción peligrosa que hará que apt-get continúe incluso si va a realizar algopotencialmente 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. CadaURI tiene la dirección de donde se obtendrá el paquete, el fichero de destino, sutamaño y la suma de control md5 esperada. Hay que tener en cuenta que el nombre defichero no siempre coincide con el nombre de fichero en el sitio remoto. Esto tambiénfunciona con las ordenes source y update. Cuando se usa con la orden update, no seincluyen ni la suma de control MD5 ni el tamaño, y es tarea del usuario descomprimircualquier fichero comprimido.Opción de configuración: APT::Get::Print-URIs.

(--purge).- borra los archivos de configuración de todos los paquetes que seandesinstalados. Se mostrará un asterisco "*" a continuación de los paquetes que seencuentren en esta situación.Opción de configuración: APT::Get::Purge.

(--reinstall).- reinstala los paquetes ya instalados, incluso si son la última versióndisponible del paquete. Opción de Configuración: APT::Get::ReInstall.

(--list-cleanup).- esta opción está activada por omisión, si quiere desactivarla use --no-list-cleanup. Cuando está activada apt-get administra automáticamente loscontenidos 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 queusa apt-get. Opción de Configuración: APT::Get::List-Cleanup.

Página.- 280

Page 283: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

-t (--target-release) (--default-release).- esta opción permite tener un control sobre laversió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 hacereferencia a la distribución. Algunos ejemplos comunes pueden ser -t '2.1*' o -tunstable.Opción de configuración: APT::Default-Release. Ver además la página del manual deapt_preferences(5).

(--trivial-only).- sólo realiza acciones consideradas triviales. Esta opción estárelacionada con --assume-yes, donde --assume-yes responderá afirmativamente acualquier 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 depaquetes fuente dados no deben ser tratados a través de la tabla de binarios. Estosignifica que si se especifica esta opción, la orden source sólo aceptará comoargumentos nombres de paquetes fuente, en vez de aceptar nombres de paquetesbinarios 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 laarquitectura.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á elfichero de configuración por omisión y luego este otro. Leer apt.conf(5) paramás información acerca de la sintaxis.

-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.

Página.- 281

Page 284: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

/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 depaquetes, por ejemplo, puede especificar que un cierto paquete se descargue de un sitiodiferente, 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 sitioespecificado 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 entrá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 100en caso de error.

Página.- 282

Page 285: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

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 ycomandos que proporcionan información sobre los diferentes aspectos del sistema. En ésteapartado se va a profundizar en la herramienta “Monitor del sistema” (gnome-system-monitor).

8.3.1 Monitor del sistema

La aplicación Monitor del sistema permite mostrar información básica del sistema ymonitorizar los procesos del sistema, el uso de los recursos del sistema y de los sistemas dearchivos. También se puede usar el Monitor del sistema para modificar el comportamiento desu 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”.

La ventana del Monitor del sistema contiene cuatro secciones (fichas) con suscorrespondientes etiquetas o solapas:

Sistema.- muestra información básica sobre la versión del sistema operativo, el hardware delsistema y el espacio disponible en el disco.

Página.- 283

Fig 100: Monitor del sistema: etiqueta Procesos

Page 286: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

– Procesos.- muestra los procesos activos y cómo están relacionados los procesos entreellos. Proporciona información detallada acerca de procesos individuales y permitecontrolar los procesos activos.

– Recursos.- muestra el uso actual de la CPU, de la memoria y espacio de intercambio yde la red.

– Sistemas de archivos.- lista todos los sistemas de archivos montados junto coninformación básica acerca de cada uno.

Página.- 284

Fig 101: Monitor del sistema: etiqueta Sistema

Fig 102: Monitor del sistema: etiqueta Recursos

Page 287: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

El programa muestra una ventana con los siguientes elementos:

– Barra de menús.- contiene las opciones que permiten realizar todas las operaciones delprograma.

– Área de visualización.- muestra la información a través de las fichas anteriormentecomentadas.

– Barra de estado.- muestra información sobre la actividad actual del Monitor delsistema, así como información contextual acerca de los elementos del menú.

Las operaciones fundamentales que pueden realizarse a través de las diferentesopciones 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 através de la etiqueta “Sistema”.

– Mostrar la lista de procesos.- a través de la etiqueta “Procesos”. La información semuestra tabulada conteniendo cada fila información de un proceso y las columnas losdiferentes tipos de información: nombre del proceso, estado, porcentaje de CPUutilizado, prioridad, nº identificativo de proceso, cantidad de memoria utilizada,propietario del proceso, etc. Las columnas a mostrar se pueden seleccionar a través dela opción Editar - Preferencias – Ficha Procesos.

Un proceso puede crear otro proceso. El proceso creado es un proceso hijo del procesoque lo creó, que se llamará proceso padre. De forma predeterminada el Monitor delsistema no muestra las dependencias de los procesos pero puede configurarse para queasí sea, como se describirá más adelante.

Cada proceso tiene una prioridad que se establece mediante un valor numérico. Laprioridad determina el orden de ejecución de los procesos: los procesos con prioridadalta se ejecutan antes que los de prioridad baja. El orden de prioridad es inverso alvalor de prioridad asignado a un proceso; así un valor de prioridad alto indicará menorprioridad del proceso que otro con un valor de prioridad más bajo. El valor asignadopor defecto es 0.

Los procesos hijo generalmente heredan su prioridad de los procesos padre que loscrean.

– Ordenar la lista de procesos.- de forma predeterminada los procesos aparecenordenados alfabéticamente y de manera ascendente por su nombre. Para ordenarlospor 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.- 285

Page 288: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

– Modificar el contenido de la lista de procesos.- puede elegirse qué procesos debenmostrarse a través de la opción “Ver” del menú de opciones. Las opciones disponiblesson:

• 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 entreprocesos padre y procesos hijo; si se encuentra activado, los nombres e iconosde los procesos padre estarán precedidos por un triangulo pequeño quepermitirá, pulsando sobre él, desplegar y ocultar sus procesos hijo.

– Mostrar el mapa de memoria para un proceso.- se selecciona el proceso y se elige laopción Ver – Mapas de memoria. La información se muestra de forma tabulada, con elnombre 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 filadescribe 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 realizara los segmentos de memoria:

• p El segmento de memoria es privado al proceso y no es accesible porotros procesos.

• r El proceso tiene permiso de lectura en el segmento de memoria.• s El segmento de memoria está compartido con otros procesos.• w El proceso tiene permiso de escritura en el segmento de memoria.• x El proceso tiene permiso para ejecutar instrucciones contenidas en

ese segmento de memoria.

• Desplazamiento MV.- desplazamiento de la memoria virtual sobre el segmentode memoria.

• Dispositivo.- contiene los nombres de los dispositivos donde se encuentra labiblioteca compartida.

Página.- 286

Page 289: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

• nodo-i.- inodo del dispositivo desde el que se carga en memoria la bibliotecacompartida.

Para ordenar la información por el contenido de alguna columna hay que pulsar sobreel 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ónEditar – Cambiar la prioridad; aparecerá una ventana que permitirá modificar laprioridad 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 esinversa al valor asignado: valores bajos indican prioridades altas y viceversa.

– Finalizar un proceso.- se selecciona el proceso y se elige la opción Editar – Finalizarproceso o se pulsa sobre el botón “Finalizar proceso” situado en la esquina inferiorderecha 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 sueleutilizarse en aquellos casos en los que no se puede finalizar un proceso de formanormal.

– Monitorizar el uso de la CPU.- se realiza desde la ficha “Recursos” y muestra el usohistórico de la CPU de forma gráfica y, debajo de la gráfica, el uso actual enporcentaje.

– Monitorizar el uso de la memoria de intercambio.- similar al de la CPU. Debajo de lagrá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 semuestran 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.- 287

Page 290: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

– Personalizar la información mostrada por las diferentes fichas.- se realiza desde laopció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 deverificación “Modo Solaris” mostrará el porcentaje de CPU de cada proceso de latabla de procesos dividido entre el número de CPU's.

Los posibles estados en que pueden encontrarse los procesos son: durmiendo yejecutándose.

Mostrar la columna de “línea de comandos” para los procesos puede ser interesantepara conocer el nombre de algún programa en ejecución y las opciones con que hasido lanzado.

Puede consultarse la ayuda del programa para obtener información más detallada.

8.3.2 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 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 sistemaoperativo).

-p Tipo de procesador o unknown.-r Versión del núcleo.

Página.- 288

Page 291: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

fdisk [opciones] [dispositivo]

Permite consultar, crear, borrar, redimensionar, … particiones. Para su correctaejecución se necesitan privilegios de usuario root.

-l Visualiza las características y la tabla de particiones del dispositivoespecificado. Si no se especifica dispositivo muestra las particiones de/proc/partitions (si existe). Es una opción muy útil por mostrar las particionesde todos los dispositivos existentes.

Ejemplos: fdisk -l

free [opciones]

Muestra la cantidad de memoria RAM y de memoria swap libre y usada. Para el buenfuncionamiento del sistema la memoria de swaping no debe estar utilizándose.

-m Muestra la información en Mb.-t Muestra una línea totalizando RAM + swap

Ejemplos: free -mt

lsmod

Muestra el estado de los módulos del kernel actualmente cargados. Se complementacon 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 usuariosconectados y la carga promedio de la CPU (load average) en los últimos 1, 5 y 15minutos. 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 auptime y w puede utilizarse la instrucción “who -b” que indica la fecha y hora en quese inició el equipo.

Página.- 289

Page 292: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

lsof

Muestra los archivos abiertos por los diferentes procesos en ejecución. Un ejemplo deutilización puede ser el siguiente: para saber los archivos que abre la instrucción “manlsof” se ejecuta dicha instrucción desde un terminal y desde otro buscamos su PIDcon, por ejemplo, la instrucción “ps -ed | grep man”; con la instrucción “lsof -pnumero_PID” se obtiene la información deseada. Es muy útil para conocer lasdependencias 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 dosoperaciones diferentes:

– Reconocer el dispositivo.- se necesita que el sistema operativo tenga cargados losdrivers necesarios para que durante el arranque (si es un dispositivo fijo) o en elmomento de su inserción (si es un dispositivo extraible) pueda reconocerlo y asignarleun nombre de dispositivo.

– Montar el dispositivo.- una vez que el sistema operativo reconoce el dispositivo, laoperación de montaje consiste en asignar al sistema de ficheros del dispositivo undirectorio dentro del sistema de archivos general. Lo mismo ocurre con las demásparticiones del propio disco duro: en principio Ubuntu monta las particiones que se lehan asignado durante la instalación (la de swap, la utilizada para contener el directorioraíz (/), la utilizada para contener los directorios de los usuarios (/home), etc.) y parapoder 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.- 290

Page 293: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Tres de las utilidades que permiten el manejo de particiones y dispositivos son: elpropio Nautilus, el programa gparted y gnome-volume-properties.

Por otra parte, hay que considerar si el usuario tiene privilegios para acceder y usar eldispositivo y para montar el sistema de ficheros. Esto se puede comprobar con el programausers-admin.

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 eluso 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 lasdiferentes particiones de los discos duros y que ya ha sido comentada en apartados anterioreses gparted. Este programa informa del software que se necesita instalar para que el sistemaoperativo reconozca los diferentes tipos de particiones a través de la opción Ver – Soportepara sistemas de archivos. La opción “Gparted – Refrescar dispositivos” realiza una detecciónde dispositivos con sus correspondientes sistemas de ficheros. gparted permite crear,redimensionar, borrar, desmontar, … particiones pero no dispone de ninguna opción quepermita montar una partición.

Página.- 291

Fig 103: Privilegios de los usuarios

Page 294: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

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 demontaje. Debe tenerse presente que antes de lanzar la ejecución del comando mount debehaberse creado (y estar vacío) el directorio donde se montará la partición. Suele utilizarse eldirectorio /media para crear el subdirectorio donde montar la partición. Algunos ejemplospueden ser los siguientes:

Para montar una partición ntfs de windows, habiendo iniciado sesión como usuarioroot:

mkdir /media/windows (crea directorio)mount -t ntfs /dev/sda1 /media/windows (monta la partición)

Para montar una partición de Ubuntu de tipo ext4:

mkdir /media/Ubuntu (crea directorio)mount /dev/sda3 /media/Ubuntu (no hace falta especificar el tipo).

Si lo que se pretende es que las particiones se monten de forma automática al iniciar elsistema, habrá que incluir una línea por cada partición a montar en el fichero /etc/fstab. Laslí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-jk56-7654-nf6. Elpunto de montaje será el directorio donde se visualizará la información de la partición. Lasopciones harán referencia al tipo de acceso, modo de montaje en caso de error, etc. Lasnuevas líneas se añadirán al final del fichero, sin tocar las existentes para no generar ningúntipo de problema. Algunos ejemplos pueden ser los siguientes:

/dev/hdb2 /media/datos2 ntfs nls=utf8,umask=0222 0 0 (partición ntfs)/dev/hdb2 /media/datos2 vfat iocharset=utf8,umask=000 0 0 (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 equipomediante 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 programagparted (Partición – Desmontar). Esta operación también puede realizarse desde la línea decomandos 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 quedisponga de una partición con un sistema de ficheros común, seguramente de tipo FAT en

Página.- 292

Page 295: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

alguna de sus modalidades (FAT16 o FAT32) y que la operación de montaje se realice deforma automática si el usuario que ha iniciado la sesión tiene los privilegios adecuados. Así, alacceder desde el escritorio al contenido del icono “Equipo” aparecerá el icono que da acceso ala información del pen drive. La figura muestra un ejemplo.

Para desmontar el dispositivo basta con pulsar con el botón derecho sobre el iconocorrespondiente y elegir la opción “Desmontar el volumen”. La figura del icono cambiará y elpen drive podrá extraerse sin riesgo de pérdida de información. También podrá seradministrado a través de gparted.

Dado que a veces surgen complicaciones para montar este tipo de dispositivos, otraforma 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 conel pen drive. Para ello hay que comprobar si el paquete sg3-utils se encuentra instalado, einstalarlo si es necesario. A continuación se ejecuta la instrucción “sg_scan -i” cuyo resultadopuede ser similar al de la figura, donde la línea “/dev/sg2: ….. “ corresponde al pen drive.

Página.- 293

Fig 104: Pen drive montado automáticamente

Fig 105: Instrucción "sg_scan -i"

Page 296: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

A continuación se ejecuta la instrucción “sg_map” que deberá mostrar los nombres dedispositivo que corresponden a cada elemento mostrado por la instrucción anterior, de formasimilar a como muestra la figura.

En el ejemplo es /dev/sdc el dispositivo buscado.

Quedaría montar el dispositivo en un directorio creado al efecto, con una instrucciónsimilar a:

mount /dev/sdc /mnt/directorio

Si el pen drive tiene particiones el montaje deberá efectuarse sobre cada partición, quenormalmente 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 noparticiones.

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 operacionesque permitan la comunicación con el ordenador.

– Saber si el usuario tiene el privilegio de acceder a dispositivos de almacenamientoexterno.

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 lasfotos de la cámara al ordenador, agruparlas por álbumes y muestra información característicade las fotografías (resolución, histograma, …).

Página.- 294

Fig 106: Instrucción "sg_map"

Page 297: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Por lo demás, el sistema de archivos de la cámara de fotos puede ser manejado a travésde 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

Ubuntu dispone de una gran variedad de herramientas gráficas y en modo comandoque 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 apartadosanteriores, como es el caso de gparted (editor de particiones), fdisk, etc., y que ahorasencillamente se mencionarán.

8.5.1 Particiones

Para hacer uso de las herramientas que permiten administrar particiones es necesariodisponer de privilegios de administrador. Entre las herramientas más utilizadas se encuentran:

gpartedHerramienta gráfica que permite administrar las particiones de los discos: crear,borrar, redimensionar, … Es accesible mediante la instrucción “gparted” o a través delmenú Aplicaciones – Sistema – Administración – Editor de particiones. Su deficienciamás acusada es que no permite montar las particiones creadas. Ya ha sido analizada ensecciones anteriores.

pysdmHerramienta gráfica que permite administrar discos y particiones. No se instala pordefecto. 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.- 295

Fig 107: Preferencias de algunos dispositivos

Page 298: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Las opciones que se pueden asignar a cada partición pueden seleccionarse a través delbotó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 escritorioKDE pero con Gnome puede presentar algunos problemas (QGtkStyle cannot be usedtogether with the GTK_Qt engine) dependiendo de la configuración de la aparienciadel escritorio.

Página.- 296

Fig 108: Utilidad pysdm

Fig 109: Utilidad mountmanager

Page 299: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

partitionmanagerUtilidad gráfica para KDE que permite manejar discos, particiones y una granvariedad de tipos de sistemas de ficheros. También funciona con GNOME y puedelanzarse desde la línea de comandos o a través del menú Aplicaciones – Herramientasdel sistema – Gestor de particiones de KDE.

fdiskInstrucción que permite administrar las particiones de los discos.

testdiskPermite escanear, reparar y recuperar particiones de los discos. Trabaja con granvariedad de tipos de particiones: ext2, ext3, swap, raid, LVM, FAT 16, FAT 32, NTFS,etc. Puede obtenerse información más detallada en www.cgsecurity.org y mediante lainstrucción “man testdisk”.

Si se ejecuta sin opciones, permitirá elegir entre crear un fichero para registrar lainformación generada, añadirla a un fichero existente o simplemente no registrarla.

Página.- 297

Fig 110: Utilidad partitionmanager

Page 300: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

A continuación permitirá elegir el disco a analizar o salir del programa. Si seselecciona 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.

/ list Muestra las particiones.

Ejemplo: testdisk /list

Página.- 298

Fig 111: Instrucción "testdisk"

Fig 112: Opciones de testdisk

Page 301: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

ddrescue y gddrescueSon herramientas que permiten recuperar datos de particiones que presentan errores.Intentan leer y si se producen fallos continúan con los siguientes sectores dondeherramientas como dd no funcionarían. Si el proceso de copia se interrumpe por elusuario es posible continuar a partir de esa posición más tarde.

partedUtilidad que mediante comandos permite crear etiquetas, crear tablas de particiones,mover, redimensionar, copiar particiones, etc.

Y una gran variedad de utilidades más que permiten operar con discos, particiones ysistemas de ficheros, entre las que se encuentran:

– e2tools.– grub-disk.– filelight.– ext3grep.– gdecrypt.– easycrypt.– partimage.– recoverdm.– recover.– secure-delete.– gpart.– Diskmanager.– Etc.

Página.- 299

Fig 113: Instrucción "parted"

Page 302: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

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 dealimentación y ejecución de comandos erróneos son una fuente de riesgo. Se recomiendarealizar 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 distribuirel espacio del disco de forma flexible en diferentes sistemas de archivos. El LVM sedesarrolló 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 espacioen disco. De este VG se forman los volúmenes lógicos en caso necesario. El sistema operativoaccede entonces a éstos en lugar de a las particiones físicas. Los VG se pueden extender porvarios discos, de tal forma que un solo VG puede estar constituido por más de una unidad opartes de ellas. Así, el LVM proporciona un cierto nivel de abstracción en relación al espaciofísico del disco que permite que su organización pueda ser modificada de una forma muchomás fácil y segura que un reparticionamiento físico.

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 entres particiones físicas (PART), con un punto de montaje (PM) para cada una, de tal forma queel sistema operativo pueda acceder a ellas. A la derecha, se han dividido dos discos en dos ytres particiones físicas cada uno. Se han definido dos grupos de volúmenes LVM (GV 1 y GV2). GV 1 contiene dos particiones del disco DISCO 1 y una del DISCO 2. GV 2 emplea lasdos particiones restantes del DISC0 2. En LVM, las particiones físicas que son incorporadas aun grupo de volúmenes se denominan volúmenes físicos (Physical volume, PV). Dentro delos 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 montajeasociados. La línea divisoria entre los diferentes volúmenes lógicos no tiene por qué coincidircon la división de una partición.

Página.- 300

DISCO DISCO 1 DISCO 2

PART PART PART PART PART PART PART PART

GV 1 GV 2

VL 1 VL 2 VL 3 VL 4

PM PM PM PM PM PM PM

Fig 114: Particiones frente a LVM

Page 303: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Por ejemplo, los límites de los volúmenes VL 1 y VL 2 no coinciden con los de lasparticiones.

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 siestá correctamente configurado.

– LVM permite añadir discos duros o VL incluso cuando el sistema está en marcha. Estorequiere, evidentemente, hardware que se pueda cambiar en caliente (hot swap).

– Es posible utilizar varios discos duros en modo RAID 0 (striping) con el consiguienteincremento de rendimiento.

– La función snapshot permite, sobre todo en servidores, realizar copias de seguridadcoherentes mientras el sistema está en funcionamiento.

El uso de LVM vale la pena ya a partir de PCs domésticos muy utilizados o enservidores pequeños. LVM resulta ideal para un volumen de datos creciente como por ejemploen el caso de bases de datos, archivos de música, directorios de usuarios, etc. En tal caso esposible configurar sistemas de archivos más grandes que un solo disco duro. Otra ventaja delLVM es la de poder crear hasta 256 VL's. Sin embargo, es importante considerar que eltrabajo con el LVM se diferencia mucho del trabajo con particiones convencionales. Puedeencontrarse información en inglés sobre la configuración del “Logical Volume Manager”(LVM) en el HowTo oficial de LVM http://tldp.org/HOWTO/LVM-HOWTO/.

Con la versión 2.6 del kernel, LVM se actualizó a la versión 2. Esta versión, que escompatible con la versión previa de LVM, puede seguir administrando grupos de volúmenesya 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 utilizarseen su versión 2. Por este motivo, cuando en el capítulo se habla de LVM nos referimossiempre a LVM2.

Para comprender el correcto funcionamiento de los volúmenes lógicos se propone larealización de la siguiente práctica.

Práctica (volúmenes lógicos)

Utilizando un pen drive, o un disco duro virtual, 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.- 301

Page 304: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

– Inicializar 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 yque se montará en /media/VL1, otro, llamado VL2, dentro de GV2 que ocupe la mitaddel espacio y que se montará en /media/VL2 y el último, llamado VL3, que ocupará elresto de GV2 y que se montará en /media/VL3.

Antes de proceder a la realización de esta práctica, para evitar desastres debidos aconfusiones del usuario o errores del sistema, debe realizarse copia de seguridad de lainformación del equipo.

Para evitar problemas con los permisos y autorizaciones se puede iniciar una sesión enun terminal y a continuación hacer uso de la instrucción “su root”. También puede realizarsecon un usuario con privilegios de administrador.

A continuación se procede a la creación de las particiones con la instrucción “gparted”,teniendo cuidado de seleccionar el dispositivo correspondiente al pen drive.

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 dentrode 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.- 302

Fig 115: Creación de particiones

Page 305: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

A continuación se comprueba si se encuentra instalado el paquete lvm2 que gestionalos volúmenes lógicos y el paquete system-config-lvm que es un programa gráfico quepermite 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 laopción menú Aplicaciones – Herramientas del sistema – Administración de VolúmenesLógicos. Puede producirse un error al leer o guardar la información de configuración delprograma que podría hacer que algunas opciones no funcionen pero que permite continuarperfectamente con el proceso.

Aparecerá una ventana con una subventana a la izquierda que deberá mostrar una listade “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 driveaparecerán las particiones creadas anteriormente. Si no aparecen deberán inicializarse una auna (/dev/sdb1, /dev/sdb2, …) a través de las opciones “Herramientas – Inicializar ...”.

Página.- 303

Fig 116: Pen drive particionado

Fig 117: Ventana del programa system-config-lvm

Page 306: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Hay que inicializar las particiones primarias y las lógicas que van a formar parte delLVM; en este caso todas las lineas (particiones) de /dev/sdb a excepción de lascorrespondientes a la partición extendida y al espacio sin particionar. Para ello habrá que irseleccionando una a una y pulsando sobre el botón “Inicializar Entidad”. Al inicializar laprimera, en la subventana de la izquierda aparecerá una nueva lista de “Volúmenes noasignados”. Al finalizar esta operación las particiones seleccionadas formarán parte delsistema 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, lapartició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 “EliminarVolumen de la AVL (Administración de Volúmenes Lógicos)”. Pulsando sobre el botón “Crearun nuevo Grupo Volumen” aparece una ventana (ver figura) solicitando:

– Nombre del grupo volumen.- en este ejemplo vamos a llamar a un grupo volumenGV1 y al otro GV2.

– Máximo de volúmenes físicos.- los volúmenes físicos son las particiones. Por defectotoma 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 quesuficiente. Los volúmenes lógicos son partes en las que se dividen los grupos devolúmenes y que van a tener su propio punto de montaje; no tienen por qué coincidircon 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 unapartición o a los inodos de un sistema de ficheros ext4. Por defecto toma 4 Mb. quepermitirá volúmenes físicos y lógicos de hasta 256 Gb. Si se prevé sobrepasar estacapacidad deberá aumentarse el valor del tamaño físico.

– Con clúster.- este cuadro de verificación debe activarse cuando el grupo volumen va aformar parte de un sistema compuesto por varios equipos. Generalmente un ordenadorpersonal dispone de un disco duro donde almacena toda la información; si el volumende información aumenta pueden instalarse discos duros adicionales; en sistemas quemanejan gran cantidad de información, ésta podrá distribuirse (compartiéndola) envarios equipos que formarán lo que se denomina un clúster.

Página.- 304

Page 307: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

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 lacreación del grupo volumen. En cualquier caso, la operación es reversible y si nosequivocamos 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 yproceder de forma similar a la creación de GV1.

Una vez creados los dos grupos de volúmenes habrá que añadirles las particiones quecorrespondan 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: seselecciona 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 GV1y se pulsa sobre el botón “Añadir”.

Se procede de forma similar para el resto de particiones, finalizando así el proceso deasignación de volúmenes físicos (particiones) a los grupos de volúmenes.

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.- 305

Fig 118: Creación de grupos de volúmenes

Fig 119: Grupo Volumen con Volúmenes físicos incorporados

Page 308: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

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á unaventana solicitando los datos correspondientes:

– Nombre del volumen lógico.- en nuestro caso los nombres que se asignarán seránVL1, VL2 y VL3 respectivamente.

– Propiedades del volumen.- dependiendo de las opciones que se elijan permite crearvolúmenes normales, RAID 0 o RAID 1. La tecnología RAID establece varios nivelesde seguridad y eficacia para los volúmenes.

Un volumen RAID 0 distribuye la información de los volúmenes lógicos entre variosvolúmenes físicos (striping). Si los volúmenes físicos residen en diferentes discosduros los procesos de lectura/escritura se aceleran puesto que los equipos puedenleer/escribir en varios discos diferentes a la vez (franjas). Si, por ejemplo, un ficheroque ocupa 8 Kb. se graba en dos discos diferentes, los primeros 4 Kb. en uno y losotros 4 Kb. en el otro, el proceso de lectura/escritura se optimiza. Sin embargo, unvolumen lógico de n franjas o bandas sólo puede crearse correctamente cuando elespacio de disco requerido por el volumen lógico puede distribuirse de formauniforme en n volúmenes físicos. Si sólo están disponibles dos volúmenes físicos, unvolumen lógico de tres franjas no sería viable.

Para configurar un volumen RAID 0 hay que seleccionar “Striped” (distribuido), elnúmero de franjas del volumen y la capacidad de las partes (gránulos) en las que sevan a dividir los ficheros para distribuirlas en cada franja. Si, por ejemplo, un ficheroocupa 12 Kb y disponemos de cinco discos duros en los que se ha creado un volumen

Página.- 306

Fig 120: Creación de volumen lógico

Page 309: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

lógico de cinco franjas con una granularidad de 2 Kb., el fichero se dividirá en parteso 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º y11º, en el segundo disco los gránulos 2º y 7º, etc., como muestra la figura.

Si el equipo puede leer/escribir en los 5 discos a la vez, en cada operación delectura/escritura abarcará una gran cantidad de información del fichero, incrementandoeficazmente el tratamiento de la información.

Un volumen RAID 1 utiliza dos discos, el segundo para contener una copia exacta delprimero de tal forma que, si uno de ellos se estropea, la información se recuperará apartir 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áticamentea ser la mitad (aprox.). Evidentemente este método es efectivo si el volumen lógicocuenta con dos volúmenes físicos (particiones), cada uno en un disco y a ser posibletanto 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 lacapacidad de la extensión se establece como “Tamaño físico” al crear el grupovolumen. En el ejemplo, VL1 constará de 250 extensiones de 4 Mb. cada una, lo quesupone un total de 1 Gb., Vl2 constara de 188 extensiones y VL3 de 187. Con estadistribució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 dela 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 cuadrosde verificación “Cantidad” y “Cantidad cuando reinicie” permite especificar el puntode montaje (directorio) del volumen y si será montado automáticamente al reiniciar el

Página.- 307

Fig 121: Distribución RAID 0

Page 310: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

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 alque pertenece el propietario y lectura y ejecución para los otros, teniendo en cuentaque el significado del permiso de ejecución para los directorios consiste en laposibilidad de establecerlo como directorio activo.

En nuestra práctica los tres volúmenes serán de tipo ext3, en los tres se marcará elcuadro 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 driveconectado a un puerto USB puede ocurrir que al reiniciar el equipo el pen drive no seencuentre insertado. Se permitirá la creación automática de los directorios de montajey para que todos los usuarios puedan escribir en los volúmenes se añadirá el permisode escritura con la instrucción:

chmod a+w /media/VL1 /media/VL2 /media/VL3

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 comandoscomo se indica a continuación:

Para instalar LVM junto con algunas utilidades:

sudo aptitude install lvm2 dmsetup mdadmin

Página.- 308

Fig 122: Vistas física y lógica del grupo de volúmenes

Page 311: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

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/sdb2sudo vgcreate VG2 /dev/sdb3 /dev/sdb5 /dev/sdb6

Para crear los volúmenes lógicos:

sudo lvcreate --name VL1 --size 1G GV1sudo lvcreate --name VL2 --size 752M GV2sudo 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 algunode 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/VL3mount /dev/GV1/VL1 /media/VL1mount /dev/GV2/VL2 /media/VL2mount /dev/GV2/VL3 /media/VL3

Y por último, si se desea que los volúmenes lógicos estén accesibles sin necesidad deusar la cuenta de un usuario administrador, pueden crearse las lineas correspondientes en elfichero /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 0 0

8.5.3 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 sefragmenten y, por otra, que aparezcan “huecos” sin información útil. La fragmentación de losficheros produce una ralentización en el acceso a los mismos puesto que las cabezas delectura/escritura de los discos duros tienen que desplazarse a distintos lugares para leer lainformación de un mismo fichero.

Página.- 309

Page 312: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Los huecos se generan con el borrado de ficheros o con la disminución de su tamaño yserán los causantes de la fragmentación y dispersión de los nuevos ficheros y, por lo tanto, dereducir el rendimiento y la capacidad de los discos.

Entre los factores más influyentes en el rendimiento de los sistemas de archivos acausa de la fragmentación se encuentran:

– La organización o algoritmos que utilizan los diferentes tipos de ficheros paralocalizar o situar los archivos.

Los sistemas de archivos de tipo FAT y NTFS utilizan un procedimiento simple parasituar los archivos que no optimiza la fragmentación: a la hora de grabar un fichero sevan ocupando los espacios libres del disco aunque para ello se fragmenteenormemente 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óncuando el fichero crezca.

– Las reorganizaciones automáticas que realiza el sistema operativo para mantener lossistemas de ficheros en niveles bajos de fragmentación.

Ubuntu realiza periódicamente la comprobación de sus sistemas de archivos y efectúaoperaciones de optimización si es necesario.

– La forma o algoritmos de acceso que utilizan los sistemas operativos para acceder alos archivos según el tipo de sistema de ficheros donde se encuentran.

Los algoritmos de Ubuntu 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 delos tiempos de acceso a los mismos..

– El tipo de ficheros y de accesos a los mismos. En este sentido tiene gran importanciala capacidad de la unidad de asignación de ficheros elegida para el sistema de archivosal formatear o inicializar los volúmenes. Si se eligen unidades de asignación deficheros muy grandes y las aplicaciones que se utilizan gestionan gran cantidad deficheros pequeños puede ocurrir que un gran número de unidades de asignación deficheros se queden sin completar, desperdiciando así una parte considerable de lacapacidad del disco. En el caso contrario, si se eligen unidades pequeñas y lasaplicaciones utilizan bases de datos o ficheros enormes, puede ocurrir que el sistemautilice demasiado tiempo en realizar las consultas sobre cuál es el siguiente bloque deinformación a tratar.

En cuanto al tipo de accesos, influye la frecuencia de creación, borrado y modificaciónde ficheros: generalmente, a mayor frecuencia mayor índice de fragmentación.

Página.- 310

Page 313: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

En Linux escasean las herramientas de tratamiento de la fragmentación por habersedesarrollado técnicas de gestión de los sistemas de archivos y tipos de sistemas de archivosque minimizan la fragmentación o su impacto.

Una forma de comprobar el nivel de fragmentación de un volumen consiste endesmontarlo 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 dela información que contiene, borrar completamente toda la información del fichero y volver arecuperarla desde la copia de seguridad.

8.6 Actividades

1. Ver los repositorios configurados en Synaptic.2. Comprobar las dependencias y archivos instalados del paquete apache2.3. Buscar los paquetes que en su nombre o descripción contienen la palabra “backup”.4. Instalar con apt-get el programa de copias de seguridad “keep”.5. Comprobar si el proceso gnome-system-monitor se encuentra activo.6. 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 ficheroeditado. “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 VL3.

15. Escribir las instrucciones que permitirían desfragmentar el directorio /home, quepodemos suponer que se encuentra montado individualmente sobre una partición.

Página.- 311

Page 314: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

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 laAyuda o manuales incluidos en los propios paquetes y con la información sobre RAIDincorporada en Wikipedia.

Resumen.

Este tema trata las características de los volúmenes RAID hardware y software, losdiferentes niveles existentes de RAID, incorporando esquemas muy intuitivos que facilitan lacomprensión. Se da a conocer el software que MaX incorpora para administrar volúmenesRAID y se realiza una práctica para crear un RAID 5 sobre un pen drive.

Temporización: 16 horas.

Página.- 312

Page 315: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

9.2 Introducción

El apartado 8.5.3 muestra las características de los volúmenes y las ventajas degestionar los discos mediante volúmenes lógicos frente a la gestión de particiones.

RAID (Redundant Array of Independent Disk, conjunto redundante de discosindependientes) (anteriormente Redundant Array of Inexpensive Disks) hace referencia a unsistema de almacenamiento que usa múltiples discos duros entre los que distribuye o replicalos datos. Dependiendo de su configuración o «nivel», los beneficios de un RAID respecto aun ú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 dedatos erróneos o incompletos en, por ejemplo, las bases de datos, la tolerancia a fallos es lacapacidad para acceder a la información cuando se produce un error que puede ser físico, elrendimiento es el volumen de información que puede gestionar por unidad de tiempo y lacapacidad el volumen de información que puede almacenar.

En sus implementaciones originales, su ventaja clave era la habilidad de combinarvarios dispositivos de bajo coste y tecnología más antigua en un conjunto que ofrecía mayorcapacidad, fiabilidad, velocidad o una combinación de éstas que un solo dispositivo de últimageneración y coste más alto.

En el nivel más simple, un RAID combina varios discos duros en un solo volumenló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) seimplementan con unidades de disco de la misma capacidad. Debido al decremento en elprecio de los discos duros y la mayor disponibilidad de las opciones RAID incluidas en loschipsets de las placas base, los niveles RAID se encuentran también como opción en losordenadores personales más avanzados. Esto es especialmente frecuente en los computadoresdedicados 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» ocombinaciones diferentes de discos. Cada una tenía ventajas y desventajas teóricas. Con elpaso de los años, han aparecido diferentes implementaciones del concepto RAID. La mayoríadifieren sustancialmente de los niveles RAID idealizados originalmente, pero se haconservado la costumbre de llamarlas con números. Esto puede resultar confuso, dado queuna implementación RAID 5, por ejemplo, puede diferir sustancialmente de otra. Los nivelesRAID 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. Deigual forma, el cambio de «barato» a «independiente» confunde a muchos sobre el pretendidopropósito del RAID. Incluso hay algunas implementaciones del concepto RAID que usan unsolo disco. Pero en general, puede decirse que cualquier sistema que emplee los conceptosRAID 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.- 313

Page 316: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

9.3 Implementación por hardware y por software

La distribución de datos en varios discos puede ser gestionada por hardware o porsoftware. Además, existen sistemas RAID híbridos basados en software y hardwareespecífico.

Con la implementación por software, el sistema operativo gestiona los discos delconjunto a través de una controladora de disco normal (IDE/ATA, SATA, SCSI, SAS o FibreChannel). Considerada tradicionalmente una solución más lenta, con el rendimiento de lasCPU's modernas puede llegar a ser más rápida que algunas implementaciones hardware, aexpensas de dejar menos tiempo de proceso al resto de tareas del sistema. Evidentemente esuna solución más barata dado que no se necesita hardware especial y los sistemas operativosde los servidores incorporan el software necesario para configurar y gestionar los diferentesniveles RAID.

Una implementación de RAID basada en hardware requiere al menos una controladoraRAID específica, ya sea como una tarjeta de expansión independiente o integrada en la placabase, que gestione la administración de los discos y efectúe los cálculos de paridad necesariospara algunos niveles RAID. Esta opción suele ofrecer un mejor rendimiento y hace que elsoporte por parte del sistema operativo sea más sencillo (de hecho, puede ser totalmentetransparente para éste). Las implementaciones basadas en hardware suelen soportarsustitución en caliente (hot swapping), permitiendo que los discos que fallen puedanreemplazarse sin necesidad de detener el sistema.

En los RAID mayores, la controladora y los discos suelen montarse en una cajaexterna específica, que a su vez se conecta al sistema principal mediante una o variasconexiones 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 controladorasRAID hardware baratas. En realidad, el hardware es una controladora de disco normal sincaracterísticas RAID, pero el sistema incorpora una aplicación de bajo nivel que permite a losusuarios construir RAID controlados por la BIOS. Será necesario usar un controlador dedispositivo específico para que el sistema operativo reconozca la controladora como un únicodispositivo RAID. Estos sistemas efectúan en realidad todos los cálculos por software (esdecir, los realiza la CPU), con la consiguiente pérdida de rendimiento, y típicamente estánrestringidos a una única controladora de disco.

Una importante característica de los sistemas RAID por hardware es que puedenincorporar un caché de escritura no volátil (con alimentación de respaldo por batería) quepermite aumentar el rendimiento del conjunto de discos sin comprometer la integridad de losdatos en caso de fallo del sistema. Esta característica no está obviamente disponible en lossistemas RAID por software, que suelen presentar por tanto el problema de reconstruir elconjunto de discos cuando el sistema es reiniciado tras un fallo para asegurar la integridad delos datos.

Página.- 314

Page 317: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

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 yagrupar en un mismo RAID discos conectados en varias controladoras) y los basados enhardware 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 siempreautomáticamente) tras el fallo de un disco del RAID. Esto reduce el tiempo del período dereparació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 alRAID, 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

9.4.1 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 0no era uno de los niveles RAID originales y que no es redundante. El RAID 0 se usanormalmente para incrementar el rendimiento, aunque también puede utilizarse como formade crear volúmenes grandes a partir de discos duros pequeños. Un RAID 0 puede ser creadocon discos de diferentes tamaños, pero el espacio de almacenamiento añadido al conjuntoestará limitado por el tamaño del disco más pequeño. Así, si se forma un RAID 0 con un discode 300 Gb y otro de 100 Gb, el tamaño del conjunto resultante será sólo de 200 GB, ya quecada disco aporta 100 Gb. Una buena implementación de un RAID 0 dividirá las operacionesde lectura y escritura en bloques de igual tamaño, por lo que distribuirá la informaciónequitativamente entre los discos.

La fiabilidad del volumen RAID 0 será igual a la fiabilidad media de cada disco entreel número de discos del conjunto; es decir, la fiabilidad total es inversamente proporcional alnúmero de discos del conjunto. Si un disco se estropea se pierde la información del conjuntoque forma el volumen.

Página.- 315

Page 318: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Entonces, las dos grandes ventajas de un nivel RAID 0 son el incremento de lavelocidad de transmisión de datos y la posibilidad de obtener un volumen de gran capacidad apartir de discos de baja capacidad.

Una forma de crear en Ubuntu un volumen RAID 0 ya se contempló en el apartado8.5.2; basta con seleccionar en la ventana de creación de volúmenes lógicos, en la sección depropiedades de VL, la opción “Striped”, el número de franjas o discos y la capacidad de losbloques en los que se va a dividir la información para distribuirlos por las franjas.

9.4.2 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 decombinar múltiples discos duros físicos en un solo disco virtual. Los discos son meramenteconcatenados uno tras otro comportándose como un solo disco. Se utiliza a veces paracombinar 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 elprimer caso la traducción de la dirección lógica del dispositivo concatenado a la direcciónfísica del disco puede ser realizada por el hardware RAID y en el segundo la traducción esrealizada por el núcleo.

Página.- 316

Fig 123: Esquema de RAID 0

Fig 124: Crear volumen lógico

Page 319: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Una ventaja de JBOD sobre RAID 0 es que , en caso de fallo de un disco, en RAID 0suele producirse la pérdida de todos los datos del conjunto mientras que en JBOD sólo sepierden los datos del disco afectado. Como inconveniente, JBOD no supone ninguna mejoraen el rendimiento del sistema.

De forma similar al RAID 0, para crear en Ubuntu un volumen lineal o JBOD bastacon 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 8.5.2 son de este tipo.

9.4.3 RAID 1 (disco espejo o mirroring)

El RAID 1 crea una copia exacta (o espejo) de un conjunto de datos en dos o másdiscos. 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 RAID1 clásico consiste en dos discos en espejo, lo que incrementa exponencialmente la fiabilidadrespecto a un solo disco; es decir, la probabilidad de fallo del conjunto es igual al producto delas probabilidades de fallo de cada uno de los discos (pues para que el conjunto falle esnecesario que lo hagan todos sus discos).

Adicionalmente, dado que todos los datos están en dos o más discos, con hardwarehabitualmente independiente, el rendimiento de lectura se incrementa aproximadamente comomúltiplo lineal del número del copias; es decir, un RAID 1 puede estar leyendosimultáneamente dos datos diferentes en dos discos diferentes, por lo que su rendimiento seduplica. Para maximizar los beneficios sobre el rendimiento del RAID 1 se recomienda el usode controladoras de disco independientes, una para cada disco (práctica a veces denominadasplitting o duplexing).

Como en el RAID 0, el tiempo medio de lectura se reduce, ya que los sectores a buscarpueden dividirse entre los discos, bajando el tiempo de búsqueda y subiendo la tasa detransferencia, con el único límite de la velocidad soportada por la controladora RAID.

Página.- 317

Fig 125: Esquema de RAID 1

Page 320: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

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 1antiguas también leen de ambos discos simultáneamente y comparan los datos para detectarerrores. La detección y corrección de errores en los discos duros modernos hacen esta prácticapoco útil.

Al escribir, el conjunto se comporta como un único disco, dado que los datos deben serescritos 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 entornoscon 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 requiereque la aplicación de gestión del conjunto soporte la recuperación de los datos del disco en elmomento de la división. Este procedimiento es menos crítico que la presencia de unacaracterística de snapshot (copia instantánea de un volumen en un momento dado) en algunossistemas de ficheros, en la que se reserva algún espacio para los cambios, presentando unavista estática en un punto temporal dado del sistema de ficheros. Alternativamente, unconjunto de discos puede ser almacenado de forma parecida a como se hace con lastradicionales cintas.

En Ubuntu, un volumen RAID 1 puede crearse seleccionando en la ventana decreación de volúmenes lógicos la opción “Lineal” y marcando el cuadro de verificación“Espejado”.

9.4.4 RAID 2

Un RAID 2 distribuye los datos en varios discos a nivel de bits en lugar de a nivel debloques de información y usa un código de Hamming para la corrección de errores, quepermite detectar y corregir errores a nivel de bit. Los discos son sincronizados por lacontroladora 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 sistemainformático moderno: 32 se usarían para almacenar los bits individuales que forman cadapalabra y 7 se usarían para la corrección de errores.

Página.- 318

Fig 126: Propiedades del volumen lógico

Page 321: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

9.4.5 RAID 3

Un RAID 3 distribuye los datos por varios discos, a nivel de bytes, dedicando un discoexclusivamente para la paridad. Prácticamente no se usa por presentar el problema de nopoder atender varias peticiones simultáneas, debido a que por definición cualquier simplebloque de datos se dividirá por todos los discos del conjunto, residiendo la misma direccióndentro de cada uno de ellos. Así, cualquier operación de lectura o escritura exige activar todoslos discos del conjunto.

En el ejemplo de la figura, una petición del bloque «A» formado por los bytes A1 a A6requerirí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.

9.4.6 RAID 4

Un RAID 4 usa división a nivel de bloques con un disco de paridad dedicado. Necesitaun mínimo de 3 discos físicos. El RAID 4 es parecido al RAID 3 con la diferencia que dividea nivel de bloques en lugar de a nivel de bytes. Esto permite que cada miembro del conjuntofuncione independientemente cuando se solicita un único bloque. Si la controladora de discolo permite, un conjunto RAID 4 puede servir varias peticiones de lectura simultáneamente.

Página.- 319

Fig 127: Esquema de RAID 3

Fig 128: Esquema de RAID 4

Page 322: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

En principio también sería posible servir varias peticiones de escriturasimultáneamente, pero al estar toda la información de paridad en un solo disco, éste seconvertirí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. Unapetición simultánea del bloque «B1» tendría que esperar, pero una petición de «B2» podríaatenderse concurrentemente.

9.4.7 RAID 5

Un RAID 5 usa división de datos a nivel de bloques distribuyendo la información deparidad entre todos los discos miembros del conjunto. El RAID 5 ha logrado popularidadgracias a su bajo coste de redundancia. Generalmente, el RAID 5 se implementa con soportehardware para el cálculo de la paridad.

En la figura anterior, una petición de lectura del bloque «A1» sería servida por el disco0. Una petición de lectura simultánea del bloque «B1» tendría que esperar, pero una peticiónde 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 deparidad dentro de la misma división (stripe). Un bloque se compone a menudo de muchossectores consecutivos de disco. Una serie de bloques (un bloque de cada uno de los discos delconjunto) recibe el nombre colectivo de división (stripe). Si otro bloque, o alguna porción deun bloque, es escrita en esa misma división, el bloque de paridad (o una parte del mismo) esrecalculada y vuelta a escribir. El disco utilizado por el bloque de paridad está escalonado deuna división a la siguiente, de ahí el término «bloques de paridad distribuidos». Las escriturasen un RAID 5 son costosas en términos de operaciones de disco y tráfico entre los discos y lacontroladora.

Página.- 320

Fig 129: Esquema de RAID 5

Page 323: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Los bloques de paridad no se leen en las operaciones de lectura de datos, ya que estosería una sobrecarga innecesaria y disminuiría el rendimiento. Sin embargo, los bloques deparidad se leen cuando la lectura de un sector de datos provoca un error de CRC overificación de bits. En este caso, el sector en la misma posición relativa dentro de cada unode los bloques de datos restantes en la división y dentro del bloque de paridad en la divisiónse 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 restantesdiscos son combinados matemáticamente con los bloques de datos de los restantes discos parareconstruir 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 finde que el sistema operativo pueda notificar al administrador que una unidad necesita serreemplazada: las aplicaciones en ejecución siguen funcionando ajenas al fallo. Las lecturas yescrituras continúan normalmente en el conjunto de discos, aunque con alguna degradación derendimiento. La diferencia entre el RAID 4 y el RAID 5 es que, en el Modo Interno deRecuperación de Datos, el RAID 5 puede ser ligeramente más rápido, debido a que, cuando elCRC y la paridad están en el disco que falló, los cálculos no tienen que realizarse, mientrasque en el RAID 4, si uno de los discos de datos falla, los cálculos tienen que ser realizados encada acceso.

El RAID 5 requiere al menos tres unidades de disco para ser implementado. El fallo deun 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óricamenteilimitado, pero en la práctica es común limitar el número de unidades. Los inconvenientes deusar grupos de redundancia mayores son una mayor probabilidad de fallo simultáneo de dosdiscos, un mayor tiempo de reconstrucción y una mayor probabilidad de hallar un sectorirrecuperable durante una reconstrucción. A medida que el número de discos en un conjuntoRAID 5 crece, el tiempo medio entre fallos (MTBF) puede ser más bajo que el de un únicodisco. Esto sucede cuando la probabilidad de que falle un segundo disco en los N-1 discosrestantes 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. Unaalternativa que proporciona una protección de paridad dual, permitiendo así mayor número dediscos por grupo, es el RAID 6.

Algunos vendedores RAID evitan montar discos de los mismos lotes en un grupo deredundancia para minimizar la probabilidad de fallos simultáneos al principio y el final de suvida útil.

Las implementaciones RAID 5 presentan un rendimiento malo cuando se someten acargas 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 exigerealizar secuencias de lectura, modificación y escritura tanto para el bloque de datos comopara el de paridad. Implementaciones más complejas incluyen a menudo cachés de escriturano volátiles para reducir este problema de rendimiento.

Página.- 321

Page 324: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

En el caso de un fallo del sistema cuando hay escrituras activas, la paridad de unadivisión (stripe) puede quedar en un estado inconsistente con los datos. Si esto no se detecta yrepara antes de que un disco o bloque falle, pueden perderse datos debido a que se usará unaparidad incorrecta para reconstruir el bloque perdido en dicha división. Esta potencialvulnerabilidad 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.

9.4.8 RAID 6

El RAID 6, que no era uno de los niveles RAID originales, amplía el nivel RAID 5añadiendo otro bloque de paridad, por lo que divide los datos a nivel de bloques y distribuyelos dos bloques de paridad entre todos los miembros del conjunto.

Puede ser considerado un caso especial de código Reed-Solomon, que es un códigoque utilizando unos bits adicionales permite detectar y corregir los errores de los datos en elreceptor. Al añadir códigos adicionales es posible alcanzar cualquier número de discosredundantes, y recuperarse de un fallo de ese mismo número de discos en cualquier punto delconjunto, 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 medidaque el conjunto crece y se dispone de más discos la pérdida en capacidad de almacenamientose hace menos importante, creciendo al mismo tiempo la probabilidad de que dos discos fallensimultáneamente. El RAID 6 proporciona protección contra fallos dobles de discos y contrafallos cuando se está reconstruyendo un disco. En caso de que sólo tengamos un conjuntopuede 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 dediscos del conjunto.

Página.- 322

Fig 130: Esquema de RAID 6

Page 325: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Un RAID 6 no penaliza el rendimiento de las operaciones de lectura, pero sí el de lasde escritura debido al proceso que exigen los cálculos adicionales de paridad. Estapenalización puede minimizarse agrupando las escrituras en el menor número posible dedivisiones (stripes), lo que puede lograrse mediante el uso de un sistema de ficheros WAFL.

9.4.9 RAID 5E y RAID 6E

Se llama RAID 5E y RAID 6E a las variantes de RAID 5 y RAID 6 que incluyendiscos 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 paracualquiera de las unidades miembro. No suponen mejora alguna del rendimiento, pero sí seminimiza el tiempo de reconstrucción (en el caso de los discos hot spare) y las labores deadministración cuando se producen fallos. Un disco de reserva no es realmente parte delconjunto 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 puedausarse como elemento básico de otro en lugar de discos físicos. Resulta instructivo pensar enestos 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 loscorrespondientes a los niveles RAID usados, añadiendo a veces un «+» entre ellos. Porejemplo, el RAID 10 (o RAID 1+0) consiste conceptualmente en múltiples conjuntos de nivel1 almacenados en discos físicos con un nivel 0 encima, agrupando los anteriores niveles 1. Enel caso del RAID 0+1 se usa más esta forma que RAID 01 para evitar la confusión con elRAID 1. Sin embargo, cuando el conjunto de más alto nivel es un RAID 0 (como en el RAID10 y en el RAID 50), la mayoría de los vendedores eligen omitir el «+», a pesar de que RAID5+0 sea más informativo.

Al anidar niveles RAID, se suele combinar un nivel RAID que proporcioneredundancia con un RAID 0 que aumenta el rendimiento. Con estas configuraciones espreferible tener el RAID 0 como nivel más alto y los conjuntos redundantes debajo, porqueasí será necesario reconstruir menos discos cuando uno falle. Así, el RAID 10 es preferible alRAID 0+1 aunque las ventajas administrativas de «dividir el espejo» del RAID 1 seperderí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.- 323

Page 326: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

9.5.1 RAID 0+1

Un RAID 0+1 (también llamado RAID 01, que no debe confundirse con RAID 1) esun RAID usado para replicar y compartir datos entre varios discos. La diferencia entre unRAID 0+1 y un RAID 1+0 es la localización de cada nivel RAID dentro del conjunto final: unRAID 0+1 es un espejo de divisiones.

Como puede verse en la figura, primero se crean dos conjuntos RAID 0 (dividiendolos datos en discos) y luego, sobre los anteriores, se crea un conjunto RAID 1 (realizando unespejo de los anteriores). La ventaja de un RAID 0+1 es que cuando un disco duro falla, losdatos perdidos pueden ser copiados del otro conjunto de nivel 0 para reconstruir el conjuntoglobal. Sin embargo, si se añade un disco duro adicional en una división, es obligatorio añadirotro 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 dosfallos simultáneos de discos salvo que sean en la misma división. Es decir, cuando un discofalla, la otra división se convierte en un punto de fallo único. Además, cuando se sustituye eldisco que falló, se necesita que todos los discos del conjunto participen en la reconstrucciónde los datos.

Con la cada vez mayor capacidad de las unidades de discos, el riesgo de fallo de losdiscos es cada vez mayor. Además, las tecnologías de corrección de errores de bit no han sidocapaces 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 losfallos dobles simultáneos), muchos entornos empresariales críticos están empezando a evaluarconfiguraciones RAID más tolerantes a fallos que añaden un mecanismo de paridadsubyacente. Entre los más prometedores están los enfoques híbridos como el RAID 0+1+5(espejo sobre paridad única) o RAID 0+1+6 (espejo sobre paridad dual). Son los máshabituales en las empresas.

Página.- 324

Fig 131: Esquema de RAID 0+1

Page 327: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

9.5.2 RAID 1+0

Un RAID 1+0, también llamado RAID 10, es parecido a un RAID 0+1 con laexcepción de que los niveles RAID que lo forman se invierte: el RAID 10 es una división deespejos.

En cada división RAID 1 pueden fallar todos los discos salvo uno sin que se pierdandatos. Sin embargo, si los discos que han fallado no se reemplazan, el restante pasa a ser unpunto único de fallo para todo el conjunto. Si ese disco falla entonces, se perderán todos losdatos del conjunto completo. Como en el caso del RAID 0+1, si un disco que ha fallado no sereemplaza, entonces un solo error de medio irrecuperable que ocurra en el disco espejadoresultaría en pérdida de datos.

Debido a estos mayores riesgos del RAID 1+0, muchos entornos empresariales críticosestán empezando a evaluar configuraciones RAID más tolerantes a fallos que añaden unmecanismo de paridad subyacente. Entre los más prometedores están los enfoques híbridoscomo el RAID 0+1+5 (espejo sobre paridad única) o RAID 0+1+6 (espejo sobre paridaddual).

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.

9.5.3 RAID 30

El RAID 30 o división con conjunto de paridad dedicado es una combinación de unRAID 3 y un RAID 0. El RAID 30 proporciona tasas de transferencia elevadas combinadascon una alta fiabilidad a cambio de un coste de implementación muy alto. La mejor forma deconstruir un RAID 30 es combinar dos conjuntos RAID 3 con los datos divididos en ambosconjuntos. El RAID 30 trocea los datos en bloques más pequeños y los divide en cadaconjunto RAID 3, que a su vez lo divide en trozos aún menores, calcula la paridad aplicandoun XOR a cada uno y los escribe en todos los discos del conjunto salvo en uno, donde sealmacena la información de paridad. El tamaño de cada bloque se decide en el momento deconstruir el RAID.

Página.- 325

Fig 132: Esquema de RAID 10

Page 328: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

El RAID 30 permite que falle un disco de cada conjunto RAID 3. Hasta que estosdiscos que fallaron sean reemplazados, los otros discos de cada conjunto que sufrió el falloson puntos únicos de fallo para el conjunto RAID 30 completo. En otras palabras, si alguno deellos 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.

9.5.4 RAID 100

Un RAID 100 (RAID 10+0) es una división de conjuntos RAID 10. El RAID 100 esun ejemplo de «RAID cuadriculado», un RAID en el que conjuntos divididos son a su vezdivididos conjuntamente de nuevo.

Todos los discos menos uno podrían fallar en cada RAID 1 sin perder datos. Sinembargo, el disco restante de un RAID 1 se convierte así en un punto único de fallo para elconjunto degradado. A menudo el nivel superior de división se hace por software. Algunosvendedores 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ónde los puntos calientes de riesgo en el conjunto. Por estas razones, el RAID 100 es a menudola mejor elección para bases de datos muy grandes, donde el conjunto software subyacentelimita la cantidad de discos físicos permitidos en cada conjunto estándar. Implementar nivelesRAID anidados permite eliminar virtualmente el límite de unidades físicas en un únicovolumen lógico.

9.5.5 RAID 50

Un RAID 50 (RAID 5+0) combina la división a nivel de bloques de un RAID 0 con laparidad distribuida de un RAID 5, siendo pues un conjunto RAID 0 dividido de elementosRAID 5.

Página.- 326

Fig 133: Esquema de RAID 30

Page 329: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

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 enun punto único de fallo para todo el conjunto. Si uno falla, todos los datos del conjunto globalse pierden. El tiempo necesario para recuperar (detectar y responder al fallo de disco yreconstruir el conjunto sobre el nuevo disco) representa un periodo de vulnerabilidad delconjunto 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 mayorcapacidad y eficiencia de almacenamiento, pero sólo puede tolerar un máximo de tres fallospotenciales de disco. Debido a que la fiabilidad del sistema depende del rápido reemplazo delos discos averiados para que el conjunto pueda reconstruirse, es común construir conjuntosRAID 5 de seis discos con un disco de reserva en línea (hot spare) que permite empezar deinmediato la reconstrucción en caso de fallo del conjunto. Esto no soluciona el problema deque el conjunto sufre un estrés máximo durante la reconstrucción dado que es necesario leercada bit, justo cuando es más vulnerable. Una configuración de siete conjuntos RAID 5 detres discos cada uno puede tolerar hasta siete fallos de disco pero tiene menor capacidad yeficiencia de almacenamiento.

El RAID 50 mejora el rendimiento del RAID 5, especialmente en escritura, yproporciona mejor tolerancia a fallos que un nivel RAID único. Este nivel se recomienda paraaplicaciones que necesitan gran tolerancia a fallos, capacidad y rendimiento de búsquedaaleatoria.

A medida que el número de unidades del conjunto RAID 50 crece y la capacidad delos 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 laespecificación idealizada, algunas compañías han desarrollado implementaciones RAIDcompletamente propietarias que difieren sustancialmente de todas las demás.

9.6.1 Paridad doble

Una ampliación frecuente a los niveles RAID existentes es la paridad doble, a vecesimplementada y conocida como paridad diagonal. Como en el RAID 6, hay dos conjuntos deinformación de chequeo de paridad, pero a diferencia de aquél, el segundo conjunto no es otroconjunto de puntos calculado sobre un síndrome polinomial diferente para los mismos gruposde bloques de datos, sino que se calcula la paridad extra a partir de un grupo diferente debloques de datos. Por ejemplo, sobre el gráfico tanto el RAID 5 como el RAID 6 calcularíanla paridad sobre todos los bloques de la letra A para generar uno o dos bloques de paridad.

Página.- 327

Page 330: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

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 bloquesde la letra A y un grupo permutado de bloques.

Sobre el esquema de la figura, los bloques Q son los de la paridad doble. El bloque Q2se calcularía como A2 xor B3 'xor P3, mientras el bloque Q3 se calcularía como A3 xor P2xor C1 y el Q1 sería A1 xor B2 xor C3. Debido a que los bloques de paridad doble sedistribuyen correctamente, es posible reconstruir dos discos de datos que fallen medianterecuperación iterativa. Por ejemplo, B2 podría recuperarse sin usar ninguno de los bloque x1ni x2 mediante el cálculo de B3 xor P3 xor Q2 = A2, luego A2 xor A3 xor P1 = A1, yfinalmente A1 xor C3 xor Q1 = B2.

No es recomendable que el sistema de paridad doble funcione en modo degradadodebido a su bajo rendimiento.

9.6.2 RAID 1.5

RAID 1.5 es un nivel RAID propietario de HighPoint a veces incorrectamentedenominado RAID 15. Por la poca información disponible, parece ser una implementacióncorrecta de un RAID 1. Cuando se lee, los datos se recuperan de ambos discossimultáneamente y la mayoría del trabajo se hace en hardware en lugar de en el controladorsoftware.

9.6.3 RAID 7

RAID 7 es una marca registrada de Storage Computer Corporation, que añade cachés aRAID 3 o RAID 4 para mejorar el rendimiento.

Página.- 328

Fig 134: Esquema de RAID de paridad doble

Page 331: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

9.6.4 RAID S o RAID de paridad

RAID S es un sistema RAID de paridad distribuida propietario de EMC Corporationusado en sus sistemas de almacenamiento Symmetrix. Cada volumen reside en un único discofísico, y se combinan arbitrariamente varios volúmenes para el cálculo de paridad. EMCllamaba 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 unRAID 5 estándar para el Symmetrix DMX.

9.6.5 Matrix RAID

Matrix RAID (matriz RAID) es una característica que apareció por vez primera en laBIOS 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ñode cada uno de ellos a diferentes niveles de RAID. Así, por ejemplo, sobre 4 discos de un totalde 600GB, se pueden usar 200 en raid 0, 200 en raid 10 y 200 en raid 5. Actualmente, lamayoría de los otros productos RAID BIOS de gama baja sólo permiten que un discoparticipen en un único conjunto.

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 almacenarredundantemente y una zona más rápida (la sección RAID 0) para el sistema operativo,aplicaciones, etcétera.

9.6.6 Linux MD RAID 10

La controladora RAID software del kernel de Linux, llamada md (multiple disk, discomúltiple) puede ser usada para construir un conjunto RAID 1+0 clásico, pero también permiteun único nivel RAID 10 con algunas extensiones interesantes.

Página.- 329

Fig 135: Esquema de matrix RAID

Page 332: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

En particular, soporta un espejado de k bloques en n unidades cuando k no es divisiblepor n. Esto se hace repitiendo cada bloque k veces al escribirlo en un conjunto RAID 0subyacente 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 yLVM2.

9.6.7 IBM ServeRAID 1E

La serie de adaptadores IBM ServeRAID soportan un espejado doble de un númeroarbitrario de discos, como se ilustra en la figura.

Esta configuración es tolerante a fallos de unidades no adyacentes. Otros sistemas dealmacenamiento como el StorEdge T3 de Sun soportan también este modo.

9.6.8 RAID Z

El sistema de ficheros ZFS de Sun Microsystems implementa un esquema deredundancia integrado parecido al RAID 5 que se denomina RAID Z. Esta configuración evitael «agujero de escritura» del RAID 5 y la necesidad de la secuencia leer-modificar-escribirpara 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 dealmacenamiento subyacente y puede gestionar el espacio adicional cuando lo necesita.

Página.- 330

Fig 136: Esquema de ServeRAID 1E

Page 333: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

9.7 Posibilidades de RAID

9.7.1 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 quese realice una restauración costosa en tiempo desde una cinta, DVD o algún otromedio de respaldo lento, un RAID permite que los datos se recuperen en un disco dereemplazo a partir de los restantes discos del conjunto, mientras al mismo tiempopermanece disponible para los usuarios en un modo degradado. Esto es muy valoradopor las empresas, ya que el tiempo de no disponibilidad suele tener gravesrepercusiones. Para usuarios domésticos, puede permitir el ahorro del tiempo derestauración de volúmenes grandes, que requerirían varios DVD o cintas para lascopias de seguridad.

– RAID puede mejorar el rendimiento de ciertas aplicaciones. Los niveles RAID 0, 5 y 6usan variantes de división (striping) de datos, lo que permite que varios discosatiendan simultáneamente las operaciones de lectura lineales, aumentando la tasa detransferencia sostenida. Las aplicaciones de escritorio que trabajan con ficherosgrandes, como la edición de vídeo e imágenes, se benefician de esta mejora. Tambiénes útil para las operaciones de copia de respaldo de disco a disco. Además, si se usa unRAID 1 o un RAID basado en división con un tamaño de bloque lo suficientementegrande se logran mejoras de rendimiento para patrones de acceso que impliquemúltiples lecturas simultáneas (por ejemplo, bases de datos multiusuario).

9.7.2 Lo que RAID no puede hacer

– RAID no protege los datos. Un conjunto RAID tiene un sistema de ficheros, lo quesupone un punto único de fallo al ser vulnerable a una amplia variedad de riesgosaparte del fallo físico de disco, por lo que RAID no evita la pérdida de datos por estascausas. 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 fallofísico en otro componente del sistema afecten a los datos.

– RAID no simplifica la recuperación de un desastre. Cuando se trabaja con un solodisco, éste es accesible normalmente mediante un controlador ATA o SCSI incluido enla mayoría de los sistemas operativos. Sin embargo, las controladoras RAID necesitancontroladores software específicos. Las herramientas de recuperación que trabajan condiscos simples en controladoras genéricas necesitarán controladores especiales paraacceder a los datos de los conjuntos RAID. Si estas herramientas no los soportan, losdatos serán inaccesibles para ellas.

Página.- 331

Page 334: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

– RAID no mejora el rendimiento de todas las aplicaciones. Esto resulta especialmentecierto en las configuraciones típicas de escritorio. La mayoría de aplicaciones deescritorio y videojuegos hacen énfasis en la estrategia de buffering y los tiempos debúsqueda de los discos. Una mayor tasa de transferencia sostenida supone pocobeneficio para los usuarios de estas aplicaciones, al ser la mayoría de los ficheros a losque se accede muy pequeños. La división de discos de un RAID 0 mejora elrendimiento de transferencia lineal pero no lo demás, lo que hace que la mayoría delas 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 dedos 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, esrelativamente fácil trasladar el disco a un sistema nuevo: basta con conectarlo, sicuenta con la misma interfaz. Con un RAID no es tan sencillo: la BIOS RAID debeser capaz de leer los metadatos de los miembros del conjunto para reconocerloadecuadamente y hacerlo disponible al sistema operativo. Dado que los distintosfabricantes de controladoras RAID usan diferentes formatos de metadatos (inclusocontroladoras de un mismo fabricante son incompatibles si corresponden a seriesdiferentes) es virtualmente imposible mover un conjunto RAID a una controladoradiferente, por lo que suele ser necesario mover también la controladora. Esto resultaimposible en aquellos sistemas donde está integrada en la placa base. Esta limitaciónpuede 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 Ubuntu. El paquete mdadm

La antigua colección de utilidades para RAD raidtools y raidtools 2 ha quedado endesuso 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 unestándar de gestión simple y robusta de RAID's por software.

9.8.1 Instalación y carga de mdadm

En principio, el paquete mdadm se instala por defecto. Si no se encuentra instaladopuede 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.- 332

Page 335: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Si el módulo raid correspondiente al nivel RAID con el que se pretende trabajar no seencuentra cargado puede cargarse con la instrucción correspondiente, que será similar aalguna de las siguientes:

sudo modprobe -l raid1 ósudo modprobe -l raid0 ósudo modprobe -l ….

9.8.2 Crear un RAID

Este apartado se desarrolla tomando como caso concreto y práctico la creación de unRAID 5 con 4 particiones sobre un pen drive. El procedimiento para crear otro RAID sobrediscos duros sería análogo. Los pasos previos a la creación del RAID pueden ser:

1. Para no tener problemas con los permisos ejecutar la instrucción “su root” que otorgaal usuario (usprueba01) los privilegios de root.

2. Comprobar que mdadm se encuentra instalado.

3. Compruebar si se encuentra instalado el módulo raid5 mediante la instrucción“modprobe -l raid*”:

Una vez realizadas las comprobaciones iniciales deben prepararse las particiones autilizar en el RAID, independientemente de que cada partición ocupe o no la capacidadcompleta del disco. Por lo general las particiones que componen el RAID ocupancompletamente 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 estuvierainstalado 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 realizarcon gparted a través de la opción “Partición – Gestionar flags” y marcando el cuadrode verificación “raid”. Esta operación no es obligatoria pero si recomendable porqueayuda a distinguir las particiones que forman parte de un RAID de las que no.

Página.- 333

Fig 137: Resultado de "modprobe -l raid*"

Page 336: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

El resultado será similar al de la figura.

Puede comprobarse el resultado con la instrucción “fdisk -l” o “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 existealgún RAID activo mostrando el contenido del fichero /proc/mdstat, es decir,realizando la instrucción “cat /proc/mdstat”.

Página.- 334

Fig 138: Pen drive con cuatro particiones para el RAID

Fig 139: Instrucción "fdisk -l /dev/sdb"

Fig 140: Instrucción "cat /proc/mdstat"

Page 337: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Así se comprueba que no hay otros RAID activos.

7. Para crear el RAID se utilizan las instrucciones mknod y mdadm. mknod para crearficheros especiales, en este caso un dispositivo de bloques y mdadm para administrar,en este caso crear, dispositivos RAID (arrays):

mknod /dev/md0 b 9 0

mdadm --create /dev/md0 --level=raid5 --raid-devices=4 /dev/sdb1 /dev/sdb2 /dev/sdb3 /dev/sdb4

El sistema responderá con el mensaje: “mdadm: array /dev/md0 started.”.

El significado de las opciones de la instrucción mknod es el siguiente:

“/dev/md0”.- es el nombre del nuevo dispositivo (fichero especial).

“b” indica que es un fichero especial de bloques.

“9” indica el número mas alto de dispositivo que se podrá utilizar (/dev/md9).

“0” indica el número más bajo de dispositivo que se podrá utilizar (/dev/md0).

El significado de las opciones de la instrucción mdadm es el siguiente:

“--create /dev/md0”.- permite indicar el mdn sobre el que se va a crear el RAID.

“--level=raid5”.- especifica el tipo de RAID. Los valores válidos son: linear, raid0, 0stripe, raid1, 1, mirror, raid4, 4, raid5, 5, raid6, 6, multipath, mp, fautly. Sesobreentiende que algunos de ellos son sinónimos, como “raid5” y “5”.

“--raid-devices=4 /dev/sdb1 ...”.- para indicar el número de particiones (no de discos)que componen el RAID y sus nombres.

Otras opciones útiles de esta instrucción son:

--verbose.- muestra más información sobre el proceso que se está ejecutando.

--chunk=n.- donde n indica la capacidad en Kb. de cada bloque de información, quepor defecto es 64. Por ejemplo, “--chunk=32” establecería que los bloques sean de 32Kb. Antes de decidir el tamaño de los bloques es recomendable leer el apartado“Factores de optimización del sistema de archivos en un RAID” que se encuentra másadelante.

Página.- 335

Page 338: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

--parity= .- establece el algoritmo de paridad para RAID 5. Las opciones son: left-asymetric, left-symetric, right-asymetric y right-symetric (la, ls, ra y rs); por defectotoma left-symetric. Ejemplo: --parity=right-asymetric. Esta opción dispone deparámetros avanzados.

La ejecución de esta instrucción puede durar varias horas dependiendo de la capacidadde las particiones y de la potencia del equipo y de sus discos.

Puede visualizarse en cualquier momento el estado del proceso en el fichero/proc/mdstat (cat /proc/mdstat), cuyo resultado será similar al de la figura:

donde [4/3] [UUU_] indica el numero de discos que está activo y correcto en estemomento. Durante el proceso de creación pueden aparecer discos incorrectos y quedeberán aparecer como correctos al finalizar la operación.

Al finalizar, si se muestra el fichero /proc/mdstat, deberá aparecer algo similar a lo dela figura:

8. Una vez creado el volumen RAID debe ser formateado para crear el sistema deficheros. Por ejemplo, para un sistema de tipo ext3 se usará:

mkfs.ext3 /dev/mdo

Si el sistema de ficheros es reiserfs la instrucción sería: “mkfs.reiserfs /dev/md0”.

9. A continuación se monta el volumen RAID creado.

En primer lugar se debe crear el directorio donde se montará el volumen, y asignarlelos permisos adecuados, por ejemplo:

mkdir /media/raid5chmod a+w /media/raid5

Página.- 336

Fig 141: Instrucción "cat /proc/mdstat"

Fig 142: Instrucción "cat /proc/mdstat"

Page 339: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Y a continuación montar el volumen:

mount -t ext3 /dev/md0 /media/raid5

También puede montarse el volumen añadiendo al fichero /etc/fstab la línea:

/dev/md0 /media/raid5 ext3 defaults,user 0 0

Ahora se montará el volumen con la instrucción:

mount /media/raid5

o bien reiniciando el sistema y Ubuntu montará automáticamente el volumen en elinicio.

9.8.3 Monitorización del estado de un RAID y sus discos (particiones)

Para ver el estado actual de los discos y unidades RAID:

cat /proc/mdstat

Para mostrar más detalles sobre el RAID:

mdadm --query /dev/md0mdadm --detail /dev/md0

Más detalles de los discos:

mdadm --query /dev/sdb1mdadm --examine /dev/sdb1

9.8.4 Administración de un RAID y de sus discos (particiones)

Algunas de las instrucciones más útiles para administrar un volumen RAID se recogena continuación.

Para desactivar una tabla (array o volumen) y liberar los recursos:

mdadm --stop /dev/md0

Para establecer un disco, por ejemplo sdb4, como defectuoso:

mdadm --fail /dev/md0 /dev/sdb4

Página.- 337

Page 340: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Esta operación no se debe realizar con un RAID0 o RAID linear pues podríanperderse los datos.

Para quitar un disco defectuoso de un RAID:

mdadm --remove /dev/md0 /dev/sdb4

Para limpiar cualquier información previa de un RAID, por ejemplo para reutilizar undisco de otro equipo o de otro RAID:

mdadm --zero-superblock /dev/sdb4

Para añadir un disco (sdb5) a un RAID (/dev/md0):

mdadm --add /dev/md0 /dev/sdb5

Para añadir soporte “bitmap” a un RAID:

mdadm --grow /dev/mdX --bitmap=none

En cualquier momento de la vida del equipo puede ocurrir un fallo del disco. Cuandoesto ocurra, al usar RAID por software, el sistema operativo situará al array en un estadoconocido como estado degradado.

Si la matriz pasa a estar degradada, debido a una posible corrupción de datos, elsistema operativo de forma predeterminada arrancará initramfs pasados treinta segundos.Cuando initramfs haya arrancado, aparecera un indicador durante quince segundossolicitándole la opción de continuar arrancando el sistema, o intentar una recuperaciónmanual. El arrancar al indicador de initramfs puede o no ser el comportamiento deseado,especialmente si la máquina está en una ubicación remota. El arranque de un array degradadopuede configurarse de varias formas:

– Puede usar la utilidad dpkg-reconfigure para configurar el comportamientopredeterminado, y durante el proceso se le solicitarán opciones adicionalesrelacionadas con el array (como monitorización, correos de alerta, etc.). Parareconfigurar mdadm, puede utilizarse la instrucción:

dpkg-reconfigure mdadm

– El proceso dpkg-reconfigure cambiará el archivo de configuración /etc/initramfs-tools/conf.d/mdadm. El archivo tiene la ventaja de poder pre-configurar elcomportamiento del sistema, y además puede editarse a mano:

BOOT_DEGRADED=true

El archivo de configuración puede sobrescribirse usando un argumento del núcleo.

Página.- 338

Page 341: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

– Usando un argumento del núcleo permitirá al sistema arrancar una matriz degradada:

• Cuando se arranca el servidor, pulse ESC para abrir el menú Grub.• Pulse "e" para editar las opciones de órdenes de su núcleo.• Pulse la flecha ABAJO para resaltar la línea del núcleo.• Pulse la tecla "e" de nuevo para editar la línea del núcleo.• Añadir "bootdegraded=true" (sin comillas) al final de la línea.• Pulse "INTRO".• Finalmente, pulse "b" para arrancar el sistema.

Una vez que el sistema haya arrancado, podrá repararse la matriz o copiar los datosimportantes a otra máquina en caso de haber ocurrido un fallo grave de hardware.

9.8.5 Factores de optimización del sistema de archivos de un RAID

Algunos de los factores que pueden influir de forma decisiva en el rendimiento de unvolumen RAID son:

– El tamaño del sector (chunk) o bloque de información del raid.

– El tamaño del sector (block) del sistema de archivos.

– El tipo de sistema de archivos utilizado.

9.8.6 Notas sobre el fichero de configuración

Uno de los ficheros de configuración de mdadm es /etc/mdadm/mdadm.conf.

Dos de los parámetros de configuración más importantes son:

DEVICE /dev/sd[abcd]1ARRAY /dev/md0 devices=/dev/sda1, /dev/sdb1, /dev/sdc1, /dev/sdd1

En este ejemplo, la línea DEVICE utiliza globbing tradicional para los nombres dearchivos (consulte la página man glob(7) para más información) para definir los dispositivosSCSI /dev/sda1, /dev/sdb1, /dev/sdc1 y /dev/sdd1.

La línea ARRAY define un dispositivo RAID (/dev/md0) que comprende losdispositivos SCSI definidos por la línea DEVICE.

Página.- 339

Page 342: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

9.9 Actividades

1. Sobre un pen drive crear un volumen RAID 1 y comprobar que su capacidad esaproximadamente la mitad. Marcar una partición como defectuosa, sacarla del RAID,quitarle la información y volver a incluirla en el RAID. Comprobar que suinformación se recompone automáticamente.

2. Probar la práctica anterior usando un RAID 4, eliminando y volviendo a incorporaruna partición al volumen.

3. Para simular la recuperación de la información mediante un disco de paridad utilizar tres bloques de información de 32 bits cada bloque. Llenar con bloques 1º y 2º con cualquier secuencia de unos y ceros y el 3º con el resultado de realizar la operación XOR con los 2 primeros. Comprobar que si se pierde la información de cualquiera de ellos puede recuperarse un XOR de los dos restantes.

4. Buscar si existe software para entorno gráfico (gnome) de administración de RAID's.

Página.- 340

Page 343: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

10 COPIAS DE SEGURIDAD

10.1 Aspectos didácticos

Objetivos:

– Conocer diferentes herramientas de copia de seguridad y recuperación de datos asícomo los diferentes tipos de copia de seguridad que pueden soportar los sistemasoperativos.

– Realizar diferentes tipos de copias con varios paquetes y las recuperacionesposteriores correspondientes.

– Conocer los fundamentos de funcionamiento de Bácula y sus ficheros deconfiguración.

– Aplicar cuotas de disco para varios usuarios y grupos.

Documentación.

La documentación de este tema se ha elaborado consultando las fuentes:

– Wikipedia.– Manual de tar en www.gnu.org/software/tar/manual/index.html– Guía práctica de Bacula de Matias Banchoff en Internet.

Resumen.

En este tema se hace una revisión de los paquetes que permiten realizar copia yrestauración de datos profundizando en una selección de los más significativos: tar, Keep,Sbackup y Bacula. Se explican los diferentes tipos de copia de seguridad y sus característicasy contiene algunas prácticas guiadas y un ejemplo del complejo y potente sistema de copiaBacula. Finalmente trata el control y restricciones de uso de espacio de disco que puedenaplicarse a los usuarios y grupos mediante el uso de cuotas de disco.

Temporización: 18 horas.

Página.- 341

Page 344: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

10.2 Introducción

Las copias de seguridad de los datos previenen la pérdida de los mismos. Soninfinidad las causas que pueden conducir a la pérdida de los datos: errores humanos, averíasde los dispositivos, virus, borrados malintencionados, etc. etc.

En Linux existe gran cantidad de software que permite realizar las operaciones decopia de seguridad (backup o respaldo) y restauración de la información; desde paquetes muysencillos para uso doméstico (p.e. Keep) a software complejo diseñado para sistemas a granescala (p.e. Bácula), pasando por niveles intermedios (p.e. Sbackup). Buscando con el Gestorde paquetes (Synaptic) la palabra “backup” aparecerán entre otros: backupninja, backup2l,backuppc, cedar-backup2, storebackup, hdup, vbackup, dirvish, sbackup, keep, bkp,faubackup, afbackup, bacula, cdbackup, cdrw-taper, boxbackup, mylvmbackup, dar, amanda,backup-manager, dump, burn, rdiff-backup, slbackup, bootcd-backup, subversion-tools,pdumpfs, flexbackup, etc.

Una selección de paquetes, que permita realizar los tipos de respaldo más usualespuede ser: Backup Manager, Bacula, Amanda y Afbackup. En este tema se describirán elcomando tar y los paquetes Keep, Sbackup y Bacula.

Hasta hace unos años años el medio más utilizado para albergar las copias era la cintamagnética. En la actualidad la cinta ha sido desplazada por los discos duros y suscaracterísticas: incremento espectacular de su capacidad, gran fiabilidad, abaratamiento, fácilinstalación, etc. A nivel doméstico, la aparición del DVD, las memorias USB y los discosUSB han simplificado la operación de backup.

10.3 Tipos de copia de seguridad

Los diferentes sistemas operativos ofrecen diversas posibilidades a la hora de realizarcopias de seguridad. Dependiendo del equipo donde se efectúa la copia tenemos:

– Local.- la copia de seguridad se realiza en el mismo equipo en el que se encuentra lainformación. Conlleva la participación de más usuarios y más dispositivos dealmacenamiento, lo que conduce a un incremento de las posibilidades de error,descuidos, etc. en la realización de la operación.

– En red.- la copia de seguridad se realiza en un equipo de la red. Debe existir unaplanificación donde se concretará el usuario o usuarios responsables, los datos que secopiarán de cada equipo de la red, los medios utilizados, la frecuencia, el horario, eltipo de copias, etc. El proceso está más organizado, la responsabilidad de la operaciónrecae en unos usuarios más concretos y, por contra, se incrementa el tráfico de datosen la red.

Página.- 342

Page 345: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Antes de describir los diferentes tipos de copia de seguridad que existen atendiendo ala frecuencia y a los datos que intervienen, es conveniente conocer que los sistemas deficheros pueden incluir para cada archivo información relativa a la fecha y hora de la últimamodificación y un indicador (un bit) que permite conocer si el fichero ha sido modificadodesde la última vez que se realizó copia de seguridad del mismo. Este indicador permitirá, sise desea, realizar copia únicamente de los ficheros que han sido modificados desde la últimaoperación de copia realizada.

Tipos de copia atendiendo a la frecuencia y datos procesados:

– Completa inicializando el indicador.- se realiza una copia de todos los ficheros ycarpetas seleccionados inicializando el indicador o bit de copia (a valor 0 por ejemplo)de cada uno de los ficheros y carpetas copiadas. Cuando se creen o modifiquen losficheros el indicador se pondrá a valor 1.

– Completa sin inicializar el indicador.- se realiza una copia de todos los ficheros ycarpetas seleccionados sin cambiar el valor del indicador.

– Incremental o progresiva.- se realiza una copia de los ficheros y carpetasseleccionados que se han creado o modificado desde la última copia de seguridad, esdecir, solamente los que tienen el indicador a valor 1. También inicializa el indicadorde los ficheros que se copian poniendo su valor a 0.

– Diferencial.- igual que la progresiva pero sin inicializar el indicador.

– Diaria.- se realiza una copia de los ficheros y carpetas creados o modificados a lolargo del día. No inicializa el indicador de copia.

El indicador de copia no es igual para todos los sistemas de archivos, unos puedenutilizar un método simple como un bit al que asignan un valor determinado, otros uno máscomplejo como un dato de cierta longitud calculado haciendo una operación con el contenidodel fichero de tal forma que dicho dato cambiará si se modifica el fichero y que será utilizadoy registrado por el programa de copia, etc.

Ubuntu guarda información sobre los ficheros copiados en ficheros de control (conmetadatos) que se crean al realizar las copias de seguridad haciendo uso de ciertas opciones yque permiten posteriormente comprobar si un fichero ha sido modificado desde que se realizóla copia. Por ejemplo, la instrucción “tar -c -v -f copia.0.tar -g metadatos f*” creará (-c)una copia de seguridad incremental de los ficheros que empiecen por “f”, informando (-v) delos ficheros afectados, en el archivo de copia “copia.0.tar” dejando información que lepermita posteriormente comprobar las modificaciones en el fichero “metadatos”.

Página.- 343

Page 346: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

10.4 Planificación de las copias de seguridad y recuperaciones

La realización de las copias de seguridad conlleva su planificación para garantizar larecuperación de los datos que se pierdan. En la planificación deberá contemplarse:

– Qué usuarios realizarán tareas de copia y restauración.- todos los usuarios podránhacer copia de sus ficheros, pero para realizar copias de los datos de los demásusuarios deberán tener los permisos adecuados para poder leer los ficheros a copiar.Algunos paquetes, durante su instalación, generan un grupo para que los usuarios quepertenezcan al mismo tengan la capacidad de poder realizar copias de seguridad de lainformación de otros usuarios.

– Qué ficheros y directorios se copiarán.- No hay que olvidar que debe hacerse unacopia de seguridad de los ficheros con los que ya no se va a trabajar. De forma generalpueden seguirse las siguientes indicaciones:

• Realizar siempre copia de seguridad de los ficheros importantes para eldesarrollo de la actividad de la empresa y de los datos de configuración yusuarios del sistema.

• Realizar periódicamente copia de seguridad de los archivos menos importantesy de los que cambian ocasionalmente.

• No realizar copia de seguridad de los archivos temporales.

– Si se realizarán copias en un equipo de la red o se harán de forma local.- esta decisióndependerá de cómo se encuentren distribuidos los datos en los equipos de la red. Lasventajas de realizar la copia en un equipo de la red son:

• Permite realizar copias de toda la red.• Requiere menos dispositivos de copia.• Menos dispositivos a administrar.• Un único usuario y confiable puede realizar la copia.

Como inconvenientes:

• Hay que copiar los archivos importantes en los servidores.• Aumenta el tráfico en la red.• Requiere más tiempo de diseño y planificación.

Página.- 344

Page 347: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

La realización de copias de seguridad a través de la red conlleva operacionesadicionales preliminares:

• Establecer el acceso al equipo remoto.- tanto si es un programa cliente el queenvía los datos al servidor de copias, como si es el servidor el que los solicitaal cliente, deberá establecerse la comunicación entre ambos y los accesosadecuados mediante el protocolo oportuno (NFS, SMB, ...). En MaX estaoperación puede consistir en que el servidor, a través de NFS, monte lascarpetas del cliente a copiar. Deberán establecerse los permisos adecuados parael usuario que realice las copias.

• Notificar a los usuarios afectados el cierre de aplicaciones.- hay que tener encuenta si el programa que realiza las copias de seguridad requiere que losficheros a copiar estén cerrados, lo que podría implicar el cierre de algunasaplicaciones para la correcta realización de la operación.

– La frecuencia de realización de los diferentes tipos de copia.- dependerá de laimportancia de los datos y de la frecuencia con que éstos cambien.

– Los dispositivos de copia a utilizar.- se tendrá en cuenta su capacidad, si sonreutilizables, el ciclo de vida útil, el coste, la fiabilidad y la complejidad de uso.

– Las medidas de seguridad y confidencialidad a adoptar con las copias.- destinadas agarantizar el almacenamiento en condiciones físicas óptimas (temperatura, humedad,polvo, …), la privacidad en cuanto a que estén disponibles únicamente a las personasresponsables y la encriptación de los datos para que la recuperación solamente puedaser realizada por los usuarios adecuados.

– La rotación de los dispositivos de almacenamiento de las copias.- para permitir lareutilización y reducir el coste de las copias. Algunas copias pueden no someterse arotaciones como pueden ser copias anuales de resultados, que se quieran mantenerpara posibles consultas posteriores. Al planificar la rotación es muy importanteconsiderar que durante la realización de la copia de seguridad puede producirse unproblema de pérdida de datos y que tiene que poder recuperarse desde otro dispositivo.

– El etiquetado.- es muy importante, independientemente de los dispositivos dealmacenamiento utilizados, seguir un método claro en la nomenclatura de las copiasque permita su perfecta diferenciación y evite errores posteriores en la recuperación.El etiquetado puede consistir en etiquetas pegadas a las cintas, nombres asignados alas carpetas que contienen las copias en un disco, nombres de los ficheros de copia, …

– El momento en que se deben realizar las copias.- que será aquel en el que la red y losequipos tengan menor carga de trabajo y cuando menor sea la interferencia con eltrabajo habitual de los usuarios. Es muy normal que las copias se realicen fuera delhorario de trabajo de los usuarios de los equipos.

Página.- 345

Page 348: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Los procesos de copia de seguridad pueden programarse para que no requieran laintervención directa de un usuario. Los programas de copia incorporan entre susopciones la realización de las copias los días y a las horas oportunas.

Pueden combinarse varios tipos de copia de seguridad. Unos tipos requieren mástiempo para realizar la copia y menos para la recuperación, otros menos para la copia y máspara la recuperación y otros más para ambas operaciones. Algunos ejemplos pueden ser:

LUNES MARTES MIERCOLES JUEVES VIERNES

Ejemplo 1 CI Df Df Df Df

Ejemplo 2 CI P P P P

Ejemplo 3 CI Df Df y C Df Df

CI=Completa inicializando indicador. C=Completa sin inicializar indicador.P=Progresiva. Df=Diferencial. Di=Diaria.

En el ejemplo 1 los lunes se realiza una copia de seguridad completa con inicializacióndel indicador de copia y los demás días copias diferenciales, que no inicializan el indicador y,por lo tanto, todas copiarán las modificaciones que se hayan producido desde la copia dellunes. Si los datos se pierden el jueves habrá que utilizar las copias del lunes (completa) y delmiércoles (diferencial). Con esta estrategia se invertirá menos tiempo en copiar que si todoslos días se hiciera copia completa, pero más tiempo que en el ejemplo 2 donde las copiasdiferenciales se han sustituido por progresivas. Los tiempos para la recuperación se invierten.En cuanto a la rotación de dispositivos, pueden utilizarse dos juegos de cinco dispositivoscada uno, uno para una semana y otro para la siguiente. Puede considerarse la conveniencia dearchivar, sacando de la rotación, alguna de las copias completas.

En el ejemplo 2 los lunes se hace una copia de seguridad completa con inicializacióndel indicador de copia y los demás días copias progresivas, que vuelven a inicializar elindicador y, por lo tanto, solamente copiarán las modificaciones producidas desde la copia deldía anterior. Si los datos se pierden el jueves habrá que utilizar todas las copias desde el lunes.Con esta estrategia se invierte menos tiempo en realizar las copias y más en lasrestauraciones. En cuanto a la rotación de dispositivos puede hacerse de forma similar alejemplo 1.

El ejemplo 3 es similar al 1. El miércoles se hace, además de una copia diferencial,una completa sin inicialización del indicador para no interferir con el proceso de copiasdiferenciales diarias. La copia completa del miércoles puede resultar muy útil cuando senecesita enviar los datos a alguien. La rotación de los dispositivos puede hacerse de formasimilar a los ejemplos anteriores incluyendo uno más para copia completa de los miércoles. Sialguno de los dispositivos es sometido a mayor actividad por el tipo de copia que alberga,deberá ser rotado para que el desgaste sea lo más uniforme posible.

Página.- 346

Page 349: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

10.5 Restauración

El procedimiento y la estrategia de recuperación de los datos depende de los siguientesfactores:

– La estrategia de copia de seguridad.- contempla, condiciona y determina cómo deberealizarse la recuperación de los datos. Si, por ejemplo, se hacen copias completastodos los días, la recuperación se realizará desde la última copia. Debe tenerse encuenta que la rotación de los dispositivos debe permitir la recuperación de los datos encualquier momento.

– La documentación y registro de cada copia de seguridad.- permitirán encontrar másrápidamente los ficheros y carpetas a restaurar. La recuperación puede simplificarse ono dependiendo de si la información registrada por cada copia es básica, conteniendosolamente datos como el tipo de copia y la fecha y la hora, o si es más completa,incluyendo además información acerca de los ficheros copiados.

– Realización periódica de restauraciones de prueba.- que permiten conocer si losarchivos se copian correctamente. Estas recuperaciones pueden realizarse en carpetasparalelas (nunca en las originales) para comparar su contenido con las originales.

– Registro de las copias en forma de calendario.- que permitirá conocer, en un momentodado, el dispositivo o dispositivos que deben utilizarse para la recuperación. Elregistro debe identificar el tipo de copia y el dispositivo utilizado en cada fecha.

10.6 Programas de copia y restauración

Desde sus inicios, Unix y Linux incorporaban la instrucción tar que permitía realizarcopias de seguridad, restauraciones y compresión de datos de forma eficaz. Posteriormente,sobre todo desde el desarrollo del entorno gráfico, han aparecido gran número de paquetesque permiten realizar estos procesos. En este apartado se describirán someramente Keep,Sbackup y Bacula.

10.6.1 La instrucción tar

Su sintaxis es:

tar -{ A | c | d | -delete | r | t | u | x } [opciones] fich_dir_1 [fichero2]

tar deberá ir seguido de, al menos, una de las opciones que figuran entre llaves, acontinuación el nombre de los ficheros o directorios (se pueden usar comodines) sobre los que

Página.- 347

Page 350: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

operar y, dependiendo de las opciones utilizadas, el nombre del fichero donde dejar losresultados (fichero2). Si fich_dir_1 es un directorio se consideran incluidos los subdirectorios.

El significado de las primeras opciones es el siguiente:

-A Permite añadir a un fichero otro de copia.-c Crea un archivo de copia.-d Busca las diferencias con un archivo de copia.--delete Borra de un archivo de copia.-r Añade ficheros al final de un archivo de copia.-t Muestra los ficheros contenidos en un archivo de copia.-u Realiza una copia progresiva, es decir, solamente copia los ficheros creados o

modificados desde la última copia. Dicho de otra forma, añade ficheros a unarchivo de copia solo si son más recientes que los que se encuentran en elfichero de copia.

-x Recupera archivos desde un fichero de copia.

Otras opciones son:

-f fichero Permite especificar el fichero donde se realizará (o que contiene) lacopia. Esta opción debe ir en último lugar.

-v Muestra el nombre de los ficheros procesados.-vv Muestra información más detallada de los ficheros procesados.-z Comprime o descomprime un fichero (formato gzip).-g fichero Permite realizar copias incrementales. Tiene que utilizarse

conjuntamente con la opción “-c”. El fichero especificado contieneinformación sobre los ficheros para permitir hacer copia únicamente de lasmodificaciones.

-j Comprime con bzip2 el paquete generado.

Para hacer un seguimiento de las opciones más comunes se pueden crear en eldirectorio de trabajo dos carpetas llamadas “original” y “copia” y dentro de la carpeta“original” tres ficheros: “f1”, “f2” y “f3” cuyos contenidos serán, respectivamente:

Este es el contenido de f1Este es el contenido de f2Este es el contenido de f3

Poniendo como directorio activo la carpeta donde se encuentran f1, f2 y f3 (cd/home/usprueba01/prueba/original), la instrucción:

tar -c *

muestra en pantalla el contenido de todos los ficheros del directorio actual. La información decada uno de los archivos se concatena anteponiendo a cada uno de ellos una información decontrol que contiene el nombre del fichero, el usuario propietario, etc.

Página.- 348

Page 351: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Para llevar el resultado de “tar” a un fichero, se puede poner como directorio activo/home/usprueba01/prueba (utilizando la instrucción “cd ..”) y hacer uso de la opción “fnombre_fichero” que permite especificar el fichero donde tar dejará el resultado:

tar -cf copia/fichero.tar original/*

Se puede comprobar con “cat copia/fichero.tar” que se ha creado el fichero“fichero.tar” dentro del directorio “copia” y su contenido es la copia de todos los ficheros deldirectorio “original”, con la información de control al inicio de cada fichero. Si además seutiliza la opción “v”, se visualizará información acerca de los ficheros que se están copiando:

tar -cvf copia/fichero.tar original/*

Si se utilizan dos uves (v) la información mostrada será más completa.

Para ver los ficheros incluidos en un archivo de copia:

tar -tf copia/fichero.tar

Para comprimir el fichero de copia puede utilizarse:

gzip copia/fichero.tar

Con la instrucción “ls -l copia” puede comprobarse que el fichero “fichero.tar” hapasado a llamarse “fichero.tar.gz” y que ocupa menos espacio que antes.

Con la instrucción “gunzip copia/fichero.tar.gz” se descomprime.

La opción “-z” permite comprimir y descomprimir, así, la instrucción “tar -cvzfcopia/fichero.tar.gz original/*” comprime a la vez que realiza la copia de seguridad.

Si lo que se desea es descomprimir a la vez que se recuperan los ficheros a su estadooriginal habrá que utilizar las opciones x y z de tar:

tar -xvzf copia/fichero.tar.gz

Para comprobar que se recuperan los ficheros f1, f2 y f3 desde fichero.tar.gz esconveniente borrarlos de la carpeta “original” antes de ejecutar la instrucción anterior.

Pueden recuperarse solamente algunos de los ficheros que componen la copiaespecificando su nombre. Por ejemplo, para extraer únicamente el fichero f2 habría queutilizar la instrucción:

tar -xvf copia/fichero.tar f2

Página.- 349

Page 352: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

No es necesario incluir la opción “-z” porque tar detecta que la copia está comprimiday en la recuperación descomprime automáticamente.

La opción -u permite realizar copias progresivas de los ficheros nuevos o modificadoscon relación a una copia anterior. Es decir, tar compara la información de cada fichero con laexistente dentro del fichero de copia para detectar si ha habido cambios y en caso afirmativoañade el fichero nuevo o modificado al fichero de copia. Para probar este funcionamiento sepuede proceder de la siguiente forma:

Borrar las copias anteriores: rm copia/fich*Hacer una nueva copia con: tar -cvf copia/fichero.tar original/*Modificar f3 con: ls >> original/f3Hacer la copia progresiva con: tar -uvf copia/fichero.tar original/*Comprobar con “tar -tf copia/fichero.tar” los ficheros copiados.

La opción “-A” se utiliza en escasas ocasiones. Si, por ejemplo, se quiere obtener unfichero llamado “triple” que tenga tres veces el contenido de “fichero.tar”, se puede ejecutartres veces la instrucción:

tar -Af copia/triple copia/fichero.tar

La opción “-d” muestra las diferencias del resultado de la ejecución de tar con unfichero de copia ya existente. Por ejemplo, si se realiza una copia de seguridad con lainstrucción “tar -cvf copia/fichero.tar original/*” y a continuación se modifica el fichero“f3”, la instrucción “tar -df copia/fichero.tar original/*” informa del cambio.

Si el fichero copia/fichero.tar tiene una copia de los ficheros f1 f2 y f3 de la carpetaoriginal, y se desea eliminar del fichero de copia el fichero f2, puede utilizarse la instrucción:

tar -f copia/fichero.tar --delete original/f2

La instrucción “tar -tf copia/fichero.tar” permite comprobarlo.

Para añadir al fichero de copia copia/fichero.tar una copia de seguridad del fichero f2se puede utilizar la instrucción:

tar -rf copia/fichero.tar original/f2

La realización de copias incrementales se efectúa con la opción “-g fich_metadatos”conjuntamente con la opción “-c”. Para que el ejemplo sea más sencillo vamos a utilizar elformato corto:

tar -c -v -f copia/fichero.0.tar -g copia/fich_metdatos original/f*

Página.- 350

Page 353: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

A continuación puede modificarse el fichero original/f2 con la instrucción “ls >>original/f2” y volver a realizar la copia incremental:

tar -c -v -f copia/fichero.1.tar -g copia/fich_metdatos original/f*

En este último caso solamente debe copiarse el fichero “original/f2” que ha sido el quese ha modificado desde la última copia. El fichero “copia/fich_metdatos” contieneinformación sobre los ficheros que permite comprobar los que han sido modificados. Pararecuperar los ficheros se pueden borrar los ficheros originales con “rm original/f?” yejecutando a continuación:

tar -x -v -f copia/fichero.0.tartar -x -v -f copia/fichero.1.tar

Algunas consideraciones importantes sobre este comando:

– En www.gnu.org/software/tar/manual/index.html se encuentra un manual muycompleto.

– La primera opción que se especifique debe ser la que indique la acción a realizar portar. Las demás opciones y nombres de ficheros delimitan la operación a realizar por taro identifican los componentes sobre los que actuar. Por ejemplo, en la instrucción:

“tar -xvf copia/fichero.tar original/f2 original/f3”

la opción “x” identifica la operación de extracción, la “v” hace que tar informe de losficheros que intervienen, “f copia/fichero.tar” identifica el fichero del que se van aextraer y “original/f2” y “original/f3” los ficheros que serán extraidos.

– Existen tres formatos para especificar las opciones de esta instrucción: largo, corto yreducido. El que se ha estado utilizando en este apartado es el reducido. Veamos lamisma instrucción en los tres formatos:

tar --create --verbose --file=copia/fichero.tar original/*tar -c -v -f copia/fichero.tar original/*tar -cvf copia/fichero.tar original/*

– tar generalmente actúa sobre un archivo de copia que es el que se especifica con laopción “-f”. Cuando el formato que se utiliza es el reducido esta opción debe ser laúltima.

Página.- 351

Page 354: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

10.6.2 Keep

Keep es un programa bastante simple de copia y recuperación de datos. Realiza copiasde seguridad incrementales, es decir, solamente copia los ficheros que han cambiado desde laúltima copia. Los ficheros anteriores se comprimen y almacenan en una subcarpeta de lacarpeta destino de la copia, llamada “rdiff-backup-data/increments”. Estas copias,almacenadas durante el tiempo que se especifique al configurar la copia, pueden serrecuperadas en cualquier momento.

Una vez instalado, Keep estará accesible a través del menú Aplicaciones –Herramientas del sistema – Keep.

En su ventana inicial dispone de:

– Un menú en la parte superior con las opciones:

• File.- con las subopciones:

• Restore Backup.- Permite restaurar los ficheros desde un backup realizadocon anterioridad. Dejando unos segundos el cursor sobre la línea quedescribe cada backup programado aparece información acerca deldirectorio origen, el destino, etc. Para continuar hay que seleccionar unbackup y pulsar el botón “Next”. A continuación se elige el directoriodonde se restaurarán los ficheros y la fecha del backup y se pulsa “Finish”.

• Add backup.- Permite programar un nuevo backup. Pide el directorio acopiar permitiendo, en caso de que no se quiera copiar todo el contenidodel directorio, especificar una lista de ficheros a incluir o excluir. Pulsandoel botón “Next” permite especificar la carpeta donde se realizará la copia y

Página.- 352

Fig 143: Programa Keep

Page 355: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

seguidamente varias opciones de copia: cada cuántos días se realizará lacopia, pasados cuántos días se borrarán las copias (o que no se borrennunca), si se comprimirá, si se copiarán los ficheros especiales y una seriede opciones de configuración avanzada. La programación finaliza pulsando“Finish”. En ese momento se realizará una copia y, posteriormente, si elproceso está en ejecución (cargado), con la periodicidad programada.

• Backup now.- Permite realizar en el momento una de las copiasprogramadas, la que se seleccione.

• Edit backup list.- Muestra los backaps programados y permite añadir otrosnuevos y borrar o modificar alguno de los existentes.

• View log.- Muestra el registro de eventos. Cada vez que se realiza unacopia se añade un registro con la fecha, la hora, el éxito o fracaso de lacopia y el directorio copiado.

• Settings.- con las subopciones:

• Check rdiff-backup.- comprueba la versión del paquete rdiff-backupinstalado y que se encarga del control de las copias de seguridadincrementales. Puede obtenerse más información con “man rdiff-backup”.Como se ha comentado anteriormente, el directorio destino contiene lasversiones más actualizadas de los ficheros. Las versiones anteriores einformación de control se almacenan en una subcarpeta de la destino connombre “rdiff-backup-data” y “rdiff-backup-data/increments”.

• Configure backups.- similar a la opción ya comentada “Edit backup list”.

• Configure.- permite configurar el tipo de eventos que se registrarán(backups erróneos y/o correctos) para poder ser consultados posteriormentecon la opción “View log”, y la prioridad del proceso de copia de seguridadincremental. Para consultar los posibles valores a asignar puede consultarsela instrucción nice con “man nice”.

• Help.- dispone de algunas opciones de ayuda.

– Unos botones para realizar las operaciones fundamentales que ocupan el centro de laventana.- permiten el acceso rápido a algunas de las opciones tratadas anteriormente.

– Una línea con información acerca del estado del demonio o proceso.- permite conocersi el proceso se encuentra o no en ejecución. Las copias programadas solamente sellevarán a cabo si el proceso está en ejecución.

– Unos botones que permiten cargar, descargar o recargar el proceso.

Página.- 353

Page 356: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Práctica

Crear dentro del directorio de trabajo del usuario “usprueba01” una carpeta llamada“prueba” con dos subcarpetas: “origen” y “copia”. Dentro de la subcarpeta “origen” crearcuatro ficheros: f1, f2, f3 y f4.

Programar una copia con Keep que copie el contenido de “origen”, con la excepcióndel fichero “f4”, en “copia”.

Una vez que se comprueba que la copia se ha realizado, modificar el fichero “f2”,borrar los ficheros de “origen” y recuperar los ficheros según se encontraban antes demodificar “f2”.

Una forma de proceder puede ser la siguiente:

Abrir un terminal para crear los directorios y ficheros con:

mkdir pruebacd pruebamkdir origenmkdir copiaecho “Contenido de f1” > origen/f1echo “Contenido de f2” > origen/f2echo “Contenido de f3” > origen/f3echo “Contenido de f4” > origen/f4

Para programar el backup lanzar la ejecución de Keep y pulsar el botón “Add directoryto backup” y seleccionar el directorio /home/usprueba01/prueba/origen. Para que no se copieel fichero “f4” hay que marcar el cuadro de verificación “Use inclusión/exclusión list”, pulsaren el botón situado a la derecha de dicho cuadro y en la ventana que aparece seleccionar elfichero, pulsar sobre el botón “Exclude” y en el botón “OK”.

Página.- 354

Fig 144: Inclusión/exclusión de ficheros

Page 357: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Se cerrará la ventana que dará paso a la anterior, en la que hay que pulsar sobre elbotón “Next”. A continuación se selecciona la localización de la copia, que en este caso es lacarpeta /home/usprueba01/prueba/copia y se pulsa sobre “OK” y “Next”.

A continuación se establecen las opciones del backup que para este caso serán:

– Intervalo de backup: 2 dias. - Borrado despues de: 7 dias.– Comprimir. - Excluir ficheros especiales.

Y se pulsa el botón “Finish”.

Para realizar la primera copia basta con pulsar el botón “Backup now” y elegir la copiaprogramada y “OK”.

A continuación modificamos “f2” desde el terminal abierto anteriormente con lainstrucción: echo “ - - MODIFICADO - - ” >> origen/f2

Hacemos otra copia pulsando sobre “Backup now”, eligiendo la copia y “OK”.

A continuación procedemos a comprobar que se han creado los ficheros f1, f2 y f3 enla subcarpeta “copia” con la instrucción “ls copia” y borramos los ficheros originales con lainstrucción “rm origen/*”.

Para restaurar los ficheros (todos menos f4) con Keep hay que pulsar el botón “Restorea backup”, seleccionar el backup programado, se deja sin marcar el cuadro de verificación“Use custom backup directory” porque vamos a utilizar el directorio de recuperaciónprogramado y se pulsa el botón “Next”.

En la ventana de elección del directorio de destino, como se va a utilizar el directorioprogramado (/home/usprueba01/prueba/origen), se deja marcado “Use default directory” y sepulsa “Next”.

Página.- 355

Fig 145: Elección de copia

Page 358: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Finalmente, se elige la copia que se realizó en primer lugar, se pulsa “Finish” y secomprueba:

– Que se han copiado los ficheros f1, f2 y f3 en /home/usprueba01/prueba/origen, perono f4 (ls origen).

– Que el contenido de f2 es el anterior a la modificación (cat origen/f2).

No hay que olvidar que si se desea que las copias de seguridad se realicen de formaautomática cada 2 días, según se ha programado, y sin intervención del usuario, debe quedarcargado el proceso pulsando sobre el botón “Load”.

10.6.3 Sbackup

Una vez instalado el paquete aparecerán dos opciones en el menú Aplicaciones –Sistema – Administración:

– Simple Backup Config.– Simple Backup Restore.

Simple Backup Config permite programar las copias de seguridad. Cuando se lanza suejecución aparece la ventana que solicita la clave de usuario administrador (madrid –cmadrid), para dar paso a la ventana inicial de Sbackup, que va a permitir, a través de susdiferentes fichas, establecer los parámetros de configuración.

Página.- 356

Fig 146: Sbackup (Simple Backup Config)

Page 359: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

La ficha general muestra tres opciones que se describen en la propia ventana:

– Usar parámetros de copia de respaldo recomendados.

– Usar ajustes de copia de respaldo personalizados.- los valores preconfigurados son losmismos que los de la opción anterior pero aquí permite modificar todos losparámetros.

– Solo copias de respaldo manuales.- se utiliza para hacer copias de algunos ficheros devez en cuando, con arreglo a la configuración realizada en las demás fichas.

La ficha “Incluir”, a través de los diferentes botones, permite confeccionar la lista dedirectorios y ficheros a copiar.

La ficha “Excluir” permite especificar los ficheros y carpetas que, aunque seencuentran dentro de la lista de carpetas de la ficha “Incluir”, no deben ser copiados. Hayvarias formas de especificar las exclusiones:

– Por el nombre del fichero o carpeta a excluir.– Por el tipo de archivo, es decir, por su extensión.– Por expresiones regulares en las que se pueden incluir caracteres comodines.– Por el tamaño máximo de los ficheros.

La ficha “Destino” donde se especifica dónde se realizará la copia, pudiendo elegirentre la carpeta por defecto (/var/backup) o cualquier otra , tanto del equipo local como de unequipo remoto al que se pueda acceder por ssh o ftp. Existe un cuadro de verificación quepermite anular el backup si la carpeta de destino no existe. Esta última opción puede utilizarsepara hacer copias de seguridad en dispositivos extraibles puesto que si el dispositivo no seencuentra conectado no existirá la carpeta y no se efectuará el backup.

La ficha “Hora” permite establecer cuándo y con qué frecuencia realizar las copias. Sehará una copia completa cuando se especifique y las demás serán incrementales.

La ficha “Purgando” permite eliminar las copias demasiado antiguas y las incompletaso irrecuperables (si existe alguna completa posterior).

Con el botón “Guardar” se almacena la programación de la copia y con el botón“Generar copia de respaldo Ahora!” se realiza una copia en el momento. La primera copia quese realice será una copia completa y se guardará dentro de la carpeta destino elegida, en unasubcarpeta cuyo nombre será de la forma “fecha_hora_num.equipo.ful”; las copias siguientesserán incrementales y se guardarán en subcarpetas con nombre similar y extensión “.inc”.

Simple Backup Restore permite realizar la recuperación de ficheros desde una copiade respaldo.

Página.- 357

Page 360: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Hay que seleccionar la carpeta donde se encuentran los backups, que puede ser lautilizada por defecto (la configurada anteriormente para albergar las copias) u otra. Acontinuación hay que desplegar la lista de “Copias de respaldo disponibles:” y seleccionar lacopia deseada. En el cuadro “Archivos y directorios a restaurar” se seleccionan los quecorresponda y se pulsa el botón “Restaurar” para llevarlos al directorio origen programado oel botón “Restaurar como” para llevarlos a otra carpeta.

¡Ojo!, hay que desplegar la lista “Copias de respaldo disponibles:” porque en principiopuede no mostrarse ninguna hasta que se despliegue.

10.6.4 Bacula

Bacula es una solución distribuida de backups, es decir, consta de varios elementosque pueden o no residir en el mismo equipo.

Los elementos que componen Bacula no difieren demasiado de los elementos que hayque configurar en los demás programas de backup. La diferencia sustancial es que dichoselementos pueden encontrarse repartidos por varios equipos: uno contiene las copias, otro losparámetros de configuración generales, otro el schedule o programación temporal de lascopias, etc.

Esos componentes son los siguientes:

– Director.- elemento que controla el flujo de datos, ordena realizar un backup orestauración, ordena a los clientes que comiencen a comprimir sus archivos paraenviarlos a los storages (equipos que contienen físicamente los datos), etc. Seconfigura en el fichero bacula-dir.conf.

El director arranca los backups siguiendo la programación de los schedules, perotambién se pueden realizar copias y otras operaciones a mano, mediante la bconsole.

Página.- 358

Fig 147: Restauración con Sbackup

Page 361: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Los datos no pasan por el director, van directamente desde los clientes a los storages(backup) o viceversa (restauración).

– Storage.- se encarga de manejar los dispositivos físicos donde se albergan las copias.Recibe los datos desde los clientes y los almacena en los dispositivos que corresponda.Se configura en el fichero bacula-sd.conf.

– Catálogo.- es una base de datos donde se guarda información sobre los trabajos decopia y datos copiados. Permite:

• Conocer si hay una copia completa para un trabajo y si no la hay eleva la copiaa completa.

• Hacer restauraciones selectivas en base a la información guardada de losarchivos y sus atributos (fecha de última modificación, …), es decir,seleccionar o marcar individualmente los archivos y/o directorios a restaurar.

No tiene fichero de configuración.

– Proceso de fichero/cliente (FD).- se ejecuta en los clientes y su objetivo es comprimiry enviar los datos al storage, para su almacenamiento. Se configura en el ficherobacula-fd.conf, que reside en el cliente.

– Bconsole.- programa que puede o no correr en el mismo equipo que el director y queinteractúa con él. Esta interactuación se realiza a través de la línea de comandos(instrucciones), aunque hay webapps y GUIs en desarrollo, como brestore o bat conentorno gráfico. Se configura en el fichero bconsole.conf.

Ficheros de configuración

Para estudiar la configuración de los diferentes ficheros vamos a realizar un supuestosimple, que funcione y permita comprobar la eficacia de este software de copias de seguridad.El supuesto va a consistir en la utilización de una máquina virtual (MaX60_S) donde serealizará una copia de seguridad en /home/madrid/Copia/S de los ficheros y carpetascontenidos en /home/madrid/Datos-S. En este caso la máquina MaX60_S hará todas lasfunciones que contempla bácula: Director, Storage, Catalogo, Cliente y Bconsole. Una vezcomprobado el funcionamiento desde el entorno de línea de comandos, se instalará algunaherramienta que permita y facilite la gestión de bácula desde el entorno gráfico.

Seguidamente, haciendo uso de una segunda máquina virtual (MaX60_C), se añadiráun cliente más al sistema de copia que volcará los datos del directorio /home/madrid/Datos-Cal directorio /home/madrid/Copia/C de MaX60_S. MaX60_C hará la función de Cliente debácula y MaX60_S seguirá haciendo las demás.

Página.- 359

Page 362: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Antes de proceder con las tareas propias de la copia de seguridad es convenienterealizar ciertas comprobaciones:

– Conocer la dirección ip de las máquinas. En este supuesto MaX60_S tiene la direcciónip 192.168.10.16 y MaX60_C la 192.168.10.17.

– Comprobar que los nombres de las máquinas coinciden con el contenido del fichero/etc/hostname.

– Comprobar que ambas máquinas responden al ping tanto por la ip como por el nombredel equipo. Añadir si es necesario la línea correspondiente en /etc/hosts.

– Comprobar que existen las carpetas a copiar y las que contendrán las copias. Revisarque los permisos son los adecuados.

– Comprobar en MaX60_S con la instrucción “sudo service mysql status” que mysqlestá ejecutándose.

Por último, es conveniente tener en cuenta que es el Director el que se autentica contralos componentes y no al revés.

Se instala el paquete “bácula” en MaX60_S con “sudo apt-get install bacula”. Durantela instalación se solicita la siguiente información (se incluyen unas posibles respuestas):

– Conformidad con la instalación mostrando el espacio requerido: S.– Conformidad por no poder verificar ciertos paquetes necesarios: S.– Tipo de configuración del servidor de correo: “Sin configuración”.– Configurar la base de datos para bacula-director-mysql con dbconfig-common: Si– Contraseña del usuario de administración de la base de datos: cmadrid.– Contraseña de aplicación MySQL para bacula-director-mysql: cmadrid.

Así, además de quedar instalados los paquetes necesarios, se instalan ficheros deconfiguración con ejemplos que son sobre los que vamos a realizar las modificacionesoportunas para que se ajusten al supuesto, y que se encuentran en el directorio /etc/bacula.Antes de modificar los ficheros se aconseja realizar una copia de los mismos.

bacula-dir.conf

Es el fichero más complejo pues contiene secciones para configurar todos loselementos que intervienen: el director, los schedules (distribución temporal de las copias), lostrabajos, los almacenes de copias (pool), etc. Las secciones que se deben definir son:

Director.- contiene la configuración del director; entre sus opciones estarán la dirección ip, elpuerto, el directorio donde se guarda el PID (identificador del proceso) y la cantidadde trabajos concurrentes.

Página.- 360

Page 363: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Por ejemplo:

Director { # define myself Name = MaX60_S-dirDIRport = 9101 # where we listen for UA connectionsQueryFile = "/etc/bacula/scripts/query.sql"WorkingDirectory = "/var/lib/bacula"PidDirectory = "/var/run/bacula"Maximum Concurrent Jobs = 1# Contraseña de bconsolePassword = "yveAet993vzsWug3KoZUKjVbdZy0nrSqIqQCFH80rIVS"Messages = DaemonDirAddress = 127.0.0.1

}

JobDefs.- contiene los parámetros por defecto de los trabajos. Si un trabajo hace referencia aun JobDefs y no especifica un parámetro, toma el que está definido en el JobDefs (siestá definido aquí). Por ejemplo:

JobDefs {Name = "DefaultJob"Type = BackupLevel = FullClient = MaX60_S-fdFileSet = "FServidor"Schedule = "Diaria"Storage = FileMessages = StandardPool = FilePriority = 10 # Es la opción por defecto. A mayor número menor prioridadWrite Bootstrap = "/var/lib/bacula/%c.bsr"

}

Job.- define los trabajos a realizar. Bacula ejecuta los trabajos automáticamente si tienen unschedule asociado, en caso contrario se pueden ejecutar manualmente. Hay tres clasesde trabajos: Backup (copia), Restore (restauración) y Verify (verifica que los atributosde los archivos del sistema de ficheros coinciden con los atributos guardados en elcatálogo para esos archivos).

Dos ejemplos para el supuesto pueden ser:

Job {Name = "BackupServidor"JobDefs = “DefaultJob”

}

Página.- 361

Page 364: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Job {Name = "Recuperacion"Type = RestoreClient = MaX60_S-fdFileSet=”FServidor”Storage = FilePool = FileMessages = Standard

}

FileSet.- se especifican los directorios y archivos que se van a copiar. También se puedeespecificar que se encripten los datos (con md5 o sha1, por ejemplo) o que se compriman. Porejemplo:

FileSet {Name = "FServidor" Include {

Options { signature = MD5

} File = /home/madrid/Datos-S

} }

Schedule.- básicamente contiene la programación o cuándo se ejecutan los backups. Porejemplo:

Schedule { Name = "Diaria" Run = Level=Full daily at 14:30 # Poner la hora que convenga

}

Client.- para especificar los clientes de los que se va a hacer copia de seguridad. Se especificasu ip, puerto, password, etc. Por ejemplo:

Client {Name = MaX60_S-fd Address = localhost FDPort = 9102 Catalog = MyCatalogPassword = "tvSJX04HxRqYtBebuDUsjyFojhd6hv8Ni" # Password de FDFile Retention = 30 days Job Retention = 6 monthsAutoPrune = yes

}

Página.- 362

Page 365: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Storage.- define las direcciones ip:puerto de los storages, su password y el tipo de dispositivo.Por ejemplo:

Storage {Name = File Address = localhostSDPort = 9103 Password = "ramf4oZkwZ_hARYxCj98AOXb5BsOg0pEi"

# Coincide con la password del recurso storage en bacula-sd.conf Device = DirCopia-S Media Type = File

}

Catalog.- tiene la información para conectarse a la base de datos del catálogo: nombre deusuario, password, nombre de la base de datos, … Por ejemplo:

Catalog {Name = MyCatalog

dbname = bacula; DB Address = “”; dbuser = “bacula”; dbpassword=”cmadrid”}

Messages.- configura cómo y cuando se comunicará Bacula con el administrador de backupspara que, por ejemplo, envíe e-mails con el estado de los backups, que registre lostrabajos erróneos en un fichero, que ejecute un script después de cada trabajo, … Porejemplo:

Messages {Name = Standard mailcommand = "/usr/lib/bacula/bsmtp

-h localhost -f \"\(Bacula\) \<%r\>\" -s \”Bacula: %t %e of %c %l\” %r”

operatorcommand = "/usr/lib/bacula/bsmtp -h localhost -f \"\(Bacula\) \<%r\>\" -s \”Bacula: Intervention needed for %j\”%r”

mail = root@localhost = all, !skippedoperator = root@localhost = mount console = all, !skipped, !saveappend = “/var/lib/bacula/log” = all, !skippedcatalog = all

}

Página.- 363

Page 366: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Messages {Name = Daemon mailcommand = "/usr/lib/bacula/bsmtp

-h localhost -f \"\(Bacula\) \<%r\>\" -s \”Bacula: %t %e of %c %l\” %r”

operatorcommand = "/usr/lib/bacula/bsmtp -h localhost -f \"\(Bacula\) \<%r\>\" -s \”Bacula daemon message \” %r”

mail = root@localhost = all, !skippedconsole = all, !skipped, !savedappend = “/var/lib/bacula/log” = all, !skipped

}

Pool.- entidad lógica que sirve para agrupar volúmenes. Es un almacén de volúmenes. Todoslos volúmenes de un almacén comparten las características del almacén: max volumejobs, autoprune, etc. Los almacenes complementan a los schedules, y entre los dosimplementan la política de backups. Por ejemplo:

Pool { Name = File Pool Type = Backup Recycle = yes AutoPrune = yesVolume Retention = 365 daysLabel Format = “Volumen-” # Prefijo del nombre del volumen o fichero.

}

Console.- Configura la consola. Por ejemplo:

Console {Name = MaX60_S-monPassword = “O_-FgjVpipSu5fA_qAZvPM_8YMFfmeqOb”CommandACL = status, .status

}

Página.- 364

Page 367: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

bacula-sd.conf

Configura el Storage y los dispositivos donde se van a almacenar físicamente lascopias. Se encuentra en la máquina donde corre el Storage y contiene los elementos:

Storage.- define las propiedades del proceso Storage (puerto, ip, pid, ...). Por ejemplo:

Storage { Name = MaX60_S-sd SDPort = 9103 WorkingDirectory = "/var/lib/bacula" Pid Directory = "/var/run/bacula" Maximum Concurrent Jobs = 20SDAddress = 127.0.0.1

}

Director.- especifica los Directores que pueden contactar con este Storage. Por ejemplo:

Director {Name = MaX60_S-dirPassword = "ramf4oZkwZ_hARYxCj98AOXb5BsOg0pEi"

# coincide con la password en el recurso storage de bacula-dir.conf }

Director {Name = MaX60_S-monPassword = "5uA5WqdMTeFsAMWrCpbwU5J2F3TPIrndM"

# coincide con la password en el recurso storage de bacula-dir.confMonitor = yes

}

Device.- especifica el dispositivo donde se guardarán los datos (un archivo en /dev o undirectorio en el sistema de ficheros). Por ejemplo:

Device { Name = DirCopia-S Media Type = File Archive Device = /media/madrid/Copia/S LabelMedia = yes; Random Access = Yes; AutomaticMount = yes; RemovableMedia = no;AlwaysOpen = no;

}

Página.- 365

Page 368: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Messages.- define qué mensaje de los definidos en bacula-dir.conf se va a usar. Por ejemplo:

Messages { Name = Standard director = MaX60_S-dir = all

}

bacula-fd.conf

Configura al cliente donde reside. Los elementos a configurar son:

Director.- especifica los directores que se conectarán al cliente.

FileDaemon.- define al cliente actual.

Messages.- define el mensaje que se utilizará de los definidos en el director.

Un ejemplo de fichero bacula-fd.conf puede ser:

Director { Name = MaX60_S-dirPassword = "tvSJX04HxRqYtBebuDUsjyFojhd6hv8Ni"

}

Director { Name = MaX60_S-monPassword = "F_qrg5Yf2RW29PloKcfxq65V4iG3SYfR8"Monitor = yes

}

FileDaemon {Name = MaX60_S-fdFDport = 9102WorkingDirectory = /var/lib/baculaPid Directory = /var/run/bacula Maximum Concurrent Jobs = 20FDAddress = 127.0.0.1

}

Messages {Name = Standarddirector = MaX60_S-dir = all, !skipped; !restored

}

Página.- 366

Page 369: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

bconsole.conf

Configura la bconsole. Pueden existir varias bconsoles en distintos equipos, cada unacon su fichero de configuración, con las siguientes opciones de configuración para el director:

Name.- nombre del director.

DirPort.- puerto en el que escucha el director al que nos conectaremos.

Address.- dirección del director.

Password.- password usada que debe coincidir con el atributo “password” de bacula-dir.conf.

Por ejemplo:

Director { Name = localhost-dirDIRport = 9101 address = localhost Password = "yveAet993vzsWug3KoZUKjVbdZy0nrSqIqQCFH80rIVS"

}

Según se han configurado los ficheros, solamente faltaría comprobar la horaestablecida para que se realice el backup (fichero bacula-dir.conf, sección Schedule,parámetro Run) y reiniciar los procesos que hacen uso de los ficheros modificados.

Para no esperar demasiado tiempo para comprobar que todo funciona correctamente, ytener tiempo para relanzar los procesos, la hora puede ser cinco minutos posterior a la actual.Por ejemplo, si son las 11:35 horas, puede establecerse que el backup se realice a las 11:40.

Se reinician los procesos ejecutando:

sudo /etc/init.d/bacula-director restartsudo /etc/init.d/bacula-sd restartsudo /etc/init.d/bacula-fd restart

Si todo funciona correctamente, a la hora estipulada se realizará la copia de seguridadprogramada cuyo resultado quedará en el fichero /home/madrid/Copia/S/Volumen-0001.

Si no se genera la copia, pueden realizarse las siguientes comprobaciones:

– Que el usuario bacula tiene los permisos adecuados para leer la información a copiar ypara escribir en la carpeta donde se genera el fichero Volumen-0001.

Página.- 367

Page 370: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

– Que se están ejecutando los procesos mysql, bacula-director, bacula-sd y bacula-fdhaciendo uso de las instrucciones:

sudo service mysql statussudo /etc/init.d/bacula-director statussudo /etc/init.d/bacula-sd statussudo /etc/init.d/bacula-fd status.

– El estado de algunos de los elementos de bacula, haciendo uso de la Bconsole de laforma:

su root (hay que introducir la contraseña solicitada)bconsole Lanza la ejecución de bconsoleshow filesets Muestra los ficheros a copiarstatus dir Muestra los trabajos programados, en ejecución, …status client Muestra los trabajos en ejecución, no terminados, …status storage Muestra información sobre trabajos y dispositivos.messages Muestra mensajes sobre incidencias, copias, etc.label Permite crear el fichero donde se copiarán los datos.h Muestra información de ayudaexit o quit Finalizan la ejecución de Bconsole.

Antes de seguir con la recuperación de los datos y la ampliación con otro cliente,puede resultar interesante y de gran ayuda para resolver los problemas que vayan surgiendotener en cuenta un par de aspectos.

El primero relativo a la documentación: puede instalarse el paquete “bacula-doc” quepondrá a nuestro alcance gran cantidad de información que quedará alojada en el directorio/usr/share/doc. En concreto, /usr/share/doc/bacula-doc/main.pdf contiene un manual muycompleto, con todas las opciones a utilizar en los ficheros de configuración, con todas lasinstrucciones de bconsole, etc. Sería interesantísimo revisar todas las opciones que se puedenutilizar en las diferentes secciones del fichero bacula-dir.conf para conocer el alcance de estesoftware; o al menos el significado y alternativas de las opciones utilizadas en el supuestoaquí confeccionado.

El segundo relativo al uso de interfaces gráficas: instalando “bacula-console-qt” sedispone de un programa gráfico e intuitivo que facilita la administración de bácula. Ademásde permitir manejar los diferentes elementos de bácula haciendo uso de los iconos adecuados,dispone de una ventana para introducir los comandos que se estime oportuno, pudiendo así serutilizado de forma similar a como se hace con la Bconsole. La apariencia de esta herramientase muestra en la figura.

Otro software que permite conocer la actividad de bácula es Bacula-traymonitor, quese instala con el paquete “bacula-traymonitor” y se lanza con la instrucción “bacula-tray-monitor”. Debe ser ejecutado por root desde el directorio donde se encuentra su fichero deconfiguración (tray-monitor.conf), que por defecto es /etc/bacula.

Página.- 368

Page 371: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Para que bacula-tray-monitor pueda conectar con el Director, el Storage y el Clientedeben introducirse las correspondientes claves de acceso a los mismos en el fichero deconfiguración /etc/bacula/tray-monitor.conf. Ver ejemplos de ficheros más adelante.

Con los ficheros configurados, hay dos formas de realizar un backup:

– Automáticamente.- para que bacula realice un trabajo (job) automáticamente debeestar habilitado (lo está por defecto) y asociado a un schedule (programacióntemporal), como en el supuesto anterior.

– Manualmente.- es posible configurar un trabajo a mano y ejecutarlo o bien ejecutaruno tal cual está configurado, sin modificar ninguno de sus parámetros.

Por regla general los backups se realizan automáticamente mientras que lasrestauraciones se realizan cuando se necesita. Si según están configurados los ficheros, sedesea realizar un backup manual, bastaría ejecutar “bconsole” y a continuación introducir lainstrucción “run”. Eligiendo las opciones adecuadas, que son bastante intuitivas, se realiza elbackup.

A continuación se puede proceder a realizar una recuperación de los datos. Para ello,como usuario madrid, se borran en primer lugar los datos originales con la instrucción:

rm /home/madrid/Datos-S/* -r

su root (se introduce la contraseña de root)

bconsole Se lanza la ejecución de bconsole

Página.- 369

Fig 148: bat (bconsole administration tool)

Page 372: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

restore all Se indica que se recuperen todos los ficheros y carpetas.

Opción 5 Para seleccionar el respaldo más reciente para un cliente.

No hace falta seleccionar ningún fichero porque “restore all” marca todos.

done Finaliza la selección de ficheros

OK para ejecutar ? (si/mod/no): si Procede con la recuperación.

Al no especificar dónde deben volcarse los datos, por defecto irán a su lugar de origen.

Para finalizar el supuesto vamos a crear un Cliente más, que será la máquina virtualMaX60_C, cuyos datos a copiar estarán en la carpeta /home/madrid/Datos-C y se copiarán ala máquina MaX60_S en la carpeta /home/madrid/Copia/C.

Puede empezarse por crear los ficheros y carpetas en MaX60_C, como usuariomadrid:

mkdir /home/madrid/Datos-Cecho “Contenido de f1-C” > /home/madrid/Datos-C/f1echo “Contenido de f2-C” > /home/madrid/Datos-C/f2mkdir /home/madrid/Datos-C/carpeta-Cecho “Contenido de fichero-C” > /home/madrid/Datos-C/carpeta-C/fichero-Cchmod a+rwx /home/madrid/Datos-C -R

Se instala con Synaptic el paquete “bacula-fd”.

Antes de proceder a modificar los ficheros de configuración debe hacerse una copia delos mismos. Además, hay que poner especial atención en:

– Cambiar el nombre de “localhost” por el que corresponda (en todos los ficheros).

– Cambiar la dirección ip 127.0.0.1 por la que corresponda (en todos los ficheros).

– Especificar en el fichero bacula-dir.conf de MaX60_S, en la sección “Client”correspondiente a la definición de la máquina virtual MaX60_C la password asignadaen el fichero bacula-fd de MaX60_C en la correspondiente sección “Director”.

Página.- 370

Page 373: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Así, el contenido de los diferentes ficheros, incluidos bconsole.conf y bat.conf, podríaser el siguiente:

/etc/bacula/bconsole.conf (de MaX60_S)

Director { Name = MaX60_S-dir DIRport = 9101 address = 192.168.10.16 Password = "yveAet993vzsWug3KoZUKjVbdZy0nrSqIqQCFH80rIVS" }

/etc/bacula/bat.conf (de MaX60_S)

Director { Name = MaX60_S-dir DIRport = 9101 address = 192.168.10.16 Password = "yveAet993vzsWug3KoZUKjVbdZy0nrSqIqQCFH80rIVS" }

/etc/bacula/bacula-dir (de MaX60_S)

Director { # define myself Name = MaX60_S-dir DIRport = 9101 # where we listen for UA connections QueryFile = "/etc/bacula/scripts/query.sql" WorkingDirectory = "/var/lib/bacula" PidDirectory = "/var/run/bacula" Maximum Concurrent Jobs = 1 # Console password Password = "yveAet993vzsWug3KoZUKjVbdZy0nrSqIqQCFH80rIVS" Messages = Daemon DirAddress = 192.168.10.16 }

Página.- 371

Page 374: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

JobDefs { Name = "DefaultJob" Type = Backup Level = Full Client = MaX60_S-fd FileSet = "FServidor" Schedule = "Diaria" Storage = File Messages = Standard Pool = File Priority = 10 Write Bootstrap = "/var/lib/bacula/%c.bsr" }

Job { Name = "BackupSer" JobDefs = "DefaultJob" }

Job { Name = "BackupCli" JobDefs = "DefaultJob" Client = MaX60_C-fd FileSet = "FCliente" Storage = File-C Pool = File }

Job { Name = "Recuperacion" Type = Restore Client=MaX60_S-fd FileSet="FServidor" Storage = File Pool = File Messages = Standard }

Página.- 372

Page 375: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

FileSet { Name = "FServidor" Include { Options { signature = MD5 } File = /home/madrid/Datos-S } }

FileSet { Name = "FCliente" Include { Options { signature = MD5 } File = /home/madrid/Datos-C } }

Schedule { Name = "Diaria" Run = Level=Full daily at 11:12 }

Client { Name = MaX60_S-fd Address = 192.168.10.16 FDPort = 9102 Catalog = MyCatalog Password = "L4lfoVY6qTUhGgQ6JY57OFi0NXeXRN0e3" # password de FD File Retention = 30 days # 30 days Job Retention = 6 months # six months AutoPrune = yes # Prune expired Jobs/Files }

Client { Name = MaX60_C-fd Address = 192.168.10.17 FDPort = 9102 Catalog = MyCatalog Password = "W_CYJ1dkcOvtzCPjBczfc8-spDQFn2fTD" # password de FD File Retention = 30 days # 30 days Job Retention = 6 months # six months AutoPrune = yes # Prune expired Jobs/Files }

Página.- 373

Page 376: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Storage { Name = File # Do not use "localhost" here Address = 192.168.10.16 # N.B. Use a fully qualified name here SDPort = 9103 Password = "7UQcNBAjazD_q_DlFFfWYaGdSkzdKIreW" Device = DirCopia-S Media Type = File }

Storage { Name = File-C # Do not use "localhost" here Address = 192.168.10.16 # N.B. Use a fully qualified name here SDPort = 9103 Password = "7UQcNBAjazD_q_DlFFfWYaGdSkzdKIreW" Device = DirCopia-C Media Type = File }

Catalog { Name = MyCatalog dbname = bacula; DB Address = ""; dbuser = "bacula"; dbpassword = "cmadrid" }

Messages { Name = Standard mailcommand = "/usr/lib/bacula/bsmtp -h localhost -f \"

\(Bacula\) \<%r\>\" -s \"Bacula: %t %e of %c %l\" %r" operatorcommand = "/usr/lib/bacula/bsmtp -h localhost -f \"

\(Bacula\) \<%r\>\" -s \"Bacula: Intervention needed for %j\" %r" mail = root@localhost = all, !skipped operator = root@localhost = mount console = all, !skipped, !saved append = "/var/lib/bacula/log" = all, !skipped catalog = all }

Messages { Name = Daemon mailcommand = "/usr/lib/bacula/bsmtp -h localhost -f \"

\(Bacula\) \<%r\>\" -s \"Bacula daemon message\" %r" mail = root@localhost = all, !skipped console = all, !skipped, !saved append = "/var/lib/bacula/log" = all, !skipped }

Página.- 374

Page 377: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Pool { Name = File Pool Type = Backup Recycle = yes # Bacula can automatically recycle Volumes AutoPrune = yes # Prune expired volumes Volume Retention = 365 days # one year Label Format = "Volumen-" }

Console { Name = MaX60_S-mon # Clave a utilizar en /etc/bacula/tray-monitor.conf Password = "Kovn5LyXeZTzLzj9WuTEKH02MrIudGf9z" CommandACL = status, .status }

/etc/bacula/bacula-sd.conf (de MaX60_S)

Storage { # definition of myself Name = MaX60_S-sd SDPort = 9103 # Director's port WorkingDirectory = "/var/lib/bacula" Pid Directory = "/var/run/bacula" Maximum Concurrent Jobs = 20 SDAddress = 192.168.10.16 }

Director { Name = MaX60_S-dir Password = "7UQcNBAjazD_q_DlFFfWYaGdSkzdKIreW" }

Director { Name = MaX60_S-mon # Clave a utilizar en /etc/bacula/tray-monitor.conf Password = "0gSlTTu0M21afC9PIMxBSD0yhmKqnvx-g" Monitor = yes }

Página.- 375

Page 378: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Device { Name = DirCopia-S Media Type = File Archive Device = /home/madrid/Copia/S LabelMedia = yes; # lets Bacula label unlabeled media Random Access = Yes; AutomaticMount = yes; # when device opened, read it RemovableMedia = no; AlwaysOpen = no; }

Device { Name = DirCopia-C Media Type = File Archive Device = /home/madrid/Copia/C LabelMedia = yes; # lets Bacula label unlabeled media Random Access = Yes; AutomaticMount = yes; # when device opened, read it RemovableMedia = no; AlwaysOpen = no; }

Messages { Name = Standard director = MaX60_S-dir = all }

/etc/bacula/bacula-fd (de MaX60_C)

Director { Name = MaX60_S-dir Password = "W_CYJ1dkcOvtzCPjBczfc8-spDQFn2fTD" }

Director { Name = MaX60_C-mon # Clave a utilizar en /etc/bacula/tray-monitor.conf Password = "-xRj0NheRRO7xfi4vECKrbNoFJST_C7io" Monitor = yes }

Página.- 376

Page 379: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

FileDaemon { # this is me Name = MaX60_C-fd FDport = 9102 # where we listen for the director WorkingDirectory = /var/lib/bacula Pid Directory = /var/run/bacula Maximum Concurrent Jobs = 20 FDAddress = 192.168.10.17 }

Messages { Name = Standard director = MaX60_C-dir = all, !skipped, !restored }

Una vez configurados los ficheros puede hacerse una copia de seguridad (backup)manual, desde bconsole, utilizando el comando “run” y eligiendo las opciones adecuadas, queson bastante intuitivas:

– Seleccionar el trabajo (job) : El nº correspondiente a BackupCli.

– Revisar las opciones mostradas y contestar que “si” se ejecute.

La restauración puede efectuarse también desde bconsole mediante la instrucción“restore all”, siguiendo un procedimiento similar al de la restauración anterior:

– Elegir el trabajo de backup que se toma de referencia para la restauración (5).

– Elegir el cliente: MaX60_C-fd.

– No es necesario marcar archivos porque se han seleccionado todos.

– Finalizar la selección ejecutando “done”.

– Se revisan las opciones mostradas, modificando la que se considere oportuno yseleccionando para finalizar y ejecutar “si”.

Resumiendo, para configurar y lanzar manualmente un backup se debe proceder desdela bconsole realizando las tareas:

1. Entrar a la bconsole y elegir un trabajo de backup.2. Configurar el trabajo de acuerdo a las necesidades.3. Ejecutar el trabajo.

Es conveniente conocer algunas de las características de la Bconsole:

Página.- 377

Page 380: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

– Puede cancelarse en cualquier momento lo que se esté haciendo introduciendo unpunto (“.”). Por ejemplo, si se está configurando un trabajo y se desea cancelar laconfiguración.

– Bconsole acepta comandos incompletos. Por ejemplo “mess” en vez de “messages”,“stat sto” en vez de “status storage”, …

– Se pueden crear scripts que usen la bconsole.

– No confiarse; es fácil con un prune borrar algo del catálogo si no se tiene cuidado.

– El comando “help” lista las instrucciones disponibles en la bconsole, junto con unadescripción de las mismas.

Para proceder con bconsole (dependiendo de la configuración del equipo, quizá senecesiten privilegios de root) hay que ejecutar:

bconsole

Evidentemente, el resultado de la ejecución de las instrucciones que se muestran acontinuación será muy diferente según cada caso puesto que depende de la configuración decada uno de los componentes de bacula. Aquí se seguirá un ejemplo que difícilmenteconcordará con cualquier otro.

La instrucción “stat dir” muestra el estado del director, que podrá ser de la forma:

*stat dir silicio-dir Version: 1.36.3 (22 April 2005) i486-pc-linux-gnu debiantesting/unstable Daemon started 06-Nov-07 13:21, 36 Jobs run since started. Scheduled Jobs: Level Type Pri Scheduled Name Volume ==========================================================================Incremental Backup 10 09-Nov-07 00:30 backup_unlp Unlp-Inc-0003 Incremental Backup 20 09-Nov-07 01:05 backup_testing_tape *unknown* ==== Running Jobs: No Jobs running. ==== Terminated Jobs: JobId Level Files Bytes Status Finished Name ==========================================================================5116 Incr 69 7,936,572 OK 08-Nov-07 01:07 backup_unlp_tape 5121 Incr 103 15,875,686 OK 08-Nov-07 01:32 backup_testing_tape ==== *

Página.- 378

Page 381: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

donde se muestran los trabajos pendientes de ejecución, los que se encuentran en ejecución ylos finalizados.

La instrucción “stat sto” muestra el estado del Storage y de cada uno de losdispositivos. Por ejemplo:

*stat sto The defined Storage resources are: 1: silicio-sd-disco 2: silicio-sd-cinta Select Storage resource (1-2): 1 Connecting to Storage daemon silicio-sd-disco at una-ip:9103 silicio-sd Version: 1.36.3 (22 April 2005) i486-pc-linux-gnu debiantesting/unstable Daemon started 06-Nov-07 13:21, 33 Jobs run since started. Running Jobs: No Jobs running. ==== Terminated Jobs: JobId Level Files Bytes Status Finished Name ====================================================================== 5116 Incr 69 7,944,619 OK 08-Nov-07 01:07 backup_unlp_tape 5121 Incr 103 15,891,720 OK 08-Nov-07 01:32 backup_testing_tape ==== Device status: Archive "FileStorage" is not open or does not exist. Device "/dev/nst0" is mounted with Volume "Full-Backups-Tape-0008" Total Bytes=8,326,839,143 Blocks=129,093 Bytes/block=64,502 Positioned at File=37 Block=0 *

Para ejecutar un trabajo se utiliza la instrucción “run”, que mostrará los trabajosdisponibles:

*run A job name must be specified. The defined Job resources are: 1: default_restore_job 2: backup_unlp Select Job resource (1-2): 2 Run Backup job JobName: backup_unlp FileSet: unlp-fs Level: Incremental Client: unlp-fd Storage: silicio-sd-disco Pool: unlp-inc

Página.- 379

Page 382: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

When: 2007-11-08 17:38:24Priority: 10 OK to run? (yes/mod/no):

permite elegir uno de los trabajos, muestra la información relativa al mismo y permite suejecución (o lo pone a la cola del scheduler si aún no ha llegado la hora de su ejecución(campo When)), modificación o no ejecución, según se responda “yes”, “mod” o “no” (un “.”equivale a “no”), respectivamente.

El significado de cada uno de los campos es el siguiente:

JobName.- nombre del trabajo. No se puede modificar.

FileSet.- conjunto de directorios y ficheros definidos en la configuración de bacula. Permiteelegir el conjunto a usar. Generalmente hay un FileSet por cliente, aunque si existen bastantesclientes con la misma estructura de directorios puede reutilizarse el mismo.

Level.- describe el tipo de copia. Los valores posibles son “Full” (completa), “Incremental” y“Diferencial”.

Client.- especifica el cliente (FD) del que se va a copiar el fileset.

Storage.- es el dispositivo (no el equipo) donde se van a guardar los datos.

Pool.- es el almacén que contiene el volumen donde se va a hacer la copia.

When.- establece la fecha y hora de inicio de la copia. Por defecto es “ahora”.

Priority.- establece la prioridad del trabajo. A mayor número, menor prioridad.

En el ejemplo, si se quiere ejecutar una copia completa deberá modificarse la opciónLevel. Para ello habrá que elegir (escribir) “mod”. A continuación Bacula pregunta elparámetro a modificar, que en este caso es el 1, y el tipo de copia, que para completa (full) esla opción 2:

OK to run? (yes/mod/no): mod Parameters to modify: 1: Level 2: Storage 3: Job 4: FileSet 5: Client 6: When 7: Priority 8: Pool

Página.- 380

Page 383: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Select parameter to modify (1-8): 1 Levels: 1: Base 2: Full 3: Incremental 4: Differential 5: Since Select level (1-5): 2 Run Backup job JobName: backup_unlp FileSet: unlp-fs Level: Full Client: unlp-fd Storage: silicio-sd-disco Pool: unlp-inc When: 2007-11-08 18:08:31 Priority: 10 OK to run? (yes/mod/no):

Bacula cambia el nivel del trabajo y vuelve a preguntar si está listo para su ejecución.Si se quisiera hacer el backup en cinta, debería modificarse el “Storage” porque estáconfigurado para hacerlo en el disco. La forma de proceder sería similar a la anterior,eligiendo “mod” y la opción 2 (Storage). Bacula mostrará los dispositivos (devices); porejemplo, para el caso de un servidor de Storage con dos dispositivos, uno de disco y otro decinta, la información mostrada podría ser:

The defined Storage resources are: 1: silicio-sd-disco 2: silicio-sd-cinta Select Storage resource (1-2): 2 Run Backup job JobName: backup_unlp FileSet: unlp-fs Level: Full Client: unlp-fd Storage: silicio-sd-cinta Pool: unlp-inc When: 2007-11-08 18:08:31 Priority: 10 OK to run? (yes/mod/no):

Si en el sistema todos los backups en cinta se hacen en un solo pool, que no es el queestá configurado, habrá que proceder a su modificación mediante las opciones “mod” y 8(Pool). Se mostrará un listado con los pools (almacenes) del sistema. Si los backups en cintausan volúmenes del primer pool se tendrá:

Página.- 381

Page 384: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Select parameter to modify (1-8): 8 The defined Pool resources are: 1: full-backups-tape 2: unlp-full 3: unlp-inc 4: unlp-diff Select Pool resource (1-7): 1 Run Backup job JobName: backup_unlp FileSet: unlp-fs Level: Full Client: unlp-fd Storage: silicio-sd-cinta Pool: full-backups-tape When: 2010-11-08 19:00:00 Priority: 10 OK to run? (yes/mod/no):

Si se elige “yes” y se ha modificado el atributo When con ”When: 2007-11-0819:00:00”, Bacula esperará una hora antes de ejecutar el trabajo.

Si se hace ”status dir” en este momento, se verá lo siguiente:

...... Mas informacion arriba Running Jobs: JobId Level Name Status ====================================================================== 5124 Full backup_unlp.2007-11-08_18.23.04 is running ==== ...... Mas informacion debajo

Esto indica que el trabajo configurado se está ejecutando.

Para cancelar el backup, puede usarse el comando ”cancel”. Si hay un solo backupcorriendo, nos pregunta si lo queremos cancelar. Si hay varios backups corriendo, nospreguntará cuál de todos cancelar.

La restauración se puede realizar ejecutando un “trabajo de restauración” previamentedefinido en la configuración de Bacula o ejecutando el comando “restore” en la bConsole. Lasdos modalidades presentan diferentes opciones, que se comentan a continuación.

La restauración mediante un trabajo configurado tiene tres etapas definidas:

1. Buscar y seleccionar los trabajos que realizaron las copias de los archivos a recuperar.Puede hacerse mediante las instrucciones “run” o “restore” en la bconsole.

Página.- 382

Page 385: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

2. Armar el árbol de directorios de donde seleccionar (marcar) los archivos y directoriosa restaurar. Esto lo hace Bacula, en base a los trabajos seleccionados en el pasoanterior.

3. Seleccionar los archivos y directorios a restaurar utilizando el comando “mark”.

En la bConsole se escribe “run” y se selecciona el trabajo definido en 1.

The defined Job resources are: 1: default_restore_job 2: backup_unlp 3: backup_unlp_tape Select Job resource (1-5): 1Please enter a JobId for restore: 4 Run Restore job JobName: default_restore_job Bootstrap: *None* Where: /var/cache/raid/backups/restores Replace: always Client: silicio-fd Storage: silicio-sd-disco JobId: 4 When: 2007-11-09 18:38:29 Catalog: catalogo Priority: 10 OK to run? (yes/mod/no):

Cuando se selecciona el trabajo, Bacula arma un trabajo de restauración para recuperarlos datos copiados en el trabajo de backup seleccionado, después muestra la configuración deltrabajo de restauración y pregunta si los datos son correctos. La forma de trabajar en este pasoes similar a la del backup: se verifica que los valores sean correctos, si no lo son se elige”mod” y se escriben los valores correctos, así hasta que todos los valores sean los deseados.Cuando se haya terminado de configurar el trabajo se ejecuta escribiendo ”run” en labConsole.

El significado de los diferentes campos es el siguiente:

Where.- es el directorio en el cliente donde se van a guardar los archivos restaurados.

Replace.- indica si reemplaza los archivos existentes por los restaurados. Posibles valores:always, ifnewer, ifolder, never.

Client.- es el host que recibirá los archivos restaurados. Este host va a guardar los archivos enel directorio especificado en Where.

Storage.- es el dispositivo del que se van a extraer los archivos para restaurarlos en el cliente.

Página.- 383

Page 386: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

JobId.- es el trabajo que se va a restaurar.

La otra forma de restaurar un backup es hacerlo mediante el comando restore. Comoejemplo vamos a hacer un Full Restore de Isis.

se escribe “restore” en la bConsole, a lo cual Bacula puede responder con el siguientelistado de opciones:

*restore

First you select one or more JobIds that contain files to be restored. You will be presented several methods of specifying the JobIds. Then you will be allowed to select which files from those JobIds are to be restored.

To select the JobIds, you have the following choices: 1: List last 20 Jobs run 2: List Jobs where a given File is saved 3: Enter list of comma separated JobIds to select 4: Enter SQL list command 5: Select the most recent backup for a client 6: Select backup for a client before a specified time 7: Enter a list of files to restore 8: Enter a list of files to restore before a specified time 9: Cancel Select item: (1-9):

Las opciones para restaurar archivos específicos requieren el path completo delarchivo, tal cual estaba en el cliente. Por ejemplo, para restaurar el archivo/home/matiasb/archivo.txt hay que buscarlo como /home/matias/archivo.txt; archivo.txt seráun archivo totalmente distinto.

Esta posibilidad de restaurar archivos específicos se puede hacer gracias al catálogoque usa Bacula. Si por algún motivo el catálogo se borra, ya sea a propósito o por undescuido, no se podrán hacer restores selectivos para las entradas del catálogo que fueronborradas. Por ejemplo, si se borra del catálogo todos los trabajos relacionados con los backupshechos para Isis, entonces no se podrá hacer un restore de Isis de esta forma. De ocurrir esto,se puede hacer un restore usando las herramientas extra-consola que provee Bacula, como bls,bextract, etc.

Notar que en el catálogo sólo se guarda información sobre los archivos y no losarchivos en sí, así que por más que se pierda el catálogo, los datos seguirán almacenados enlos volúmenes, ya sea en el disco duro o en la cinta, dependiendo del dispositivo donde sehayan almacenado.

Página.- 384

Page 387: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Eligiendo la opción “5” Bacula pregunta cuál de todos los clientes restaurar. En estecaso los clientes son:

Select item: (1-9): 5 Defined Clients: 4: isis-fd Select the Client (1-4):

Elegimos Isis e inmediatamente Bacula lee el catálogo para armar un árbol dedirectorios virtual de donde seleccionar los archivos y directorios a restaurar:

Automatically selected FileSet: isis-fs +-------+-------+-----------+--------------------+----------------+---------+------------+----------------+| JobId | Level | JobFiles | StartTime | VolumeName |StartFile|VolSessionId| VolSessionTime |+-------+-------+-----------+--------------------+----------------+---------+------------+----------------+| 5,038 | F | 2,766,128 | 2007-11-04 00:41:53| Isis-Full-0002 | 9 | 291 | 1,192,533,342 |

....................... Muchas lineas mas..... +-------+-------+-----------+--------------------+----------------+---------+------------+----------------+You have selected the following JobIds: 5038,5060,5068,5076,5084,5093,5101,5109,5117,5126,5134Building directory tree for JobId 5038 ...

En el listado se ve como Bacula elige los trabajos y arma el árbol. Cuando termina y elárbol está creado, muestra un prompt donde se pueden marcar y desmarcar archivos ydirectorios.

$ pwd cwd is: /etc/bacula/ $ ls bacula-fd.conf scripts/ $

Con el comando “mark” se selecciona lo que se quiere restaurar y con el comando“unmark” se desmarca lo que por error se haya marcado. Por ejemplo, se puede marcar elarchivo de configuración del cliente Bacula y luego desmarcarlo:

$ mark bacula-fd.conf 1 files marked. $ unmark bacula-fd.conf 1 files unmarked. $

Si, por ejemplo, se marca para restaurar el archivo /etc/bacula/bacula-fd.conf y eldirectorio /etc/bacula/scripts. Con el comando “estimate” Bacula nos da una estimación decuántos bytes se van a restaurar (Notar cómo marcando un directorio, automáticamente semarcan todos los archivos del directorio):

Página.- 385

Page 388: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

$ mark scripts 5 files marked. $ estimate 2785207 total files; 8 marked to be restored; 2,576 bytes. $

Cuando se ha marcado todo lo que se desea restaurar, con el comando done se leindica a Bacula que puede empezar a restaurar los datos. En cualquier momento se puede usarel comando “help”, que imprime un listado de los comandos disponibles. Además, si se quierecancelar el “restore”, se puede usar el comando ”.”, que sirve para volver a la bConsole.

Como herramientas de línea de comandos se puede mencionar:

– El comando “mt” que permite manejar las cintas. Este comando recibe comoargumento el archivo de dispositivo asociado a la cinta como son /dev/st0 y /dev/nst0(el primero rebobina la cinta después de cada operación pero el segundo no).

– Se puede usar /proc para obtener información sobre los dispositivos SCSI conectadosal equipo:

cat /proc/scsi/scsiAttached devices: Host: scsi0 Channel: 00 Id: 06 Lun: 00 Vendor: QUANTUM Model: DLT VS160 Rev: 2C00 Type: Sequential-Access ANSI SCSI revision: 02 Host: scsi2 Channel: 00 Id: 00 Lun: 00 Vendor: ADAPTEC Model: Device 1 Rev: V1.0 Type: Direct-Access ANSI SCSI revision: 02

– Además, Bacula tiene varias herramientas de línea de comandos que sirven paramanipular los volúmenes. Por ejemplo:

bls.- sirve para listar el contenido de un volumen, similar a la instrucción “ls -l”.

bscan.- permite recuperar el catálogo a partir de los volúmenes el disco o cinta.

Bextract.- permite extraer archivos directamente desde el volumen en el dispositivo,sin usar la bConsola.

Bcopy.- hace una copia de un volumen a otro.

Bsmtp.- permite enviar emails a los operadores, siendo más flexible que lasherramientas de email del sistema.

Las primeras cuatro herramientas se usan desde la linea de comandos, mientras quebsmtp se usa generalmente desde el resource Messages en la configuración de Bacula.

Página.- 386

Page 389: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Para obtener información completa puede consultarse el manual de referencia en lapágina http://www.bacula.org/5.0.x-manuals/en/main/main/

10.7 Cuotas de disco. Límites, nivel de advertencia y compresión

La práctica totalidad de los sistemas operativos actuales incorporan herramientas quepermiten controlar y delimitar el uso de espacio de disco duro o el número de ficherospermitidos por usuario o grupo de usuarios. Así se evitan problemas como que un usuariopueda llegar a bloquear o ralentizar ocupando todo el espacio del disco duro. También permitedelimitar, por ejemplo, el espacio utilizado por los usuarios para buzón de correos.

Estos controles o delimitaciones se realizan haciendo uso de las llamadas cuotas dedisco que permiten gestionar los siguientes aspectos:

– Conocer el espacio de disco ocupado por un determinado usuario o grupo.

– Establecer, para usuarios o grupos, el límite de espacio en disco a ocupar o el númerode ficheros y directorios a crear; es la cuota propiamente dicha, límite soft o límitesuave.

– Generar un aviso para el usuario o para el administrador del sistema cuando el usuarioestá próximo a alcanzar la cuota asignada; es el denominado nivel de advertencia. Porejemplo, si un usuario tiene asignada una cuota de 500 Mb. y un nivel de advertenciade 50 Mb., el sistema operativo emitirá un mensaje de advertencia cuando el usuarioalcance una ocupación de disco de 450 Mb.

En algunos sistemas operativos el aviso se genera al alcanzar la cuota establecida(límite suave) aunque temporalmente admita que se sobrepase hasta alcanzar el límiteduro que se explica a continuación.

– Establecer un espacio de disco extra de sobrepaso de la cuota. Por ejemplo, un usuariocon una cuota de 500 Mb. y un límite de sobrepaso de 50 Mb. podrá llegar a utilizarun máximo de 550 Mb. Éste es el espacio sobre cuota, límite hard o límite duro, que elusuario no podrá rebasar puesto que el sistema operativo lo impedirá. Dependiendodel sistema operativo, el límite hard puede especificarse incluyendo el límite soft, detal forma que, para el caso anterior, el límite hard pasaría a ser 550 Mb.

– Establecer un periodo de tiempo durante el cual el sistema operativo mantendrá losdatos que se encuentran entre el límite soft y el hard. Transcurrido dicho periodo esosdatos serán eliminados.

Página.- 387

Page 390: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

En el apartado 4.2.2 se detalla cómo limitar el espacio disponible de disco (uso decuotas) para los usuarios.

Los sistemas de ficheros de tipo ext2, ext3, ext4, reiserfs, ufs, ntfs, etc. soportan laimplementación de cuotas de disco mientras que otros tipos como fat16, fat32, etc. no lasoportan.

Las cuotas de disco se asignan de forma independiente a cada sistema de ficheros,dependiendo de la gestión que quiera realizarse. Así, si se utiliza una partición para lascuentas de correo de ciertos usuarios, pueden implementarse las cuotas de disco para dichapartición exclusivamente.

Antes de habilitar el soporte para cuotas en un sistema de ficheros determinado, hayque asegurarse de que ningún proceso esté haciendo uso de dicho recurso. Para ello, esconveniente iniciar el sistema en nivel de ejecución monousuario. No se recomienda cambiara dicho nivel con la instrucción “init 1” puesto que no se asegura que algún proceso estéhaciendo uso del recurso.

Por cada sistema de ficheros al que se desee implementar la cuota, se deberán crear 4ficheros: quota.user, quota.group, aquota.user, aquota.group. Estos ficheros serán losresponsables de administrar las cuotas y llevar los índices de los ficheros de los usuarios ygrupos.

La compresión de ficheros no es un método que permita un uso más eficiente delespacio asignado al usuario dado que las operaciones de cálculo de ocupación se realizan conanterioridad a la compresión, cuando los ficheros aún se encuentran sin comprimir.

Página.- 388

Fig 149: Cuotas según diferentes sistemas operativos

Page 391: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

10.8 Actividades

1. Realizar una copia completa de varios ficheros, borrar los originales y recuperarlosdesde la copia, utilizando tar.

2. Recuperar parte de los ficheros contenidos en un archivo de copia utilizando tar.

3. Describir las diferencias entre la copia de seguridad incremental y la progresiva. Ponerun ejemplo.

4. Realizar una copia completa y después una incremental y la recuperación posterior delos ficheros, utilizando tar.

5. Realizar un proceso similar al anterior pero con copias progresivas.

6. Hacer una planificación de las copias de seguridad de una empresa con unascaracterísticas concretas en cuanto a información generada, usuarios, sucursales, etc.

7. Hacer una planificación de las copias de seguridad para el aula. Comprobar elfuncionamiento de la copia de seguridad y de la restauración haciendo uso de lasmáquinas virtuales.

8. Realizar con Keep (en vez de con tar) las actividades 1, 2 y 4.

9. Realizar con Sbackup las actividades 1, 2 y 4.

10. Realizar una copia de seguridad con Bácula haciendo uso del laboratorio de máquinasvirtuales.

11. Establecer cuotas de disco en una partición para unos determinados usuarios y grupos.Comprobar el correcto funcionamiento.

Página.- 389

Page 392: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

11 SERVICIO DE DIRECTORIO LDAP

11.1 Aspectos didácticos

Objetivos:

– Conocer un el servicio de directorio más extendido bajo Linux.– Instalar y ejecutar un servicio de autenticación centralizado y en red.

Documentación.

La documentación de este tema se ha elaborado consultando las fuentes:

– Capítulo 7 de la Guia del servidor de Ubuntu: Network authentication.– http://www.ite.educacion.es/formacion/materiales/85/cd/linux/m6/openldap.html es

una web de educación que contiene la instalación del servidor y de los clientes deforma muy pormenorizada.

Resumen.

En este tema se explica en qué consiste un servicio de directorio, un sistema deautenticación centralizado, y se realiza la instalación y prueba de la parte del servidor y de ladel cliente.

Temporización: 18 horas.

Página.- 390

Page 393: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

11.2 Introducción

LDAP, Lightweight Directory Access Protocol, es un protocolo para consultar ymodificar un servicio de directorio basado en el estándard X.500 que se ejecuta sobre TCP/IP.

La instalación conlleva una serie de operaciones en el lado del servidor, donde seinstala LDAP, y una serie de instalaciones y configuraciones para la autenticación en elcliente.

11.3 Instalación del servicio de directorio LDAP en el servidor

Para la instalación y configuración pueden utilizarse los siguientes datos:

– Nombre del equipo servidor: profe.– Nombre del equipo cliente: alumno.– Dominio: tiernogalvan.es– Dirección IP del servidor: 192.168.1.23.– Dirección IP del cliente: 192.168.1.24.

Los pasos a seguir pueden ser:

1. Es conveniente que root tenga asignada una clave para poder ejecutar, si fueranecesario, la instrucción “su root”.

2. Compruebo IP's. Establezco para el servidor la ip 192.168.1.23 y para el cliente192.168.1.24.

3. Compruebo ficheros /etc/hostname y /etc/hosts. Después de cambiar /etc/hostname esconveniente reiniciar el equipo. En caso contrario hasta gedit puede dar errores. Esconveniente que el fichero /etc/hosts de cada equipo contenga lineas como:

127.0.0.1 profe.tiernogalvan.es profe localhost192.168.1.24 alumno.tiernogalvan.es alumno

O lo que es lo mismo, que cada equipo conoce su nombre FQDN y el de los otros (eneste caso alumno.tiernogalvan.es y alumno).

4. Instalo con Synaptic el paquete “slapd” y los paquetes dependientes (libldap-2.4-2).Durante la instalación se solicita la contraseña del administrador, que no conviene quecoincida con la del administrador del sistema. Por ejemplo puede ser “nohay2sin3”.

De forma predeterminada el sufijo del directorio coincidirá con el dominio delservidor. Si el nombre FQDN del equipo es profe.tiernogalvan.es, el sufijo sera“dc=tiernogalvan,dc=es”. Si el equipo no tiene nombre de dominio el sufijo será

Página.- 391

Page 394: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

“dc=nodomain”. Esta información puede cambiarse con la instrucción:

sudo dpkg-reconfigure slapd

Ejecuto “dpkg-reconfigure slapd” para crear el primer usuario y contraseña quepermitirá administrar el directorio con los valores:

¿Desea omitir la configuración del servidor OpenLDAP...: NO.DNS domain name.............................................................: tiernogalvan.esOrganization name..............................................................: tiernogalvan.esDatabase backend to use.....................................................: HDBBorrar la base de datos cuando se purgue slapd..................: NODesea mover la base de datos antigua.................................: SIContraseña del administrador..............................................: nohay2sin3Allow LDAPv2 protocol.....................................................: NO

Las bases de datos generadas están en /var/lib/ldap

5. Instalo ldap-utils para permitir la ejecución de algún comando en un momento dado.

6. Instalo ldap-account-manager y ldap-account-manager-lamdaemon (y susdependencias). Este último (al parecer) es necesario solamente si los directorios detrabajo de los usuarios van a estar en el servidor y/o va a manejar quotas de disco.

7. (Este paso en la versión de Ubuntu 14.04 no es necesario porque el parámetro vieneasignado con 128 M) Modifico en el fichero /etc/php5/apache2/php.ini la asignación ala variable “memory_limit” estableciendo “memory_limit = 64M”. Para que elparámetro se tome en consideración hay que reiniciar apache2:

su root- se introduce la clave de root -gedit /etc/php5/apache2/php.ini- se modifica el valor y se guarda el fichero -/etc/init.d/apache2 restart

8. Se lanza la ejecución de ldap-account-manager a través del explorador de internet,especificando la dirección “http://localhost/lam”.

Página.- 392

Page 395: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

9. Se configura LAM cambiando los valores:

Language: Español

Configuración de LAM:

Editar la configuración general (contraseña inicial por defecto = “lam”):

Equipos permitidos....: *.*.*.*Contraseña maestra: nohay2sin3

Editar perfiles del servidor (se guarda en /usr/share/ldap-account-manager/config/lam.conf):

Sufijo del árbol: dc=tiernogalvan,dc=es

Se encuentran disponibles, por si quieren activarse, los tipos de cuentas:

- Grupos de cuentas- Mail aliases- DHCP

Se encuentran activos los siguientes tipos de cuentas (con sus atributos):

- Users (User account)LDAP suffix: ou=people,dc=tiernogalvan,dc=esList attributes: #uid;#givenName;#sn;#uidNumber;#gidNumber

- Groups (Group account)LDAP suffix: ou=group,dc=tiernogalvan,dc=es

Página.- 393

Fig 150: http://localhost/lam

Page 396: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

List attributes: #cn;#gidNumber;#memberUID;#description

- Hosts (Host account)LDAP suffix: ou=machines,dc=tiernogalvan,dc=esList attributes: #cn;#description;#uidNumber;#gidNumber

(La siguiente entrada puede ser borrada de los tipos activos)

- Samba domains (Samba 3 domain entries)LDAP suffix: ou=domains,dc=tiernogalvan,dc=esList attributes: sambaDomainName:Domain name;sambaSID:Domain SID

Idioma por defecto.........: EspañolLista de usuarios válidos: cn=admin,dc=tiernogalvan,dc=es(con el usuario Manager no he conseguido conectarme)Contraseña......................: nohay2sin3

Edit self service (se graba en default.user):

Sufijo LDAP: ou=people,dc=tiernogalvan,dc=esLDAP password: nohay2sin3

10. Crear las unidades organizativas propuestas: (domains?), group, machines, People.

11. Crear el grupo “grprueba”.

12. Crear el usuario “usprueba01” con clave usprueba01.

13. Crear las máquinas Ubuntu-profe y Ubuntu-alumno.

14. Se puede comprobar el funcionamiento mediante una consulta como:

ldapsearh -xLLL -b “dc=tiernogalvan,dc=es” uid=usprueba01 givenName cn

-x para que no se use el método de autenticación que se usa por defecto SASL-LLL inhabilita la visualización de información del esquema LDIF.

slapd envía información de conexión al fichero /var/log/syslg

La autenticación requiere acceso al campo de contraseña, que no debería ser accesiblede forma predeterminada. Además, para que los usuarios puedan cambiar su propiacontraseña usando “passwd” u otras utilidades, shadowLastChange debe ser accesibleuna vez que el usuario se haya autenticado.

Página.- 394

Page 397: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Para ver la lista de control de accesos (Access Control List – ACL) puede ejecutarse:

ldapsearch -xLLL -b cn=config -D cn=admin,cn=config -W olcDatabase=hdbolcAccess

15. Para una autenticación cifrada debería configurarse TLS y/o SSL (Ver 6.1.6).

11.4 Instalación y configuración de la autenticación en el cliente

Una vez que ya está trabajando correctamente el servidor de LDAP, hay que instalarunas librerías en el cliente para que pueda conectar con el servidor. Pero antes de proceder conla instalación es conveniente revisar la configuración IP, el fichero /etc/hostname (reiniciar sies necesario) y /etc/hosts que contendrá los nombres tanto del propio equipo como los delservidor en líneas como:

127.0.0.1 alumno.tiernogalvan.es alumno localhost192.168.1.23 profe.tiernogalvan.es profe

Una vez realizadas las comprobaciones oportunas pueden realizarse los pasos:

1. Instalar la librería libnss-ldap con la instrucción:

sudo apt-get install libnss-ldap

Durante la instalación solicitará algunos datos del servidor:

URI del servidor LDAP...: ldapi://192.168.1.23 (por defecto ldapi:///)Nombre distinguido de la base de búsqueda: dc=tiernogalvan,dc=esVersión de LDAP a usar: 3Administrar de forma local la base de datos raiz: SIRequiere login la base de datos LDAP: NOCuenta LDAP para el usuario root: cn=admin,dc=tiernogalvan,dc=es

Cuenta utilizada por root para cambiar contraseñas, ...Contraseña de la cuenta de root en ldap: nohay2sin3

La contraseña queda en /etc/ldap.secret

Para modificar cualquiera de estos datos habría que ejecutar:

sudo dpkg-reconfigure ldap-auth-config

Los datos introducidos quedan en el fichero de configuración /etc/ldap.conf y puedenmodificarse en cualquier momento.

Página.- 395

Page 398: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

2. Configurar el entorno de LDAP para NSS con la instrucción:

sudo auth-client-config -t nss -p lac_ldap

3. Configurar el sistema para usar LDAP en la autenticación con:

sudo pam-auth-update

seleccionando todos los módulos que se muestran.

4. Configurar lightdm o gdm para que muestre los nombres de los usuarios: menuAplicaciones – Sistema – Administración – Ventana de entrada – ficha “Local” -seleccionar “GNOME Feliz con visor” o “Human List”.

Sigo las instrucciones del manual... y todo funciona correctamente. Para centralizar losdirectorios de trabajo, usando NFS, sigo los siguientes pasos:

1. En el servidor LDAP creo el fichero /home/LDAP. Para probar le asigno todos lospermisos con “chmod a+rwx /home/LDAP”. Debería probarse el funcionamiento conrwxr-xr-x.

2. Instalo nfs-kernel-server con “sudo apt-get install nfs-kernel-server”.

3. Comparto el directorio /home/LDAP añadiendo la siguiente linea al fichero/etc/exports:

/home/LDAP (insecure,rw,nohide)

o bien una como:

/home/LDAP 192.168.10.*(insecure,rw,sync,nohide)

Webmin exporta sin generar problemas de acceso.

4. Lanzo la ejecución del servidor con “/etc/init.d/nfs-kernel-server start”.

5. En el cliente creo el directorio /home/LDAP. En principio se asignan todos lospermisos pero debe probarse el recorte del punto 1.

6. Comprobar que en el cliente está instalado “nfs-common”.

7. Ejecutar “sudo mount 192.168.10.16:/home/LDAP /home/LDAP”. Para que eldirectorio se monte en el arranque puede ponerse una línea en el fichero /etc/fstab, quetendrá una forma parecida a:

Página.- 396

Page 399: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

192.168.10.16:/home/LDAP /home/LDAP nfs rw,user

Página.- 397

Page 400: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

ANEXO 1. INSTALACIÓN DE WEBMIN

Webmin es un software que permite configurar un gran número de servicios delsistema (inicio y parada, sistemas de archivos, ...), servicios de servidor y de cliente (Apache,MySQL, SSH, ...), servicios de red (configuración de tarjetas, NFS, NIS, ...), etc., etc.,mediante un interface web.

Para llevar a cabo la instalación es conveniente comprobar si se encuentra en losrepositorios que se configuran por defecto durante la instalación de MaX. Basta con escribir“webmin” en el campo de “Busqueda rápida” del gestor de paquetes Synaptic. Si webmin seencuentra en la lista de paquetes de Synaptic su instalación es similar a cualquier otropaquete.

Si webmin no se encuentra en la lista, podrá bajarse de http://www.webmin.com. Detodas las versiones o formatos que se pueden descargar (RPM, Debian Package, TAR file, …)la referente a “Debian Package” se ha probado que funciona correctamente en MaX. Al pulsarsobre esta opción se descarga un fichero cuyo nombre será de la forma:

webmin_version_all.deb

Pulsando con el botón derecho sobre el fichero y eligiendo la opción “Abrir coninstalador de paquetes Gdebi”, se instala correctamente.

Su ejecución se efectúa desde el explorador de internet especificando la dirección:

https://localhost:10000

e introduciendo como usuario “root” y su contraseña.

Si al lanzar la ejecución se produce la alerta:

https://localhost:10000 usa un certificado de seguridad no válido

deberá incluirse en el explorador una excepción. Para ello se solicita la página web:

https://127.0.0.1:10000

aparecerá la misma alerta pero la página mostrada permitirá elegir “añadir una excepción”. Acontinuación pedirá la dirección sobre la que obtener el certificado y deberá especificarse“https://localhost:10000”. Se confirma la excepción de seguridad, se cierra el explorador, sevuelve a abrir y webmin fucionará correctamente. En la parte inferior de la página, webminmostrará si existen actualizaciones disponibles y podrán instalarse siguiendo las indicaciones.

Se recomienda realizar un recorrido por las opciones que presenta y cambiar el idioma.

Página.- 398

Page 401: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

ANEXO 2.- INFORMACIÓN ADICIONAL SOBRE EL SERVICIO NIS

El fichero /etc/yp.conf se utiliza para indicar a ypbind con qué servidor debecomunicarse. Algunos ejemplos de las posibles formas de hacerlo son:

ypserver 192.168.10.16ypserver MaX60_Sypserver MaX60_S.tiernogalvan.esdomain tiernogalvan.es server MaX60_Sdomain tiernogalvan.es broadcast

En el último ejemplo ypbind enviará una petición a toda la red y le podrá respondercualquier servidor.

En el fichero /etc/nsswitch.conf se especifica la información que podrá ser consultada.Si se desea utilizar primero la información proporcionada por NIS y a continuación la de losficheros locales puede contener lineas de la forma:

passwd: nis compatgroup: nis compatshadow: nis compat

No es conveniente especificar solamente “nis” porque si falla ypbind o el servidor NISno se podrá iniciar una sesión en la máquina.

Otra forma de indicar que debe realizarse la consulta a través de NIS es modificandolos ficheros /etc/passwd, /etc/group y /etc/shadow.

En /etc/passwd se añade al final una línea de la forma:

+::::::

El “+” indica que debe hacerse uso de NIS para consultar los datos que faltan que sonlos campos vacíos. El hecho de situar la línea en la última posición permite consultar losusuarios locales sin tener que hacer uso de NIS.

Puede prohibirse el acceso de ciertos usuarios mediante líneas de la forma:

-usuario01::::::-usuario02+::::::

usuario01 y usuario02 tienen denegado el acceso.

Página.- 399

Page 402: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

En el caso de que lo que se desee sea dar acceso a un número muy restringido deusuarios puede utilizarse la forma:

+usuario03::::::+usuario04::::::+::::::/bin/false

usuario03 y usuario04 tendrán acceso pero los demás no.

A los ficheros /etc/group y /etc/shadow se les añade respectivamente una línea con elcontenido “+:::” y “+::::::::”.

Si el sistema hace uso de GSHADOW, hay que adaptar el fichero /etc/gshadow deforma similar a /etc/group.

Para que los cambios surtan efecto debe reiniciarse el servicio nis.

Para crear un servidor esclavo hay que realizar ciertas configuraciones en el servidormaestro:

– En el archivo /var/yp/Makefile hay que cambiar el valor de la variable NOPUSH a“false” (NOPUSH=”false”).

– En el archivo /var/yp/ypservers se añaden los nombres de los servidores esclavos. Estaoperación puede realizarse con la instrucción “sudo /usr/lib/yp/ypinit -m”, quetambién reconstruye los mapas.

– En /etc/hosts se añadirán las IP's y nombres de los servidores esclavos.

– Para que el servidor esclavo reciba los datos del servidor maestro, se deberá ejecutar“sudo /etc/init.d/nis restart” en el servidor esclavo.

La configuración del servidor esclavo se realiza de la forma:

Se configura el servidor esclavo de forma similar al servidor maestro, teniendo encuenta que:

– El archivo /etc/hosts tiene los valores adecuados.

– El archivo /etc/defaultdomain tiene el nombre del dominio.

– El fichero /etc/default/nis contiene una linea con “NISSERVER=slave”.

– Reiniciar el servicio nis con “sudo /etc/init.d/nis restart”.

Página.- 400

Page 403: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

– Ejecutar:

sudo ypservsudo /usr/lib/yp/ypinit -s nombre_servidor_maestro

El servidor maestro utiliza el programa “yppush” para notificar a los servidoresesclavos que hagan copia de los datos utilizando el programa “ypxfr”. En caso de que en esemomento no se pueda realizar la copia los servidores esclavos no se actualizarán ya que elservidor maestro no volverá a enviar los datos hasta que se modifiquen sus ficheros y seejecute la instrucción “make” (/var/yp/Makefile). Para evitar estos desajustes es convenienteplanificar transferencias en los servidores esclavos, pudiéndose utilizar para ello los scripts“/var/lib/yp/ypxfr_1perday”, que transfire todos los mapas, “/var/lib/yp/ypxfr_2perday, quetransfiere los mapas que más suelen cambiar, y /var/lib/yp/ypxfr_1perhour, parecido alanterior.

Un ejemplo de una entrada en el servicio cron, que permite programar la realizaciónde tareas de forma periódica, sobre el archivo /etc/cron.d/nis puede ser:

15 * * * * root /usr/lib/yp/ypxfr_1perhour > /dev/null 2>&130 3 * * * root /usr/lib/yp/ypxfr_1perday > /dev/null 2>&150 3,23 * * * root /usr/lib/yp/ypxfr_2perday > /dev/null 2>&1

En el servidor maestro, el fichero /var/yp/Makefile contiene la configuración de losmapas y variables que se exportan. Un ejemplo de una parte de dicho archivo sería:

# Makefile for the NIS Database## Dar a la siguiente variable el valor “-b” si el servicio nis va a ser consultado# por maquinas de otros dominios …#B=-bB=DIR =/var/yp/etc#RBACDIR=/etc/securityPWDIR =/var/yp/etcDOM = `dominio`#NOPUSH = “”NOPUSH =falseALIASES = /var/yp/etc/mail.aliasesYPDIR = /var/yp. . . .

Es interesante ojear el fichero para comprobar el tipo de información que contiene.Puede resultar interesante modificar algunas variables como por ejemplo MINGUID para quese propaguen grupos cuyo GID sea menor de 1000, poniendo dicha variable a valor 1.

Página.- 401

Page 404: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Cada vez que se realicen cambios en este fichero o se modifiquen las cuentas deusuario, grupo, etc., debe ejecutarse el fichero utilizando una de las instrucciones siguientes:

sudo make -C /var/ypcd /var/yp; sudo make

La instrucción “ypinit -m” crea los mapas e inicializa el servidor (-m = maestro)solicitando una lista de servidores esclavos. A continuación se ejecuta “ypserv” paraestablecer el servidor.

NIS dispone de una utilidad llamada “netgroups” que permite o deniega accesos o daprivilegios a grupos. Estos grupos se definen en /etc/netgroup o donde indique el ficheroMakefile. Un ejemplo de dicho fichero puede ser:

grupo1 (equipo1, usuario1, dominio) (equipo2, , )grupo2 (equipo2,-,-) (equipo3,-,-)grupo3 grupo1 grupo2

El grupo puede definirse de dos formas:

La primera consiste en colocar entre paréntesis 3 campos separados por comas con elnombre del equipo, el del usuario y el del dominio. El espacio vacío significa permitir a todosy el guión a ninguno.

La segunda consiste en definir un grupo como una lista de grupos.

El cliente puede establecer el “netgroup” que va a importar agregando una entrada alfichero /etc/passwd con la forma: “+@grupo1:::::::”.

Algunas instrucciones y procesos interesantes son:

ypserv.- Proceso del servidor NIS.ypbind.- Proceso del cliente NIS.domainname.- Establece el nombre del dominio al que pertenece una máquina.ypxfr.- Descarga los mapas actualizados del servidor.ypxfrd.- Maneja en el servidor las peticiones de ypxfr.yppush.- Hace que los mapas se actualicen en los servidores esclavos.makedbm.- Construye un archivo hash desde un archivo plano.ypmake.- Reconstruye los mapas de hash una vez que se han actualizado.ypinit.- Configura un equipo como servidor maestro o esclavo.ypset.- Hace que ypbind se conecte a un servidor específico.ypwhich.- Muestra el servidor en uso. Ej.: ypwhich - m passwd.yppoll.- Muestra la versión de los mapas en uso.ypcat.- Muestra los valores de los mapas.ypmatch.- Muestra las entradas para un argumento especificado.yppasswd.- Cambia una contraseña en el servidor maestro.

Página.- 402

Page 405: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

ypchfn.- Cambia el GECOS en el servidor maestro.ypchsh.- Cambia el shell por defecto en el servidor maestro.yppasswdd.- Servidor para yppasswd, ypchsh e ypchfn.ypupdated.- Servidor para la actualización de mapas.ypdomainname.- Permite conocer el dominio NIS.getent.- Recupera una entrada. Ej.: getent passwd usuario.

En el fichero /etc/ypserv.securenets del servidor se definen los equipos, clientes yservidores esclavos, que pueden acceder al servidor. Pueden especificarse líneas que haganreferencia a equipos concretos o a subredes, como las mostradas a continuación:

host 192.168.10.17255.255.255.0 192.168.10.0

Se recomienda comentar la línea incluida por defecto y que otorga permisos a todoslos equipos: “# 0.0.0.0 0.0.0.0”.

NIS es un servicio que debe estar perfectamente controlado o de lo contrario se podrátener acceso a los ficheros que contienen las claves de acceso de las cuentas de usuario.Aunque dichas claves estén encriptadas tienen un texto plano o serie de caracteres asciiequivalente que puede utilizarse a través de programas para realizar la autenticación. Esconveniente, pues, tomar ciertas medidas para restringir el acceso, como pueden ser:

– Permitir solamente a los miembros del dominio la comunicación con los serviciosapropiados especificándolo en /etc/hosts.allow. Esto implica que en /etc/hosts.deny sedeniega el acceso a cualquiera con “ALL: ALL” para que las restricciones tenganefecto.

– Limitar a quién responderá el servidor estableciendo los miembros del dominio en/etc/ypserv.securenets.

– Tambien, quizá de forma alternativa, se puede activar la verificación de claves NISdesde procesos no privilegiados añadiendo al fichero /etc/ypserv.conf la siguientelínea, colocada delante de otras líneas referidas a shadow.byname:

ip_del_servidor : * : shadow.byname : none

lo que hará que información relativa a las claves shadow esté disponible para cualquierproceso del servidor y se pueda limitar el acceso apropiadamente.

– Restringir los puertos de escucha de los servicios yp especificandolos en el fichero/etc/default/nis:

# Additional options to be given to ypserv when it is started.YPSERVARGS=”- p 834”

Página.- 403

Page 406: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

# Additional options to be given to ypbind when it is started.YPBINDARGS=”- p 835”

# Additional options to be given to yppasswdd when it is started. Note# that if -p is set then the YPPWDDIR above should be empty.YPPASSWDDARGS=”- - port 836”

# Additional options to be given to ypxfrd when it is started.YPXFRDARGS=”- p 837”

En el firewall se establece que solamente los equipos de la red (Ej.: 192.168.10.0/24)puedan acceder al servidor:

iptables -A INPUT - p ALL - s! 192.168.10.0/24 - - dport 834 - j DROPiptables -A INPUT - p ALL - s! 192.168.10.0/24 - - dport 835 - j DROPiptables -A INPUT - p ALL - s! 192.168.10.0/24 - - dport 836 - j DROPiptables -A INPUT - p ALL - s! 192.168.10.0/24 - - dport 837 - j DROP

Esos puertos, según IANA, no están asignados a ningún servicio.

Así, el acceso queda restringido a unas direcciones IP concretas, pero todavía puedeocurrir que alguien “pinche” alguna de las máquinas de la red, tome su dirección IP yacceda al fichero de claves. Para intentar evitar este problema puede recurrirse a IPSecpara que el tráfico sea encriptado y se haga uso de las claves de desencriptación.

Para dar privilegios para utilizar audio y video simplemente hay que añadir al usuarioal grupo correspondiente en el fichero /etc/group. Puesto que añadir un usuario al grupo audiotiene ciertos riesgos, puede utilizarse en el servidor NIS la siguiente alternativa:

Añadir el usuario al grupo audio (grupo 29). Si por ejemplo el usuario tiene uid=1000y gid=1000 la instrucción será: usermod -g 1000 - G 20,24,25,29,44,46,100 usuario

Asignar en /var/yp/Makefile “MINGID=1”.

Regenerar los mapas NIS con “sudo make -C /var/yp”.

Así se exportarán desde el servidor NIS la totalidad de los grupos, el audio funcionarácorrectamente y podrá ser verificado desde el cliente con la instrucción “id usuario”,que mostrará algo como:

uid=1000(usuario) gid=1000(usuario)groups=1000(usuario),20(dialout),24(cdrom),25(floppy),29(audio),44(video) . . .

Página.- 404

Page 407: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

ANEXO 3.- GRUB LEGACY (VERSIÓN 0.97)

Existen varios programas gestores de arranque siendo uno de los más conocidos eldenominado GNU GRUB (Grand Unified Bootloader). La primera versión, denominadaGRUB Legacy, consta de varias etapas diferenciadas:

– stage1.- Es la primera etapa de grub y comienza una vez que la BIOS carga enmemoria el contenido del MBR. Consiste en la ejecución de las instrucciones cargadasy su única finalidad es cargar las instrucciones que tienen que ejecutarse acontinuación y que corresponden a la siguiente etapa. Cuando se instala grub, ademásde copiar stage1 en el MBR, se hace una copia de los 512 bytes en un ficherollamado /boot/brub/stage1. Puede comprobarse que dicho fichero tiene 512 bytes ypuede ser copiado al sector 0 con la instrucción:

sudo dd if=fichero_mbr of=/dev/sda bs=1 count=512

– stage1_5.- Esta etapa es de reciente creación y su única función ha sido resolveralgunas incompatibilidades surgidas a raíz de la aparición de discos de muy altacapacidad (con un nº de sectores muy alto) y para incluir nuevos sistemas de ficherosno contemplados anteriormente. Antes de su aparición, stage1 cargaba directamentestage2; ahora stage1 carga stage1_5 y ésta carga stage2.

Se localiza en la pista cero del disco duro, justo a continuación del MBR, y ocupacomo máximo el resto de la pista. En principio, la pista cero estaba muy poco utilizadapuesto que, como se desprende de la estructura lógica del disco, su función es contenerúnicamente el MBR, cuya ocupación es de 512 bytes, desperdiciándose el resto de lamisma.

Su ocupación no es siempre la misma, depende del tipo de disco y del sistema deficheros. En el directorio /boot/grub se crean distintas copias de los programasrelativos a esta etapa según diferentes sistemas de ficheros. Los nombres de estosficheros comienzan por el tipo de sistema de ficheros y finalizan con “_stage1_5”.

– stage2.- Es cargada por stage1_5 o, en su defecto, por stage1. Sus instruccionesmuestran un menú con los diferentes sistemas operativos y núcleos de sistemasoperativos que se pueden iniciar, permiten la elección de una de las opciones y carganen memoria las siguientes instrucciones a ejecutar, a las que ceden el control delsistema. Dado que stage2 puede acceder directamente a una gran variedad de sistemasde ficheros, sus instrucciones pueden ejecutar la carga de:

• las instrucciones situadas en un determinado sector de una partición, que sueleconsistir en el sector de arranque de una partición. Así, pueden lanzar la ejecuciónde un cargador de arranque de Windows e incluso de un nuevo stage1, que seránlos encargados de continuar con el proceso de inicio.

Página.- 405

Page 408: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

El primer caso es muy común. Un equipo con una partición primaria con unsistema operativo Windows, con las etapas del inicio muy simples: la BIOS cargay cede el control al MBR; éste carga y cede el control al cargador de arranque delsector de arranque de la partición de Windows; y éste carga y cede el control alprimer fichero de Windows que inicia la carga del sistema operativo. Ahora seinstala MaX, que reemplazará el MBR por el stage1 de grub.

Si ahora se instala MaX, se reemplazará el MBR por el stage1 de grub. Al iniciarahora el equipo, grub mostrará una opción para arrancar Windows y otra para Max.Si se elije Windows, grub continuará la carga del sector de arranque de la particiónde Windows, exactamente igual que lo hacía el MBR antes de instalar MaX. Si seelije MaX, el stage2 cargará el fichero correspondiente al núcleo de MaX.

Página.- 406

Fig 151: Arranque de Windows

Fig 152: Arranque de Linux y Windows

Fig 153: Arranque de varios Linux y Windows

Page 409: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

El segundo caso, que desde un stage2 se cargue un stage1 situado, no en el MBRque es lo más común, sino en el sector de arranque de otra partición, que a su vezcargará el stage2 de esa partición para que éste cargue el núcleo del S.O., pudiendoel stage2 inicial cargar dicho núcleo, es más extraño y se realiza cuando en unequipo con varios linux se desea visualizar la pantalla inicial (splash) quecaracteriza al linux seleccionado.

• Un fichero situado en un determinado directorio de una partición, que sueleconsistir en el primer fichero a cargar de un S.O. y que normalmente es unadeterminada versión del núcleo del S.O. Es la forma natural de inicio de MaX.

El stage2 está compuesto por varios ficheros situados en /boot/grub, entre los que seencuentran el propio stage2 y dos ficheros de configuración: menu.lst y device.map.

/boot/grub/device.map es un fichero muy sencillo cuya función es traducir losnombres de dispositivo utilizados por la BIOS y GRUB a nomenclatura linux. Así, esmuy común que su contenido sea una sola línea como la siguiente:

(hd0) /dev/sda

/boot/grub/menu.lst contiene la información relativa a las particiones y a los sistemasoperativos arrancables desde grub, como puede comprobarse en la sección “Ejemplode fichero /boot/grub/menu.lst” de este mismo apartado.

Además, GRUB dispone de un interprete de comandos o shell que permite laejecución de algunas instrucciones relativas al control del inicio del equipo, permitemodificar todos los parámetros de arranque antes del proceso de inicio, lo que permiteresolver los errores cometidos al editar el archivo de menú (menú,lst). Puedenintroducirse los comandos de arranque de forma interactiva y se puede averiguar lasituación del kernel y de initrd antes de arrancar, posibilitando el arranque de unsistema operativo instalado para el que todavía no existe ninguna entrada en laconfiguración del cargador de arranque. Finalmente, la shell de GRUB proporcionauna emulación de GRUB en el sistema instalado, lo que permite su instalación oprobar configuraciones nuevas antes de aplicarlas.

Página.- 407

Fig 154: Arranque de varios Linux y Windows

Page 410: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

El menú de arranque de GRUB

Tras la pantalla de bienvenida con el menú de arranque se encuentra el archivo deconfiguración de GRUB, /boot/grub/menu.lst. Este archivo contiene toda la información sobretodas las particiones o sistemas operativos que pueden ser arrancados con ayuda del menú.

En cada arranque del sistema, GRUB vuelve a leer el archivo de menú del sistema dearchivos. Por lo tanto, no hay ninguna necesidad de actualizar GRUB después de modificar elarchivo. Más adelante se verán diferentes formas de modificar el fichero de menú.

Este archivo de menú contiene comandos de sintaxis muy sencilla. Cada línea incluyeun comando seguido de los parámetros opcionales separados por espacios en blanco, al igualque en la shell. Por razones históricas, algunos comandos tienen un signo = como primerparámetro. Las líneas de comentarios comienzan con #.

Para reconocer las entradas de menú en la vista del menú, debe dar un título o title acada entrada. El texto que aparece tras la palabra clave title será mostrado (incluyendoespacios en blanco) en el menú como opción para seleccionar. Después de seleccionar unaentrada determinada del menú, se ejecutarán todos los comandos que se encuentren antes delsiguiente title.

El caso más sencillo es la ramificación al cargador de arranque de otro sistemaoperativo. El comando es chainloader y el argumento suele ser el sector de arranque de otrapartición, por ejemplo:

chainloader (hd0, 3)+1

donde hd0 hace referencia al primer disco duro, el 3 a la cuarta partición y el +1 al primerrector.

Con el comando “kernel” se puede especificar una copia o imagen del kernel (kernelimage). El primer argumento es la ruta a la copia del kernel de una partición. El resto de losargumentos mostrarán el kernel en la línea de comandos. Si en el kernel no está compilado elcontrolador adecuado para el acceso a la partición root, se debe introducir initrd. Aquí se tratade un comando GRUB que tiene la ruta al archivo initrd como único argumento. Puesto que ladirección de carga del initrd se encuentra en la copia del kernel cargada, el comando “initrd”debe seguir a “kernel”.

El comando “root” facilita la especificación de los archivos del kernel y de initrd. roottiene como único argumento un dispositivo GRUB o una partición de éste. Todas las rutas delkernel, de initrd o de otros archivos en las que no se ha introducido explícitamente undispositivo, anticiparán el dispositivo hasta el siguiente comando “root”.

Al final de cada entrada de menú se encuentra implícito el comando “boot”, por lo queno es necesario escribirlo en el archivo de menú. Si tiene ocasión de utilizar GRUB de formainteractiva en el arranque, debe introducir el comando “boot” al final. “boot” no tieneargumentos, simplemente controla la copia cargada del kernel o el chainloader indicado.

Página.- 408

Page 411: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Si ha introducido todas las entradas de menú, debe fijar una entrada comopredeterminada o “default”. De no ser así, se utilizará la primera (entrada 0) como valorpredeterminado. También tiene la posibilidad de asignar un tiempo de espera en segundos(timeout) antes de que se inicie el arranque de la opción predeterminada. “timeout” y“default” normalmente preceden a las entradas de menú.

Convención de nombres para discos duros y particiones

Para denominar a los discos duros y particiones, GRUB utiliza convenciones distintasa las ya conocidas de los dispositivos Linux normales. La numeración de las particiones enGRUB empieza por cero. (hd0,0) corresponde a la primera partición en el primer disco duro.En una estación de trabajo ordinaria a la que esté conectado un disco como “Primary Master”,el nombre de dispositivo es /dev/hda1.

Las cuatro particiones primarias posibles ocupan los números de particiones 0 a 3.Las particiones lógicas se designan con los números a partir de 4:

(hd0,0) Primera partición primaria en el primer disco duro.(hd0,1) Segunda partición primaria.(hd0,2) Tercera partición primaria.(hd0,3) Cuarta partición primaria (normalmente partición extendida).(hd0,4) Primera partición lógica.(hd0,5) Segunda partición lógica.

GRUB no distingue entre dispositivos IDE, SCSI o RAID. Todos los discos durosdetectados por la BIOS u otras controladoras se numeran según el orden de arranque definidoen la BIOS. El problema en GRUB es que no resulta fácil realizar la correspondencia entre losnombres de dispositivo Linux y los nombres de dispositivo de la BIOS. GRUB utiliza unalgoritmo para generar esta correspondencia y la guarda en el archivo device.map que puedeser editado.

Una ruta completa de GRUB consta de un nombre de dispositivo que se escribe entreparéntesis y de la ruta del archivo del sistema de archivos a la partición indicada. Al principiode la ruta se coloca una barra. Por ejemplo, en un sistema con un solo disco duro IDE y Linuxen la primera partición, el kernel arrancable será:

(hd0,0)/boot/vmlinuz

Ejemplo de fichero /boot/grub/menu.lst

Para comprender mejor la estructura de un archivo de menú GRUB, presentamos acontinuación un breve ejemplo. El sistema de nuestro ejemplo contiene una partición dearranque de Linux en /dev/hda5, una partición root en /dev/hda7 y un sistema Windows en/dev/hda1.

Página.- 409

Page 412: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

gfxmenu (hd0,4)/message# hiddenmenucolor white/blue black/light-graydefault 0timeout 10

title MaXkernel (hd0,4)/vmlinuz root=/dev/hda7 vga=791initrd (hd0,4)/initrd

title Windowschainloader (hd0,0)+1

title Floppychainloader (fd0)+1

title Failsafekernel (hd0,4)vmlinuz.shipped root=/dev/hda7 ide=nodma \apm=off acpi=off vga=normal nosmp maxcpus=0 3initrd (hd0,4)/initrd.shipped

El primer bloque se ocupa de la configuración de la pantalla de bienvenida:

– gfxmenu (hd0,4)/message.- La imagen de fondo se encuentra en /dev/hda5 y se llamamessage.

– # hiddenmenu.- El carácter “#” convierte la instrucción en un comentario. hiddenmenuocultaría el menú de opciones. Se utiliza cuando solamente existe un único S.O. conun único núcleo para arrancar y no resulta interesante tener que seleccionarlo. Paramostrar el menú hay que pulsar la tecla <Esc>.

– color white/blue black/light-gray.- El esquema de colores: blanco (primer plano), azul(fondo), negro (selección) y gris claro (fondo de la selección). El esquema de coloresno se ve reflejado en la pantalla de bienvenida sino en el menú de GRUB al queaccede tras salir de ella con <Esc>.

– default 0.- Por defecto se arranca la primera entrada del menú con title MaX.

– timeout 10.- Si transcurren 10 segundos sin que el usuario realice ninguna acción,GRUB arrancará automáticamente.

El segundo bloque (y también el más grande) contiene una lista con los diversossistemas operativos arrancables. Las secciones para cada sistema operativo comienzan con laentrada title.

Página.- 410

Page 413: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

– La primera entrada (title MaX) se encarga del arranque de MaX. El nucleo o kernel(vmlinuz) se encuentra en la primera partición lógica (aquí la partición de arranque)del primer disco duro. Aquí se añaden los parámetros del kernel como laespecificación de la partición raíz, el modo VGA, etc. La definición de la particiónraíz se realiza de acuerdo con el esquema Linux (/dev/hda7/), ya que esta informaciónva dirigida al kernel y no tiene mucha relación con GRUB. Initrd se encuentra tambiénen la primera partición lógica del primer disco duro.

– La segunda entrada se ocupa de cargar Windows. Este sistema operativo se iniciadesde la primera partición del primer disco duro (hd0,0). La carga y ejecución delprimer sector de la partición especificada se controla por medio de chainloader +1.

– La siguiente sección permite el arranque desde un disquete sin tener que cambiar laconfiguración de la BIOS.

– La opción de arranque Failsafe sirve para iniciar Linux con una selección determinadade parámetros del kernel que permiten el arrancar Linux incluso en sistemasproblemáticos.

El archivo de menú puede modificarse en cualquier momento mediante el uso de uneditor; GRUB lo aplicará automáticamente la próxima vez que arranque el sistema. Paraefectuar cambios temporales, puede hacerse de forma interactiva con la función de edición deGRUB, como se explica a continuación.

Otras opciones interesantes que pueden utilizarse dentro de menu.lst son:

– password.- permite proteger con contraseñas el menu o alguna de las entradas delmismo.

– splashimage.- permite especificar la imagen de fondo del menú de arranque. Laimagen debe tener un máximo de 14 colores y un tamaño de 640 x 480 pixeles, debetener formato xpm y es conveniente (no imprescindible) que esté comprimida con gzip(.gz).

Con Gimp se puede saber el número de colores de una imagen a través de las opcionesColores – Info – Análisis del cubo de color …, y se puede reducir con Imagen – Modo– Indexado.

Para especificar en menu.lst el nombre de la imagen pondríamos al principio delfichero:

splashimage=(hd0,nº_de_particion)/ruta/nombre.xpm.gz

El nº de partición se puede conocer mediante la instrucción:

fdisk -l

Página.- 411

Page 414: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

Modificar las entradas del menú durante el proceso de arranque

Por medio de las teclas de cursor puede seleccionar en el menú gráfico de GRUB elsistema operativo que desea arrancar. Si selecciona un sistema Linux, puede añadir suspropios parámetros en el cursor de arranque. Si pulsa <Esc> para salir de la pantalla debienvenida e introduce a continuación “e” (edit), podrá editar directamente cada una de lasentradas del menú. Ahora bien, los cambios realizados sólo tienen validez para ese proceso dearranque y no se adoptarán de forma permanente. Hay que tener en cuenta que al arrancar setrabaja con el teclado norteamericano que tiene asignados los caracteres especiales en teclasdiferentes al español.

Después de activar el modo de edición, seleccione por medio de las teclas de cursor laentrada del menú cuya configuración desea modificar. Para acceder a la configuración enmodo de edición ha de volver a pulsar “e”. De este modo, puede corregir datos incorrectos delas particiones o rutas antes de que los fallos repercutan negativamente en el proceso dearranque. Para salir del modo de edición y volver al menú de arranque pulse <Intro>. Acontinuación arranque esa entrada por medio de “b”. Un texto de ayuda en la parte inferior dela pantalla le informa sobre el resto de opciones disponibles.

Si desea guardar de forma permanente las opciones de arranque modificadas ypasárselas al kernel, abra el archivo menu.lst como usuario root (u otro con derechos deadministrador) e introduzca los parámetros adicionales del kernel en la línea existenteseparándolos entre sí con espacios:

title MaXkernel (hd0,0)/vmlinuz root=/dev/hda3 <parámetros adicionales>initrd (hd0,0)/initrd

La próxima vez que el sistema arranque, GRUB cargará automáticamente los nuevosparámetros.

Selección del núcleo mediante comodines

Sobre todo cuando se desarrollan o utilizan nucleos personalizados, es necesariomodificar las entradas de menu.lst o editar la línea de comandos para reflejar los nombresactuales del kernel y del archivo initrd. Con el fin de simplificar este proceso, se recomiendael uso de comodines para actualizar dinámicamente la lista de kernels de GRUB. Todas lasimágenes del nucleo (kernel) que coinciden con un patrón específico se añaden a la lista deimágenes arrancables. Para activar la opción de comodines, introduzca una entrada de menúadicional en menu.lst. Para que esta opción pueda aplicarse, todas las imágenes del kernel einitrd deben tener un nombre base común y un identificador que asocie el kernel con el initrdcorrespondiente. Vea por ejemplo la siguiente configuración:

initrd-defaultinitrd-testvmlinuz-defaultvmlinuz-test

Página.- 412

Page 415: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

En este caso puede añadir dos imágenes de arranque en una configuración de GRUB.Para obtener las entradas de menú linux-default y linux-test, debe añadirse la siguienteentrada a menu.lst:

title linux-*wildcard (hd0,4)/vmlinuz-*kernel (hd0,4)/vmlinuz-* root=/dev/hda7 vga=791initrd (hd0,4)/initrd-*

En este ejemplo, GRUB examina la partición (hd0,4) en busca de entradas quecoincidan con el comodín. Esas entradas se utilizan para generar nuevas entradas de menú deGRUB. En el ejemplo anterior, GRUB actuaría como si menu.lst incluyera las siguientesentradas:

title linux-defaultwildcard (hd0,4)/vmlinuz-defaultkernel (hd0,4)/vmlinuz-default root=/dev/hda7 vga=791initrd (hd0,4)/initrd-default

title linux-testwildcard (hd0,4)/vmlinuz-testkernel (hd0,4)/vmlinuz-* root=/dev/hda7 vga=791initrd (hd0,4)/initrd-test

Los problemas con esta configuración pueden surgir cuando los nombres de archivono se usan de forma consecuente o falta alguno de los archivos extendidos (por ejemplo unaimagen initrd).

El archivo /boot/grub/device.map

El ya mencionado archivo device.map contiene la correspondencia entre los nombresde dispositivo GRUB y los nombres de dispositivo Linux. Si dispone de un sistema mixto condiscos duros IDE y SCSI, GRUB debe intentar averiguar el orden de arranque a partir de unprocedimiento concreto. En este caso, GRUB no tiene acceso a la información de la BIOSsobre el orden de arranque. GRUB guarda el resultado de esta comprobación en/boot/grub/device.map. A continuación vemos un ejemplo para el que asumimos que el ordende arranque definido en la BIOS es de IDE antes que SCSI:

(fd0) /dev/fd0(hd0) /dev/hda(hd1) /dev/sda

Debido a que el orden de IDE, SCSI y otros discos duros depende de diversos factoresy a que Linux no es capaz de detectar dicha correspondencia, existe la posibilidad dedeterminar el orden manualmente en el archivo device.map. Si al arrancar el sistema seproducen problemas, compruebe si el orden de arranque en el archivo coincide con el ordenespecificado en la BIOS. En caso necesario, puede modificarse durante el arranque con ayudadel shell de GRUB.

Página.- 413

Page 416: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

El shell de GRUB

Existen dos variantes de GRUB: una como cargador de arranque y otra como unprograma normal Linux en /usr/sbin/grub. Este programa se denomina shell de GRUB. Lafuncionalidad de instalar GRUB como cargador de arranque en un disco duro o disquete estádirectamente integrada en GRUB en forma del comando “install” o “setup”. De este modo,esta función está disponible en la shell de GRUB cuando Linux está cargado.

Los comandos “setup” e “install” están disponibles también durante el proceso dearranque sin necesidad de que Linux se esté ejecutando. De este modo se simplifica larecuperación de un sistema defectuoso (que no puede arrancarse), ya que el archivo deconfiguración dañado del cargador de arranque puede evitarse mediante la introducciónmanual de parámetros. La introducción manual de parámetros durante el arranque resultatambién muy adecuada para probar nuevas configuraciones cuando el sistema nativo no debedañarse bajo ningún concepto. Introduzca simplemente el comando de configuraciónexperimental con una sintaxis parecida a la del archivo menu.lst y pruebe la funcionalidad deesta entrada sin modificar el archivo de configuración actual y por tanto sin riesgo para lacapacidad de arranque del sistema. Si por ejemplo desea probar un nuevo kernel, introduzca elcomando “kernel” incluyendo la ruta al kernel alternativo. En caso de que el proceso dearranque falle, vuelva a utilizar para el próximo arranque el archivo menu.lst intacto. Porsupuesto, la interfaz de la línea de comandos también resulta muy adecuada para poderarrancar el sistema a pesar de un archivo menu.lst defectuoso: simplemente introduzca elparámetro corregido en la línea de comandos. Para que el sistema pueda arrancarse de formapermanente, ha de añadir este parámetro a menu.lst mientras el sistema está activo.

El algoritmo de correspondencia de los nombres de dispositivo GRUB y Linux seactiva sólo cuando la shell GRUB se ejecuta como programa Linux (para lo que se emplea elcomando “grub” como se describe en la sección “El archivo device.map”. El programa lee atal efecto el archivo device.map.

Recuperar desde GRUB una contraseña olvidada

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 5.0, kernel 2.6.28-15-generic” o la que corresponda. Si en menu.lstse incluyó la opción “hiddenmenu” habrá que pulsar <Esc> para que aparezcan lasopciones.

2. Pulsar “e” para editar.

3. Seleccionar la línea del kernel (kernel /boot/vmlinuz-2.6.28-15-generic root=UUID...)y pulsar “e”.

Página.- 414

Page 417: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

4. Ir a la línea del final y cambiar “ … ro quiet splas “ por “ … rw init=/bin/bash “ ypulsar <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.

Definir la contraseña de arranque

GRUB soporta el acceso a sistemas de archivos ya desde el mismo momento delarranque. Esto también significa que es posible ver algunos archivos del sistema Linux a losque los usuarios sin privilegios root no tendrían acceso normalmente en un sistema iniciado.

Mediante la definición de una contraseña, no sólo puede evitar este tipo de accesos noautorizados durante el proceso de arranque, sino también bloquear la ejecución dedeterminados sistemas operativos por parte de los usuarios.

Para definir una contraseña de arranque, realice los siguientes pasos como usuarioroot:

1. Introduzca el comando “grub” en el prompt del sistema del usuario root.

2. Codifique la contraseña en la shell de GRUB:

grub> md5cryptPassword: ****Encrypted: $1$lS2dv/$JOYcdxIn7CJk9xShzzJVw/

Estas tres tres instrucciones realizan respectivamente:

Llamada al programa de encriptación.Solicita la clave a encriptar.Devuelve el valor encriptado que corresponde a la clave introducida.

Página.- 415

Page 418: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

3. Introduzca el valor codificado en la sección global del archivo menu.lst:

gfxmenu (hd0,4)/messagecolor white/blue black/light-graydefault 0timeout 10password –md5 $1$lS2dv/$JOYcdxIn7CJk9xShzzJVw/

De esta forma se impide la ejecución de comandos GRUB en el cursor de arranque.Para poder volver a ejecutar comandos es necesario introducir “p” y la contraseña. Noobstante, aquí sigue siendo posible para todos los usuarios arrancar un sistemaoperativo del menú de arranque.

4. Si se desea impedir además el arranque de uno o varios sistemas operativos del menúde arranque, añada la entrada “lock” a cada una de las secciones que no deba iniciarsesin introducir previamente la contraseña. Por ejemplo:

title MaXkernel (hd0,4)/vmlinuz root=/dev/hda7 vga=791initrd (hd0,4)/initrdlock

Así, después de reiniciar el sistema y seleccionar la entrada Linux en el menú dearranque, aparece el siguiente mensaje de error:

Error 32: Must be authenticated

Pulse <Intro> para acceder al menú y a continuación “p” para obtener un cursor en elque introducir la contraseña. Después de escribir la contraseña y pulsar <Intro>, seinicia el proceso de arranque del sistema operativo seleccionado (en este caso MaX).

Al utilizar la contraseña de arranque en GRUB, no aparece la habitual pantalla debienvenida.

5. Si se desea que solamente se necesite clave para una entrada determinada del menu, envez de utilizar la opción password en la sección global se especificará en la lineasiguiente a la que contiene la opción title de la sección a proteger.

6. Y por último, si se desea proteger con contraseña pero que ésta no se encuentrecodificada basta con especificar dicha contraseña despues de la opción password. Porejemplo, si queremos que la contraseña sea “periquito”, la linea correspondiente será:

password periquito

Página.- 416

Page 419: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

ANEXO 4.- RECUPERACIÓN DE GRUB 2 Y WINDOWS

Un problema típico de los equipos en los que se han instalado uno o varios sistemasoperativos de Microsoft y uno o varios Linux es la pérdida del acceso a grub cuando sereinstala uno de los Windows.

Como ejemplo podemos suponer que en primer lugar se hace una partición para“Windows del DAI” y se instala el correspondiente sistema operativo. A continuación se creauna segunda partición primaria donde se instala “Windows del ASIR”. El fichero \boot.ini deesta segunda partición contendrá dos opciones para permitir iniciar el equipo en uno u otrosistema operativo. A continuación se crea una partición extendida y dentro de ella dos lógicas,una para swap y otra de tipo ext4 donde se instala MaX v.6.0. Durante esta última instalaciónse instala grub que mostrará alguna opción para iniciar MaX y una opción para iniciarWindows que, si se selecciona, mostrará un segundo menú para iniciar un Windows u otro.

Si a continuación se reinstala el “Windows del DAI” se perderá el acceso a MaX y al“Windows del ASI”.

Para recuperar 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 grub”.

El fichero con las opciones de grub es /boot/grub/grub.cfg

A continuación, para recuperar el acceso a los dos Windows se puede:

1. Arrancar Windows desde la opción mostrada por el grub recuperado.2. Desde una pantalla de comandos editar el fichero \boot.ini (edit \boot.ini).3. Duplicar la línea correspondiente al inicio modificando el número de partición y el

texto que aparecerá en el menú de arranque.

Página.- 417

Page 420: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

ANEXO 5.- COPIA Y RESTAURACIÓN CON BACKHARDDI

Página.- 418

Page 421: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación

Ubuntu: El Sistema Operativo libre del Ciclo de Administración de Sistemas Informáticos en Redl

ANEXO 6.- CLONACIÓN DE DISCOS POR MULTICAST CON CLONEZILLA

Página.- 419

Page 422: Santiago Alonso (curso 2014-15) - tiernogalvan.es · - Ampliación del apartado 4.2.2 en la sección de “Límites a los usuarios”. - Inclusión del Anexo 1 con la instalación