1.02k likes | 1.29k Views
Diseño de Sistemas Operativos. Introducción a la Administración de Sistemas UNIX. Introducción Directorios del sistema Gestión de usuarios Arranque del sistema Variantes de shells Discos y sistemas de ficheros Servicios de red. Servicios internos Instalación de nuevo software
E N D
Diseño de Sistemas Operativos Introducción a la Administración de Sistemas UNIX
Introducción Directorios del sistema Gestión de usuarios Arranque del sistema Variantes de shells Discos y sistemas de ficheros Servicios de red Servicios internos Instalación de nuevo software Terminales gráficos Interoperabilidad con otros SSOO Auditoría del sistema Seguridad en sistemas Unix Índice Introducción a la Administración de Sistemas Unix
Introducción • Tareas del administrador: • Servicio a los usuarios. • Mantenimiento y actualización del software. • Auditoria de seguridad y rendimiento del sistema. • Gestión de recursos. Introducción a la Administración de Sistemas Unix
Herramientas de Administración Casi todos los sistemas operativos UNIX tienen su propio conjunto de herramientas de administración: • admintool (Sun Solaris) • control-panel (Linux-RedHat) • smit (IBM AIX). • sysadmsh (XENIX). Introducción a la Administración de Sistemas Unix
Tipos de Instalaciones Se pueden dividir las instalaciones en tres diferentes categorías: • Estaciones de trabajo monousuario. • Servidores multiusuario. • Clusters de máquinas. Introducción a la Administración de Sistemas Unix
Conocimientos del Administrador Es recomendable para el administrador el conocimiento de: • Funcionamiento interno del sistema. • Seguridad y comunicaciones. • Programación (scripts, perl, awk, ...). • Instalación de componentes hardware. • Otros sistemas operativos. Introducción a la Administración de Sistemas Unix
/opt /local / /bin /dev /etc /home /lib /mnt /man /sbin /tmp /usr /var /lib /include /etc /bin /proc Árbol de Directorios UNIX • /bin: Ejecutables básicos del SSOO. • /dev: Ficheros especiales asociados a dispositivos. • /etc: Configuración del sistema. • /home: Directorio de cuentas de usuarios. • /lib: Librerías básicas del sistema. Introducción a la Administración de Sistemas Unix
/opt /local / /bin /dev /etc /home /lib /mnt /man /sbin /tmp /usr /var /lib /include /etc /bin /proc Árbol de Directorios UNIX • /mnt: Directorio de montaje de ciertos sistemas de ficheros. • /opt: Aplicaciones adicionales del sistema. • /proc: Sistema de ficheros virtual para la gestión de recursos. • /sbin: Ejecutables de administración del SSOO. Introducción a la Administración de Sistemas Unix
/opt /local / /bin /dev /etc /home /lib /mnt /man /sbin /tmp /usr /var /lib /include /etc /bin /proc Árbol de Directorios UNIX • /tmp: Directorio para ficheros temporales. • /usr: Aplicaciones adicionales del SSOO. • /usr/local: Programas locales del sistema. • /var: Directorio para ficheros de log y colas de trabajos. Introducción a la Administración de Sistemas Unix
Directorio /dev Agrupa entradas de tres diferentes tipos: • Dispositivos de tipo carácter. • Dispositivos de tipo bloque. • Dispositivos virtuales (/dev/zero). Todos estos dispositivos tienen asociado un minor y un majornumber. Introducción a la Administración de Sistemas Unix
Directorio /proc Se corresponde con un sistema de ficheros virtual (no tiene soporte en disco). Las entradas del directorio son: • Procesos en ejecución. • Información del sistema. • Mapping de recursos del sistema. Introducción a la Administración de Sistemas Unix
Directorios Dependientes de la Versión de Sistema Operativo • /boot: Directorio de la imagen del kernel (Linux). • /kernel: Idem (Solaris/SunOS). • /osf_boot: Idem (OSF/1). • /u: Cuentas de usuarios (AIX y otros). • /usr/ucb: Aplicaciones de University of California, Berkeley (Solaris, OSF/1 y otros). • /devices: Dispositivos asignados por controladoras (Solaris/SunOS). • /usr/openwin: Sistema de Ventanas Openwin (SunOS). Introducción a la Administración de Sistemas Unix
Propietarios de los Directorios • La mayoría de directorios y ficheros pertenecen al usuario root o a otros usuarios privilegiados del sistema. • Las excepciones son: • Cuentas de usuario: /home • Ficheros temporales: /tmp • Entradas de las colas de trabajos: /var • Las imágenes de los procesos: /proc Introducción a la Administración de Sistemas Unix
Propietarios de los Directorios • Si ciertos usuarios requieren accesos especiales a ciertos ficheros, esto se resuelve haciéndoles pertenecer a grupos privilegiados. • Grupos: disk, printer, adm, ... Llamadas: chown, chgrp, chmod, chattr, ... Introducción a la Administración de Sistemas Unix
Gestión de Usuarios Creación de un usuario: • Insertarlo en el fichero de usuarios. • Asignarle un passwd. • Definir parámetros (límites). • Crear el directorio home. • Copiar ficheros iniciales (/etc/skel). • Cambiar el propietario del home. • Dar de alta en mail, quota, ... Introducción a la Administración de Sistemas Unix
Gestión de Usuarios • Fichero de usuarios: /etc/passwd usuario:passwd:uid:gid:desc:home:shell • Fichero de grupos: /etc/group grupo:<reserved>:gid:usuarios... • Fichero de Passwords: /etc/shadow usuario:passwd:parámetros... Gestión de usuarios distribuida: NIS Introducción a la Administración de Sistemas Unix
Login de un Usuario Al conectarse un usuario al sistema: • Se evalúa si el modo de conexión (local o remoto) es válido para dicho usuario (en base al getty). • Se arranca el programa shell asociado. • Configuración de la sesión: general (/etc/profile) y de usuario (~/.profile). Introducción a la Administración de Sistemas Unix
Deshabilitar Usuarios • Para cerrar o deshabilitar una cuenta (sin borrar su contenido): • Bloquear el password de la cuenta (*). • Cambiar el shell de acceso (mensaje). #!/bin/tail +2 La cuenta se encuentra bloqueada. Hable con el adiministrador Introducción a la Administración de Sistemas Unix
Cambio de Usuario Para cambiar de usuario al iniciar una sesión se usa el comando su: • su - usuario: Cambia de usuario y carga su configuración. • su usuario: Sólo cambia de usuario. Si no se indica el usuario se cambia al usuario root. Introducción a la Administración de Sistemas Unix
Usuarios de Sistema • root: Administrador (UID 0). • daemon: Ejecutas procesos de servicio del sistema (UID 1). • bin: Propietario de ejecutables (UID 2). • sys: Ficheros de sistema (UID 3). • adm: Ciertos log (UID 4). • nobody: Usuario sin privilegios. • ... Introducción a la Administración de Sistemas Unix
Arranque del Sistema • Arranque del kernel. • Montar el sistema de ficheros raíz. • Arranque del proceso init (PID 1). • Montaje del resto de sistemas de ficheros. • Inicialización de los terminales. • Activación del runlevel (demonios). Introducción a la Administración de Sistemas Unix
Runlevels Estándar • Runlevel 0: Parada del sistema. • Runlevel 1: Modo mantenimiento. • Runlevel 2: Multiusuario sin red (NFS). • Runlevel 3: Multiusuario. • Runlevel 4: <Reservado> • Runlevel 5: Terminal gráfico. • Runlevel 6: Rearranque del sistema. Introducción a la Administración de Sistemas Unix
Fichero /etc/inittab Cada entrada tiene el formato: id:runlevels:action:process args • id: Identificador único. • runlevels: Niveles en los que se ejecuta. • action: Modo de ejecución. • process args: Proceso a ejecutar. Introducción a la Administración de Sistemas Unix
Tipos de Acciones Estándar Las acciones habituales son: • wait: Arranca el proceso y espera a su finalización antes de seguir. • respawn: Arranca el proceso automáticamente en el caso de que muera. • once: Si no esta arrancado arrancalo (sin esperar). • boot: Ejecuta sólo en el arranque (sin esperar). • off: Si el proceso está en ejecución mátalo. Introducción a la Administración de Sistemas Unix
Inicialización de Terminales init Login:chema password: ****** fork init getty login sh exec exec exec fork /dev/tty0 sh ls exec # ls Introducción a la Administración de Sistemas Unix
Modificación del Runlevel en Ejecución Se puede reiniciar el proceso init, (por ejemplo al cambiar la configuración) mandando una señal HUP. El nivel de ejecución actual se puede cambiar invocando a init con el nuevo runlevel como argumento. Introducción a la Administración de Sistemas Unix
Scripts del Sistema El directorio /etc/init.d/ es el usado para mantener los scripts de arranque de los servicios del sistema. • Son scripts (/bin/sh) no binarios. • Reciben diferentes argumentos (start, stop, status, restart, ...). Introducción a la Administración de Sistemas Unix
/ /etc /init.d /rc3.d /network /S10network Scripts del Runlevel • Directorio de scripts del sistema: /etc/init.d/ • Directorio de cada runlevel: /etc/rc3.d/ Symbolic link S10network S K script start/stop orden Introducción a la Administración de Sistemas Unix
Parada del Sistema • Notificación a los usuarios. • Envía una señal a los procesos para su terminación. • Entrada en modo monousuario (saca los usuarios y mata al resto de procesos). • Sincronización de los sistemas de ficheros (sync). Introducción a la Administración de Sistemas Unix
Shells del Sistema Existen diversas familias de shells: • Bourne shell (sh/bash). • Korn shell (ksh). • C shell (csh). • TC shell(tcsh). Con otras funcionalidades: • Restricted shell (r-sh). • Shell remoto (rsh), seguro (ssh). Introducción a la Administración de Sistemas Unix
Configuración del Shell Existen dos niveles de ficheros de configuración: • General: • /etc/profile • /etc/bashrc, /etc/cshrc, ... • De usuario: • ~/.profile • ~/.bashrc, ~/.cshrc Introducción a la Administración de Sistemas Unix
Otros Servicios Ciertos servicios se filtran basándose en el shell del usuario que lo invoca. El fichero /etc/shells indica qué ejecutables son shells válidos para el resto de servicios. Introducción a la Administración de Sistemas Unix
Shells de Programación • Perl: • Tratamiento de expresiones regulares. • Interfaz con C y Librerías de utilidades. • AWK: • Procesador de campos. • Tcl / Tk: • Componentes gráficos (ventanas). Introducción a la Administración de Sistemas Unix
Gestión de Dispositivos de Almacenamiento Las fases de uso de un soporte de almacenamiento son: • Dar formato al soporte (no siempre necesario). • Particionamiento (si es aplicable). • Creación del sistema de ficheros. • Utilización del soporte. Introducción a la Administración de Sistemas Unix
Tipos de Dispositivos UNIX define dos tipos de dispositivos: • Dispositivos de tipo bloque (discos). • Dispositivos de tipo carácter (cintas). En ciertos UNIX el mismo dispositivo físico puede ser gestionado en modo bloque y modo carácter. Introducción a la Administración de Sistemas Unix
Particionamiento de Discos El formato de las particiones y características, depende del SO: • Linux: fdisk, diskdruid. • Solaris/SunOS: format. • AIX: smit. Introducción a la Administración de Sistemas Unix
Creación de un Sistema de Ficheros También depende del SO y del sistema de ficheros que soporte. Opciones: • Espacio reservado al root. • Número de i-nodos. • Opciones de verificación. Linux: mkfs Introducción a la Administración de Sistemas Unix
Modelos de Sistemas de Ficheros Existen diferentes modelos de sistemas de ficheros: • Sistemas de ficheros tradicionales: ext2fs, ufs, minix, ... • Sistemas de ficheros transaccionales: jfs, afs, ... Diferentes ventajas en la verificación de integridad (fsck). Introducción a la Administración de Sistemas Unix
Estrategias Es recomendable la creación de los siguientes SF independientes: • / (Sistema tamaño justo). • /usr (Aplicaciones tamaño justo). • /home (Cuentas mucho tamaño). • /usr/local - /opt (Mucho tamaño). • /var (Logs bastante tamaño). • swap - /tmp (Depende de la carga). Introducción a la Administración de Sistemas Unix
Estrategias Se recomienda: • Mantener las cuentas en un disco diferente del sistema. • Separar los SF de mayor acceso en diferentes discos (swap y sistema). • Ubicar las particiones de forma que sea posible redistribuir los discos. • Vigilar el porcentaje de disco libre. Introducción a la Administración de Sistemas Unix
Automatización del Montaje de Sistemas de Ficheros Tras montar la partición / el sistema monta el resto de sistemas de ficheros: • Linux: /etc/fstab • Solaris: /etc/ufstab • AIX: /etc/filesystems • ... Introducción a la Administración de Sistemas Unix
Dispositivos sin Sistema de Ficheros Ciertas utilidades pueden usarse para acceso a dispositivos sin uso de sistema de ficheros: • dd, cpio o tar. Ejemplo: dd if=data.img of=/dev/fd0 Pueden usarse como utilidades de backup elementales. Introducción a la Administración de Sistemas Unix
Sistemas de Backup Esquemas de backup: • Backups completos: Se copia toda la información. • Backups incrementales: Sólo los ficheros modificados se copian. Habitualmente se combinan los dos esquemas. Introducción a la Administración de Sistemas Unix
Decisiones de Backup Una estrategia de backup debe incluir: • Estimación del volumen de datos. • Selección de los ciclos de backup. • Automatización (cliente/servidor). • Verificación del sistema. Herramientas de backup: Amanda. Introducción a la Administración de Sistemas Unix
/ /etc /bin / /var /usr /usr /etc /bin /var Dispositivos Redundantes Dispositivos RAID: RAID md1 sd01 sd02 sd03 Introducción a la Administración de Sistemas Unix
Tecnología RAID Hay varios modelos de RAID: • Modo lineal: Concatena volúmenes. • RAID 0: Modo alternado de bloques. • RAID 1: Redundancia (Mirroring). • RAID 4: Disco de paridad. • RAID 5: Bloques de paridad. Discos de reserva: spare disks. Configuración: /etc/raidtab Introducción a la Administración de Sistemas Unix
Cuotas de Disco Asocia a cada usuario/grupo un limite de espacio en disco. Dos límites: • Soft limit: Límite informativo. • Hard limit: Espacio máximo disponible. Límites aplicables a cada sistema de ficheros. Se verifican en el arranque de la máquina y en cada login. Introducción a la Administración de Sistemas Unix
Configuración de TCP/IP Configuración del interfaz: • Dispositivo de red (e.g. /dev/le0). • Asignar dirección IP. • Máscara de red. • Dirección Broadcast. • Subred. Ejemplo: + ifconfig eth0 138.100.9.101 netmask 255.255.248.0 up Introducción a la Administración de Sistemas Unix
Configuración de TCP/IP Encaminamiento IP: • Encaminamiento local. • Encaminamiento dentro de la subred. • Encaminamiento externo (Router). Ejemplos: route add -host 127.0.0.1 lo route add -net 138.100.8.0 netmask 255.255.248.0 eth0 route add default gw 192.168.1.1 eth0 route add default ppp0 Introducción a la Administración de Sistemas Unix