Académique Documents
Professionnel Documents
Culture Documents
El contenido de ste material es propiedad de la Subdireccin de Seguridad de la Informacin. No se autoriza la reproduccin y distribucin total o parcial del mismo sin previa autorizacin de sus autores y propietarios.
Segunda Edicin
Actualiz
UNIVERSIDAD NACIONAL AUTNOMA DE MXICO Rector Juan Ramn de la Fuente Secretario General Enrique del Val Blanco Director General de Servicios De Cmputo Acadmico Dr. Alejandro Pisanty Baruch Directora de Cmputo para la Investigacin Dra. Genevieve Lucet Lagriffoul Jefe del Departamento de Seguridad en Cmputo Lic. Juan Carlos Guel Lpez ADMINISTRACIN Y SEGURIDAD EN UNIX Editor Direccin General de Servicios de Cmputo Acadmico Direccin de Cmputo para la Investigacin Nmero de la edicin: Agosto 2005. 2005 Universidad Nacional Autnoma de Mxico Esta edicin y sus caractersticas son propiedad de la Universidad Nacional Autnoma de Mxico. Ciudad Universitaria, Mxico, DF Ni la totalidad ni parte de esta publicacin puede reproducirse, registrarse o transmitirse en ninguna forma ni por ningn medio, sin la previa autorizacin escrita del editor. Impreso y hecho en Mxico
Contenido
PERFIL Y CONSIDERACIONES GENERALES DEL ADMINISTRADOR ............................. 7 ALTA Y BAJA DEL SISTEMA ................................................................................ 11 ADMINISTRACIN DE CUENTAS DE USUARIOS .................................................... 19 INSTALACIN Y MANTENIMIENTO DE DISPOSITIVOS............................................ 24 IMPRESORAS. ............................................................................................... 24 TERMINALES ................................................................................................. 28 ADMINISTRACIN DE SISTEMAS DE ARCHIVOS (FS) ............................................ 37 RESPALDOS ..................................................................................................... 49 CONFIGURACIN Y MANTENIMIENTO DEL USO .................................................... 59 DE LA RED ....................................................................................................... 59 ADMINISTRACIN DE LA MEMORIA VIRTUAL ....................................................... 65 INSTALACIN DE APLICACIONES ....................................................................... 69 REFERENCIAS .................................................................................................. 71
INTRODUCCIN
Unix es un sistema operativo extremadamente poderoso que se utiliza en la actualidad en una gran variedad de ambientes tanto comercial como acadmico. Para su administracin, proporciona las herramientas de configuracin necesaria para lograr un uso eficiente del sistema y obtener un mejor desempeo del mismo. El administrador de sistemas es la persona responsable de configurar, mantener y actualizar el sistema o conjunto de sistemas que forman una red, cuidando el funcionamiento del software, hardware y perifricos de forma que estn disponibles para ser utilizados por los usuarios. El objetivo de este curso es que al finalizar, el alumno sea capaz de reconocer la importancia de la funcin del administrador de sistemas, identificar la estructura general del sistema operativo y las tareas bsicas de administracin, adems de manejar eficazmente las utileras de administracin de un sistema operativo UNIX. Los temas a tratar durante el desarrollo del mismo son: 1. PERFIL Y CONSIDERACIONES GENERALES DEL ADMINISTRADOR 2. ALTA Y BAJA DEL SISTEMA 3. ADMINISTRACIN DE CUENTAS DE USUARIOS 4. INSTALACIN Y MANTENIMIENTO DE DISPOSITIVOS 5. IMPRESORAS 6. TERMINALES 7. ADMINISTRACIN DE SISTEMAS DE ARCHIVOS (FS) 8. RESPALDOS 9. CONFIGURACIN Y MANTENIMIENTO DEL USO DE LA RED 10. ADMINISTRACIN DE LA MEMORIA VIRTUAL 11. INSTALACIN DE APLICACIONES
CONOCIMIENTOS Tcnicas de programacin. Dominio de al menos un lenguaje de programacin. Funcionamiento del sistema operativo. Tcnicas de administracin del sistema operativo. Conocimientos bsicos de hardware y mantenimiento de dispositivos.
El administrador debe:
Establecer polticas de uso y administracin /etc/issue Mensaje que aparece a quienes desean conectarse al sistema UNIX. /etc/motd (message of the day) Aparece una vez que el sistema nos autentifica como un usuario valido. Es un canal de comunicacin entre el administrador y los usuarios, por medio del cual el administrador les da a conocer en muchos casos las polticas de uso del sistema. Polticas Apertura de cuentas Horas de mantenimiento. Responsabilidad de los respaldos. Borrado de archivos temporales. Cuotas de disco. Seguridad del sistema. Etc.
Mantener Canales de Comunicacin con los usuarios /etc/issue /etc/motd mail El mail es una herramienta poderosa cuando queremos hacer notificaciones a los usuarios. News Se utilizan para comunicar tpicos ms largos que los usuarios deben leer, sin sobre cargar el mensaje inicial. /usr/news/* /var/news/* write Permite enviar un mensaje a un usuario que est en sesin en el sistema. wall Permite enviar un mensaje a todos los usuarios que estn en sesin en el sistema. rwall Permite enviar un mensaje a usuarios en una mquina remota.
10
11
El archivo de kernel convencionalmente es conocido como /UNIX (SV) o /vmunix (BSD) y casi siempre se localiza en el directorio raz. Una vez que el kernel toma el control del sistema se prepara a s mismo para correr y realiza: 1) Diagnstico detallado del Hardware. 2) Montaje del sistema de archivos de root (/). 3) Inicializacin de sus tablas internas Tabla de Procesos Tabla de Inodos Tabla de Archivos Cuando estas actividades terminan, el kernel ejecuta un fork y crea otro proceso que corre el programa init como el proceso con PID 1. init (PID 1) Proceso encargado de levantar todos los procesos del sistema. init (comando) Ejecuta los archivos de inicializacin del sistema 4) Ejecucin de Archivos de inicio
12
4 5 6
Estado normal de un sistema conectado a una red. Definible por el usuario. Firmware. Estado en que el control lo tiene un programa en ROM. Reboot. Utilizado para cambiar de nivel.
Archivos de Inicio
Ejecutan todas las actividades necesarias para que el sistema funcione en un nivel determinado. (Monousuario, multiusuario). Es muy importante verificar que procesos se activan y cualquier modificacin que se haga de ellos. Archivos de Inicio en BSD /etc/rc /etc/rc.local Algunos sistemas usan archivos adicionales de inicializacin, como /etc/rc.boot y /etc/rc.single. /etc/rc.boot Se encarga de colocar el hostname y revisar los sistemas de archivos. /etc/rc.single Si el sistema esta iniciando en modo monousuario, el control pasa al Shell de single-user /etc/rc 1) Inicia definiendo las variables de ambiente. 2) Ejecuta el comando fsck -p para revisar la consistencia en los sistemas de archivos. La opcin -p indica que realice las reparaciones necesarias sin causar prdida de datos. Si el archivo /fastboot existe, rc no correr fsck, as que el sistema se reinicializara sin revisar los discos pensando que el sistema se cerr limpiamente, por lo tanto no se debe intentar crear el archivo /fastboot, ya que se podran causar errores en los sistemas de archivos si una cada o falla en la alimentacin ocurre antes del siguiente inicio normal. Fsck debe correr despus de un cierre anormal del sistema, si no, los contenidos de los sistemas de archivos estarn comprometidos. 3) Revisa la existencia y tamao del archivo de passwords.
13
# vipw Comando que permite editar el archivo de passwords del sistema, /etc/passwd. Si existe /etc/ptmp y el archivo de passwd presenta algn dao tal como su no existencia o que sea un archivo vaco, recupera la tabla /etc/passwd e imprime el mensaje "passwd file recovered from /etc/ptmp" en la consola. 4) Monta sistemas de archivos locales. 5) Revisa y activa las cuotas de disco. 6) Reajusta el propietario y la proteccin para los archivos especiales de las terminales virtuales. 7) Corre rc.local 8) Realiza funciones de mantenimiento Conservacin de archivos del editor "vi", "ed" y de otros editores basados en "ex" el cual permite a los usuarios recobrar algunos no salvados en caso de un crash. Esta utilidad salva los trabajos en el directorio /usr/preserve o /var/preserve. Limpia el directorio /tmp de manera sencilla. 9) Habilita las particiones de swap y/o la paginacin de archivos. 10) Inicia el servidor local de procesos. 11) Inicia cron. 12) Inicia contabilidad. /etc/rc.local Coloca el nombre del sistema y su direccin en red, activa la comunicacin con otros hosts en la red local, La inmensa mayora de los rc.local inicializan varios servicios de red y sus respectivos demonios.
14
Ejemplos de demonios de red iniciados por /etc/rc.local Demonio(s) routed timed Propsito Nombre de un hostname dinmico remoto que provee ruteo de datos por TCP/IP Maneja la sincronizacin entre los diferentes relojes del sistema en la red local. Si es invocado con la bandera "-M" este sistema puede actuar como reloj maestro, de aqu todos los demonios tomarn el tiempo correcto para sincronizarse a s mismos. Al menos un sistema en la red debe tener la bandera "-M", de otra manera "timed" ser ineficaz. El demonio mail es responsable del ruteo para el correo local y a travs de la red. Permite hacer disponible el sistema de archivos local para sistemas remotos va NFS. Los demonios NIS, implementan el servicio de base de datos distribuidas NIS, permitiendo compartir un grupo de archivos de configuracin.
Archivos de Inicio en SV /etc/inittab /etc/rc? /etc/rc?.d /etc/init.d (archivo) (archivo) (directorio) (directorio)
/etc/inittab Acciones que va a tomar el comando init para llevar al sistema a un estado en particular El formato de este archivo es cc: estados : accin : comando Donde cc = etiqueta de 2 caracteres que identifica esa lnea. estados = contiene los nombres de los runlevels para los cuales se va a aplicar esa lnea. Si est en blanco, aplica para todos. accin = de que modo se va a procesar esa lnea. # al principio No procesa la lnea.
Es importante diferenciar el comando init, del proceso init. # init n Lleva al sistema al nivel n
15
/etc/rc? Se encarga de la ejecucin de los archivos /etc/rc?.d/* Ventaja: quiere hacer. Desventaja: Hay un archivo separado por cada tarea que se Es ms difcil buscar algo
El nombre de TODOS los archivos debe ser de la siguiente forma: K o S (un numero de 2 dgitos) + un nombre Ejemplo: K72zope y S30network Los archivos K y S se ejecutan en orden alfabtico. K significa kill (matar una cosa) S significa start (habilitar cosas) De esa forma al entrar a cada nivel se asegura que lo que este deba estar ah. Los archivos en los directorios rc?.d usualmente son ligas a archivos en el directorio /etc/init.d, que es donde viven realmente los archivos.
Si se requiere modificar un procedimiento de inicializacin se deber modificar el archivo apropiado en el directorio /etc/init.d. Si se necesita agregar un nuevo script, se debe colocar en /etc/init.d y crear las ligas necesarias a los subdirectorios rc?.d Se debe tener cuidado con los nombres de las ligas para que los archivos sean ejecutados en el punto que les corresponde de la secuencia de inicio.
16
El nivel por default es single user opciones ms usadas: -h -r -k halt. reboot. simulado, deshabilita las conexiones.
17
SHUTDOWN EN SV # shutdown -gn -il [-y] -gn -il [-y] HALT Lleva al sistema a un punto donde la alimentacin se puede suprimir con seguridad. Este proceso involucra la detencin total del CPU. REBOOT Detiene UNIX e inmediatamente reinicia la operacin del sistema. En el nivel por default en SV. En multiusuario en BSD. SYNCRONIZACIN DISCO-MEMORIA Una de las partes ms importantes del proceso de cierre es la sincronizacin en los discos. El comando sync finaliza todas las operaciones en el disco y copia las actualizaciones del superbloque, garantizando que el sistema puede ser apagado sin daar los archivos. El comando se puede ejecutar manualmente si es necesario. # sync # sync # sync Si sync es ejecutado dos o ms veces, es a causa un poco, de supersticin. El comando sync realiza, pero no desarrolla inmediatamente las escrituras requeridas en disco, aunque el prompt de UNIX regrese inmediatamente. Los mltiples comandos de sync aumentan la probabilidad de que la escritura se suceda antes de que se ingrese otro comando (o se corte la alimentacin), tomando el tiempo necesario para completar la operacin. De otra manera, se pueden esperar unos segundos para que la actividad del disco cese antes de hacer algo. Periodo de gracia en segundos Nivel al que quiero llevar el sistema Para que shutdown no nos pida confirmacin de nada
18
ALTA DE USUARIOS
/etc/passwd Banco de datos de usuarios.
login:passwd-cifrado:UID:GID:comentario:HOME:shell login password-cifrado Key Passwd Salt Nombre de la cuenta o clave del usuario Password cifrado con un algoritmo de criptografa basado en DES (Data Encryption Standard)
Password tecleado por el usuario. Cadena de 2 caracteres de un conjunto de 64 (a-z, A-Z, 0-9 . /), Perturba el algoritmo en una de 4096 formas diferentes.
La salida del proceso de cifrado es de 11 caracteres. El passwd cifrado = 13 caracteres. 2 (salt)+ 11 (passwd cifrado)= 13 NOTA: No hay manera de que el algoritmo de cifrado genere un asterisco (*), El algoritmo es de un solo camino. Archivo de acceso restringido que almacena los password's.
/etc/shadow
login:passwd:lastchg:min:max:warn:inactive:expire:flag login passwd login (UID) 13 caracteres cifrado. Cadena lock == Nada == deshabilitado. no hay passwd.
19
Numero de das entre 1-01-70 y la fecha en que el passwd fue modificado por ultima vez. mnimo nmero de das requeridos entre cambios de passwords. mximo nmero de das dentro de los cuales un passwd es vlido. nmero de das antes que el passwd expire (aviso al usuario). nmero de das de inactividad permitidos para el usuario. fecha de expiracin de la cuenta. no usada (reservada para usos futuros).
Convierte los passwd de /etc/passwd a /etc/shadow DEFINIR GRUPOS: 1.- Implcitamente: Solo en /etc/passwd 2.- Explcitamente: /etc/group /etc/group Archivo de acceso restringido que almacena los grupos.
nombre_grupo:passwd:GID:lista de usuarios Si passwd = * Se suprimi ya que los usuario se podan cambiar de grupo con solo saber el password de ese grupo. Ejemplo: /etc/passwd lfs:x:1157:300:Yolulu:/usr/users/lfs:/bin:/bin/tcsh Donde 300 == grupo primario. /etc/group super::300: dgsca::400:lfs Donde dgsca == grupo secundario de lfs.
a) En BSD no hay diferencia entre grupos primarios y secundarios, nicamente se maneja la diferencia para fines de contabilidad. Un usuario pertenece simultneamente
20
a todos los grupos indicados. La diferencia en contabilidad (las operaciones se contabilizan por grupo). b) En SV, un usuario puede pertenecer a un solo grupo a la vez. Cuando el usuario entra en sesin, pertenece a su grupo primario. Comando para cambio de grupo: % newgrp grupo Tanto en BSD como en SV: % groups % id BSD SV == == grupo primario grupo al que pertenece en ese momento. lista los grupos a que pertenece el usuario.
GID's menores a 100 son grupos del sistema. Grupos definidos: wheel, sys root Daemon kmem GID = 0. Dueo de los demonios. Dispositivos de memoria.
Manejo de grupos por lnea de comando: groupadd groupdel groupmod aadir borrar modificar
2. Modificar las tablas correspondientes. En algunos sistemas puede existir: /etc/passwd.dir /etc/passwd.pag Las utileras mkpasswd y/o makepasswd compilan al archivo /etc/passwd y lo dejan en un formato binario.
21
3. Asignar un password. 4. Crear su directorio HOGAR. 5. Poner los archivos de inicio en su directorio HOGAR. /etc/skel .login /etc/stdlogin .profile /etc/stdprofile .cshrc /etc/stdcshrc 6. Cambiar el dueo y el grupo a los correspondientes para el usuario. 7. Dar de alta usuarios en otros sistemas. Mail Cuotas 8. Asignarlo a grupos secundarios 9. Probar la clave. HERRAMIENTAS AUTOMTICAS PARA DAR DE ALTA USUARIOS SV Tru64 IRIX SOLARIS AIX UNICOS Linux OpenBSD passmgmt, useradd useradd, sysman user_manager, passmgmt admintool, passmgmt, useradd, adduser mkuser nu, udbgen adduser, useradd adduser, useradd
BAJA DE USUARIOS
Motivos. Clave temporal Transferencia de la clave a otra maquina El usuario dej de trabajar Violacin a las reglas del sistema
Por su repercusin en la contabilidad, existen 3 mecanismos para dar de baja una clave:
22
1) Borrar la clave permanentemente. 2) Desactivar: a. Asterisco (*). b. Shell no vlido. 3) Desactivar y luego borrar.
23
Estructura. 1. Comandos de usuario. El usuario los utiliza para imprimir, borrar o ver sus trabajos (interacta con el sistema de impresin). 2. Demonio de impresin. El que se encarga de realizar el proceso de impresin. 3. Comandos administrativos. Comandos que permiten decirle al demonio que ejecute ciertas acciones. 4. Colas de impresin (directorios de spool). Donde se van a realizar los registros temporales de los archivos que se van a imprimir.
IMPRESORAS EN BSD
Comandos de usuario: lpr, lpq, lprm. Demonio: lpd. /usr/lib/lpd /usr/sbin/lpd se ejecuta desde /etc/rc.local Comando de administracin: lpc status Permite ver el estado de los trabajos encolados abort Aborta el demonio y desactiva la impresin stop Deshabilita el demonio de impresin (primero se vaca la cola de trabajos pendientes) start Habilita el demonio de impresin disableDesactiva la recepcin de trabajos
24
enable Activa la recepcin de trabajos down Deshabilita el demonio de impresin y desactiva la recepcin de trabajos up Habilita el demonio de impresin y activa la recepcin de trabajos topq Pone los trabajos al principio de la cola de impresin Directorio de spool: /usr/spool/lpd usuario daemon grupo daemon 755 permisos
ARCHIVO DE CONFIGURACIN DE IMPRESORAS /etc/printcap Base de datos donde se definen todas las impresoras conectadas al sistema (realmente). Cada impresora puede tener varios nombres, la que se llame lp ser la de default. Despus de modificar printcap hay que matar y volver a correr lpd. splash:\ :lp=:\ :mx=#0:\ :rm=132.248.115.19:\ :rp=xerox2:\ :sd=/usr/spool/lpd/splash:
Procedimiento para aadir una impresora 1) Conectarla fsicamente 2) Si es serial crear un registro en /etc/ttys con el formato: status = off type = unknow command= none 3) Verificar que lpd este activado en /etc/rc.local 4) Aadir un registro en /etc/printcap 5) Crear el directorio de spool (daemon daemon 755). 6) Crear el archivo de contabilidad (si corresponde). 7) Activar la cola de impresin. 8) Probarla. IMPRESORAS REMOTAS Cliente Dar de alta la impresora en /etc/printcap Servidor
25
IMPRESORAS SYSTEM V
Comandos de usuario: lp, lpstat, cancel. Demonio: lpsched. /usr/lib/lpsched Se habilita desde /etc/rc2.d/S??lp Comandos de administracin: lpshut disable enable reject accept lpmove lpusers Desactiva el servicio de impresin. Deshabilita el demonio de impresin. Habilita el demonio de impresin Desactiva la recepcin de trabajos Activa la recepcin de trabajos Mueve los requerimientos a otro destino. # lpmove job impresora # lpmove impresora1 impresora2 Cambia la prioridad en la cola.
Directorio de spool: /usr/spool/lp CLASES DE IMPRESORAS. Agrupar impresoras de un mismo tipo. # lpadmin -p impresora -c clase (aadir) # lpadmin -x <impresora o clase> (borrar) # lpadmin -p impresora -r clase (quitar) Procedimiento para aadir una impresora 1. Conectar fsicamente. 2. Si es serial: Asegurarnos que exista el dispositivo en el directorio /dev dueo lp permisos 600 Configurar la entrada en /etc/inittab donde la accin ser off 3. Asegurarse que exista una liga de /etc/init.d/lp a un directorio de inicializacin /etc/rc2.d/S??lp /etc/rc0.d/K??lp 4. Matar al demonio % lpshut
26
5. Aadir impresora con % ladmin -p impresora 6. Levantar al demonio # lpsched 7. Habilitar la impresora # accept # enable 8. Probar. IMPRESIN REMOTA. Servidor lpsystem Inserta una lnea en el archivo /etc/lp/Systems # lpsystem -t bsd host # lpsystem -t s5 host (para un cliente BSD) (para un cliente SV)
En Irix se utiliza el comando addclient. En algunos sistemas se utiliza el archivo /etc/printers.conf Cliente # lpadmin -p imp1 -T s5 -s host (para un servidor BSD) # lpadmin -p imp1 -T bsd -s host (para un servidor SV)
27
TERMINALES
Dispositivos Especiales /dev/console Representa la consola del sistema. Aqu se muestran los errores del sistema. Cuando es usada como una terminal regular, /dev/console hace referencia a ese dispositivo terminal. Cuando una sesin de sistema de ventanas esta siendo ejecutada, /dev/console puede convertirse en una de estas ventanas. El archivo especial /dev/tty (sin sufijo) tiene un propsito especial. Es un sinnimo para cada controlador de proceso TTY. Puede ser usado para asegurar que la salida se dirige hacia la terminal, independientemente de cualquier redireccionamiento de E/S.
TERMINALES FSICAS
Son aquellas que estn conectadas directamente al sistema mediante un cable. El archivo especial vara segn el sistema, los ms comunes: /dev/ttyn /dev/ttynn SV BSD
Donde "n" es un dgito (System V) o dos dgitos (BSD) numricos correspondientes al nmero de la lnea (comenzando con 0 o 00).
TERMINALES VIRTUALES
Dispositivos utilizados para entradas indirectas establecidas mediante: Un manejador de ventanas A travs de la red
Para cada terminal virtual UNIX utiliza dos archivos especiales: Pseudo terminal maestra o controladora: Es usada por el kernel para controlar las operaciones de esa terminal. /dev/pty[p-s]n /dev/ptc/n (en SV4) Ejemplo ptyq5
28
Es en la que est trabajando el usuario, est controlada por la maestra. /dev/tty[p-s]n /dev/pts/n (en SV4) Ejemplo ttyq5 La n es un dgito hexadecimal en ambos casos. Las dos partes trabajan en pares, teniendo el mismo nmero de dispositivo n, aunque el usuario solo ve el dispositivo de la terminal esclava, esto tambin es lo que aparece salida de comandos como ps. La siguiente es una lista de los nombres de los dispositivos especiales tanto para terminales fsicas como virtuales: Versin UNIX HP-Ux 9 HP-UX 10 Digital UNIX Solaris SCO UNIX AIX Linux IRIX SunOS Terminal Fsica o Lnea Serial /dev/tty00 /dev/ptym/ptyp0 /dev/tty0p0 /dev/tty00 /dev/term/a /dev/ttya /dev/tty1a /dev/tty1A /dev/tty0 /dev/ptc/0 /dev/ttys0 /dev/ttyd1 /dev/ttya /dev/ttys0 Pseudo Terminal Maestra /dev/ptyp0 /dev/pty/ttyp0 /dev/ptyp0 /dev/ptym/ptyp0 /dev/ptyp0 /dev/ptyp0 /dev/ptyp0 /dev/ptyp0 /dev/ptyp0 /dev/ptc0 /dev/ptyp0 Pseudo Terminal Esclava /dev/ttyp0 /dev/ttyp0 /dev/pty/ttyp0 /dev/ttyp0 /dev/pts/0 /dev/ttyp0 /dev/pts/0 /dev/ttyp0 /dev/ptsp0 /dev/ttyp0 /dev/pts/0 /dev/ttyp0 /dev/ttyq0 /dev/pts/0 /dev/ttyp0
Bajo SunOS, las dos formas del dispositivo de lnea serial son para los puertos en l la tarjeta del CPU y en las lneas de la tarjeta SCSI, respectivamente. Bajo Solaris, los /devices/pseudo. pseudo dispositivos son todas las ligas en el directorio
Bajo SCO UNIX, /dev/tty1a y /dev/tty1A difieren en que la ltima forma es usada para las lneas de marcado del modem. SCO UNIX y Linux tambin usan dispositivos de la forma /dev/tty0n y /dev/ttyn (respectivamente) para las sesiones de consola virtual.
29
tty El comando tty muestra cual archivo especial est siendo usado para cada sesin registrada. Por ejemplo: $hostname IRIS $tty /dev/ttyq12 Especificar Caractersticas de la Terminal Generalmente los programas UNIX son escritos para ser independientes de las terminales, es decir, no saben acerca de las caractersticas especiales de cualquier tipo de terminal en particular, ms bien llaman a una biblioteca de manipulacin de pantalla estndar que es responsable de la unin de las terminales actuales. Tales bibliotecas sirven para asignar caractersticas y funciones de una terminal general (ej: limpiado de la pantalla) a unas secuencias especficas de caracteres requeridos para ejecutarlas en una terminal especfica. La definicin de las terminales esta almacenada en una base de datos del sistema, los usuarios indican que tipo de terminal estn usando, modificando la variable de ambiente TERM (usualmente al entrar al sistema). % setenv TERM vt100 vt100) $ export TERM=vt100 vt100) (csh: indica al sistema que la terminal ser definida como (sh: indica al sistema que la terminal ser definida como
30
La siguiente parte de la entrada es una serie separada de valores y cdigos de capacidad. Existen varios tipos de capacidades. Pueden especificar:
Datos acerca de la terminal. co li am ku kd SV La base de datos /usr/share/lib/terminfo/c/archivo es una serie de archivos binarios que describen las aptitudes y/o capacidades de la terminal. Cada entrada es un archivo separado en un subdirectorio /usr/share/lib/terminfo nombrado por la primer letra de su nombre. Una entrada en forma de texto de un archivo terminfo, sera la siguiente: vt100|vt100am|dec vt100 am, cols#80, lines#24, kcud1=/EOB, kcuul=/EOA, Este archivo debe ser compilado para crear el archivo binario. tic Infocmp ASCII. captoinfo Compila el texto fuente y genera el cdigo binario terminfo. Descompila el texto de una entrada de terminfo y lo muestra como texto Con la opcin -C muestra el texto en formato de termcap. Traduce una entrada termcap a un cdigo terminfo. de nos dice cuantas columnas tiene la terminal (80), cuantas lneas tiene (24) la terminal puede envolver automticamente largas cadenas salientes en lneas multiples en la pantalla de la terminal. secuencia de caracteres requerida para mover el cursor hacia arriba. secuencia de caracteres requerida para mover el cursor hacia abajo.
FIJAR CARACTERSTICAS A UNA TERMINAL. stty Permite especificar caractersticas a una terminal de tipo genrico. stty opcion [valor] Opcin erase rows columns kill intr Funcin borrado nmero de lneas nmero de columnas cancelacin de lnea interrupcin de comando Valor por default ^H ^?
^U ^C
31
^D ^Z
tomar el siguiente caracter ^V como literal borrar palabra ^W poner los parmetros en un valor razonable para la terminal definida Imprime todos los valores definidos con su valor actual
2. Determinar el nombre del dispositivo especial en el directorio /dev que comunique a la terminal /dev/ttyn donde n es el nmero de puerto serial
32
Tipo
Estado
Nombre del archivo especial asociado a esa terminal. El comando que el init debera ejecutar para monitorear esta lnea para terminales y modems, el programa usado es getty. Si no se requiere de una sesin de usuario, puede ponerse none (ej. Impresoras, terminales de despliegue)
Tipo
Tipo de terminal definido en termcap Network Usado para terminales virtuales. Dialup Usado para lneas de modem. Cero o ms palabras clave, separadas por espacios que indican el estado de la terminal. On Lnea activada, y el comando ser ejecutado por init. Off Lnea desactivada y la entrada es ignorada. Secure Permite entrada a root desde login.
Estado
Ejemplo: # # # # name # console ttya ttyb . . . ttyp0 ttyp1 ttyp2 ttyp3 ttyp4 $OpenBSD: ttys,v 1.6 1999/02/01 00:34:25 jason Exp $ getty "/usr/libexec/getty suncons" "/usr/libexec/getty std.9600" "/usr/libexec/getty std.9600" type status comments
/etc/getty Programa que permite monitorear las lneas fsicas. Recibe como argumento el nombre de un tipo genrico de terminal del archivo /etc/gettytab (base de datos de definicin de tipos genricos de lnea de terminal.). /etc/gettytab Este archivo se usa casi exclusivamente para lneas fsicas. Su formato es similar a termcap.
33
default:\ :np:im=\r\n%s/%m (%h) (%t)\r\n\r\n:sp#1200: 2|std.9600|9600-baud:\ :sp#9600: Los nombres std.n son tradicionalmente usados para lneas terminales estndar, corriendo a n baudios. La entrada default coloca para todas las entradas un valor predeterminado. Define caractersticas que van a ser heredadas por las entradas individuales. Permite colocar mensajes donde: %h hostname %t nombre del tty \r retorno de carro \n nueva lnea SV /etc/inittab Archivo de configuracin del archivo de inicio del sistema. Tambin permite definir los procesos que vana manejar terminales. Las lneas en /etc/inittab para manejar terminales tienen el siguiente formato general: Etiqueta:nivel:Comando:Puerto:Tipo de Lnea Ejemplos: HP-UX Linux (mgetty) Linux(getty_ps) IRIX Digital UNIX SCO UNIX cons:012456:respawn:/user/sbin/getty -h console console t1:234:respawn:/sbin/mgetty -D -i /etc/iss1 -s 19200 ttyS1 t1:234:respawn:/sbin/getty -h ttyS1 19200 vt100 t2:23:respawn:/sbin/getty -N ttyd2 co_9600 cons:1234:respawn:/usr/sbin/getty console console vt100 Se1a:23:respawn:/etc/getty tty1a m
Para terminales que no estn en uso se pone off en la accin. /etc/getty El comando getty de SV es ligeramente diferente a BSD. Bajo SV toma dos argumentos: el nombre del tty, correspondiendo a la parte del nombre del archivo especial (sin /dev/), y una etiqueta para buscar en /etc/gettydefs, el cual mantiene una definicin de lnea genrica. /etc/gettydefs Archivo donde se encuentran los tipos de lneas de terminales genricas.
34
Su formato es:
Etiqueta # banderas iniciales # banderas finales # prompt para login # siguiente etiqueta
(nota: Las distintas entradas deben ser separadas por espacios en blanco) Donde: Etiqueta Banderas Iniciales Banderas finales Siguiente etiqueta Es el nombre del registro Determinan las caractersticas antes de imprimir Determinan las caractersticas despus de imprimir Hace referencia a algn otro registro que se va a utilizar cuando no se pueda utilizar el indicado.
Ejemplo:
console# B9600 CLOCAL # B9600 SANE TAB3 CLOCAL #\r\n\n$HOSTNAME console login: #console co_9600# B9600 CLOCAL # B9600 SANE TAB3 CLOCAL #\r\n\n$HOSTNAME login: #co_4800
B9600 (baudios) SANE (parmetros razonables) TAB3 (tabuladores como espacios) CLOCAL (lnea local conectada directa) /etc/ttytype Se definen los tipos de terminal de defautl para cada uno de los puertos o lneas. El formato es: Tipo_de_terminal Ejemplo: vt100 tty3 Avisar a init El paso final para la instalacin de una terminal es, tanto en BSD como en SV, consiste en enviar una seal de aviso a al proceso init, de los cambios realizados. Cuando esto ocurre, init se entera que el dispositivo ha sido adherido y toma la accin apropiada (usualmente comienza un proceso getty). BSD # kill -HUP 1 SV # init -q Nombre_de_lnea
35
# init q # telinit q
36
Sistema de archivos
Un sistema de archivos (FS por sus siglas en ingls) es una estructura de tipo jerrquico que organiza los datos en una particin de disco. Se basa en un modelo arborescente y recursivo, en donde los nodos pueden ser tanto archivos como directorios, y estos ltimos pueden contener a su vez directorios o subdirectorios. Dado que un sistema de archivos de UNIX es de tipo jerrquico, los archivos no estn almacenados en un nivel sino en varios. Cualquier archivo puede ser accesado por su nombre o por su trayectoria, la trayectoria es el nombre absoluto ya que especifica la posicin absoluta de un archivo en la jerarqua.
Formato y Particiones
Antes de poder utilizar un disco duro, ste debe tener un formato que permita al sistema operativo, reconocerlo y saber cmo puede almacenar la informacin. El proceso de formato de un disco escribe informacin de direcciones y marcas de tiempo en los platos para delinear cada sector. Tambin identifica bloques-defectuosos o imperfecciones en el medio que resultan en reas que no pueden ser utilizadas confiablemente para leer o escribir. En la mayora de los casos el formato ya viene hecho por el fabricante. El programa que sirve para formatear o definir la etiqueta de un disco, en la mayora de los sistemas es: # format Nota: En IRIX se llama fx, en Linux existe fdisk o diskdruid, en Tru64, disklabel. Una vez que un disco ha sido formateado y se han mapeado los sectores, es necesario dividirlo en una o ms colecciones lgicas, llamadas particiones. Una particin, no es otra cosa que un conjunto de cilindros del disco.
37
La tabla de particiones se guarda en el disco como etiqueta. La etiqueta del disco o disk label, se encuentra en el primer sector de la primera particin. Contiene la informacin acerca de cmo est particionado un disco. El tamao total de las particiones NO debe exceder la capacidad del disco Por qu se debe particionar. Facilita las labores de respaldo, sobre todo cuando se tienen particiones pequeas Facilita la restauracin del sistema Permite manejar polticas diferentes para cada FS Previene problemas graves por el llenado de particiones, ya que no se llenan todas al mismo tiempo. Puede mejorar el rendimiento del sistema En el caso de presentarse algn dao en alguna de las particiones, asla el mismo, previniendo que afecte a todo el sistema.
Particiones comunes
Root Particin que debe contener al menos todo lo necesario para que el sistema funcione adecuadamente en modo mono-usuario.
Swap Particin que sirve para almacenar pginas de memoria virtual cuando no hay suficiente memoria fsica. Cada sistema UNIX debe tener al menos una particin de swap. Home Espacio genrico para directorios HOGAR, archivos de datos y algunas aplicaciones. Particiones BSD BSD acepta las siguientes particiones: a, b, c, d, e, f, g Sin embargo no se pueden tener todas al mismo tiempo debido a que c implica el manejo de todo el disco f g
a+b = d+e =
de esta manera puede decirse que BSD solo acepta: 1 particin c 2 particiones f, g 4 particiones a, b, d, e
38
Particiones en SV SV por definicin acepta las siguientes particiones: 0, 1, 2, 3, 4, 5,6 Donde 0 1 root Swap
Nota: Dependiendo del sistema operativo, algunas particiones sern reservadas para usos especiales. En IRIX: 0 1 6 7 8 15 root swap usr todo el disco volume header todo el disco + volume header
UTILERIAS PARA MANEJO DE PARTICIONES BSD chpt format SV format Nota: En IRIX se llama fx, en Linux existe fdisk o diskdruid.
39
En la mayora de los sistemas, el proceso de boot crea automticamente los archivos especiales apropiados cuando detecta que existe nuevo hardware. Sin embargo si esto no sucediera, debemos crear los archivos. Mknod Es el comando que nos permite crear archivos especiales. # mknod name [c|b] mayor menor Donde: name es el nombre del archivo especial [c|b] implica el tipo de archivo: c dispositivo de caracter (dispositivo crudo) Las entradas y salidas se manejan uno a uno b dispositivo de bloque Las entradas y salidas se manejan a travs de un buffer Identifica el manejador utilizado por el kernel para comunicarse con el
mayor dispositivo
menor Identifica la ubicacin del dispositivo. Por ejemplo cuando dividimos un dispositivo fsico en varios dispositivos lgicos. Nota: En Solaris, los dispositivos se encuentran en /devices para configurarlos debe utilizarse la herramienta drvconfig. Sin embargo el sistema casi siempre crea los dispositivos necesarios simplemente reiniciando el sistema con la opcin -r ok> boot -r
mkfs Para instalar un sistema de archivos dentro de una particin de disco, debemos crear toda su estructura. # mkfs nombre_del_archivo_especial
40
Estructura de un sistema de archivos Boot Superbloque Tabla de i-nodos Direccin 0, generalmente no es usada por el FS se deja para el procedimiento de bootstrap. Almacena toda la informacin de las direcciones del disco. Lista de definiciones de archivo. Cada i-nodo est numerado, de tal forma que la combinacin del nombre del dispositivo y su nmero en esta lista sirven para identificar en forma nica un archivo en particular. Estructura que contiene la informacin de identificacin de cada archivo en el sistema. Esta rea se usa para almacenar el contenido de los
41
Montar y desmontar FS
Para que un sistema de archivos pueda ser utilizado por UNIX, este debe ser reconocido por el sistema. Para ello se debe anexar a la estructura jerrquica de UNIX. La raz o sistema de archivos de root, como se le conoce es el punto principal de donde se desprende toda la estructura, est siempre almacenada en un dispositivo, sin embargo no es necesario que el sistema jerrquico de archivos completo resida en este dispositivo. Montar un FS implica poner un archivo a disponibilidad del sistema, para que pueda ser utilizado por los procesos. Para montar un FS se requiere de dos argumentos: 1. El nombre del directorio existente en la estructura jerrquica de UNIX (punto de montaje) 2. El nombre del archivo especial cuyo volumen de almacenamiento asociado tiene la estructura de un sistema de archivos independiente, conteniendo su propio directorio jerrquico. mount Crea referencias en el directorio del primer sistema de archivos al lugar en donde se encuentra la otra raz del sistema de archivos a montar. Una vez que se ejecuta el comando mount, no hay distincin entre los archivos contenidos en los diferentes sistemas de archivos. # mount Ejemplo: # mount /dev/dsk/dks0d1s6 /usr umount Elimina las referencias en el directorio del primer sistema de archivos al sistema de archivos que se va a desmontar. Una vez que el FS ha sido desmontado, no puede ser accesado por los procesos de UNIX. Tipos de sistemas de archivos HP-UX AIX SunOS Solaris IRIX Tru64 hfs jfs 4.2 ufs xfs, efs ufs, advfs dispositivo punto_de_montaje
42
Linux OpenBSD
Archivos de configuracin para montaje automtico Para que un sistema de archivos sea montado durante el proceso de alta del sistema, se debe definir en los archivos de configuracin del sistema. /etc/fstab /etc/vfstab /etc/filesystems /etc/mnttab BSD SV AIX HP-UX
Estos archivos contienen la definicin de todos los discos y sus puntos de montaje. SV
archivo_especial archivo_crudo punto_de_montaje tipo fsck_pass automount opciones
Donde fskc_pass BSD archivo_especial punto_de_montaje tipo Donde: frecdump passno Ejemplo: /dev/root / xfs rw,raw=/dev/rroot 0 0 /dev/dsk/dks0d1s7 /usr/people xfs rw,quota,raw=/dev/rdsk/dks0d1s7 0 0 /dev/dsk/dks0d3s7 /usr/local xfs rw 0 0 Montaje automtico BSD mount -a SV mount a mount all mount -all montar todos los de la tabla vfstab montar todos los de la tabla fstab opciones frecdump passno orden en que va a ser
frecuencia del dump (como respaldo) orden en el que se van a verificar los FS
43
Fragmentacin de un FS
A la prdida de la integridad en un FS debida a la falta de sincronizacin entre la memoria y el disco se le conoce como fragmentacin del disco. Origina los siguientes problemas: Un bloque que pertenece a varios archivos Bloques en uso marcados como libres Bloques libres marcados como en uso Conteo incorrecto de ligas Inconsistencia de datos en la tabla de los FS Inconsistencia entre i-nodos y bloques referenciados Archivos perdidos Fsck Comando que permite verificar la integridad de los Sistemas de Archivos. Se recomienda utilizarlo en modo de mantenimiento o single user y que los FS que vayan a ser verificados se encuentren desmontados. # fsck /dev/dsk/rsd2c Una vez que fsck ha corrido, trata de corregir los problemas descritos con anterioridad para que el FS sea marcado como limpio. Si fsck encuentra archivos o cadenas perdidos y no asociados a ningn archivo especfico, los ubicara en un directorio llamado lost+found el cual nicamente debe tener permisos para root. # fsck [opcion] dispositivo -n -y -q no a las preguntas si a las preguntas modo silencioso.
44
El formato de salida cambia en algunos sistemas operativos. Pero, en la mayora los datos son los siguientes: FileSystem Available Used Free % Mounted on find Permite localizar archivos que cumplan con ciertas condiciones, y actuar sobre ellos de diversas formas. Ejemplos de find: find . -perm -002 Busca archivos que tengan permiso de escritura para otros a partir del directorio actual. find /tmpu -atime +7 Busca archivos cuya fecha de ltimo acceso sea mayor a 7 das, a partir del directorio /tmpu. find / -nouser Busca desde raz, archivos cuyo dueo no exista en /etc/passwd. Nombre del FS Nmero de bloques disponibles (tamao del FS) Nmero de bloques utilizados Nmero de bloques libres Porcentaje en que el FS esta siendo utilizado Punto de montaje del FS
45
Insuficiencia
en el espacio de almacenamiento
Mecanismos para manejar la escasez de disco Cuando un sistema UNIX tiene problemas de espacio en disco, el administrador debe optar por alguna de las siguientes medidas: Adquirir un nuevo disco. Revisar bitcoras. Borrar archivos viejos. Ejercer presin a los usuarios para que depuren. Implantar cuotas. Importar disco remoto. Implementar o instalar algn mecanismo de migracin de archivos.
CUOTAS DE DISCO Mecanismo que permite limitar nmero de bloques que un usuario puede utilizar en un FS nmero de archivos que puede crear. Existen 2 clases de lmites: Limite suave (sotf) Limite duro (hard) Menor que el duro, se puede rebasar, el sistema avisar al usuario que ha rebasado su lmite, pero le permitir seguir trabajando por un tiempo. Lmite que el usuario NO puede rebasar, una vez que se alcanza el sistema ya no permite hacer nada al usuario.
Las cuotas se definen y configuran por sistemas de archivos, es decir que cada FS puede ser manejado con polticas diferentes de cuotas. Creacin de cuotas 1. Modificar los archivos de configuracin (fstab o vfstab), indicando la palabra quota en las opciones y en su caso el dispositivo tipo crudo del FS. 2. Crear un archivo llamado quotas en el directorio raz del FS. Este archivo debe pertenecer a root y tener permisos 600. 3. Establecer las cuotas que tendrn los usuarios mediante la utilizacin del comando edquota. # edquota usuario Permite establecer cuotas para un usuario en particular # edquota p usuario lista_de_usuarios Permite copiar las cuotas de un usuario prototipo a los usuarios especificados. 4. Activar el sistema de cuotas: quotaon activa el sistema de cuotas
46
quotaoff
5. Verificar las cuotas de todos los usuarios: quotacheck 6. Generar un reporte de cmo estn configuradas las quotas repquota Monitoreo de cuotas Un usuario puede conocer su cuota de disco utilizando el comando: $ quota v El superusuario puede conocer el uso de espacio que un usuario est haciendo de un sistema de archivos con cuotas aadiendo el login del usuario. # quota v usuario NFS (network file system) Servicio creado por Sun Microsystems Permite que un disco conectado fsicamente a una mquina, pueda ser usado por otra como si fuera o estuviera conectado fsicamente a ella. o El tiempo de respuesta es ms grande. o El manejo de los permisos es diferente o Funciona con base en el modelo cliente-servidor o El kernel debe tener activada la opcin NFS. NFS utiliza 3 demonios nfsd atiende las peticiones de archivos mountd atiende las peticiones de montaje portmap realiza un mapeo de puertos. Ayuda a establecer la comunicacin Entre el cliente y el servidor. Los demonios se arrancan en /etc/rc.local BSD /etc/init.d/nfs S.V.
Montar un FS a travs de NFS Servidor Defino que directorios va a exportar, que mquinas los van a poder montar. Cliente Defino los FS que voy a montar va NFS
47
BSD /etc/exports directorio opciones /appl -access=batari:ginebra:jaibol:tequila,ro /usr/people -root=batari:ginebra,rw Es recomendable exportar con los mnimos privilegios necesarios. SV /etc/dfs/dfstab Contiene comandos share se utiliza para exportar algn dispositivo, aqu especfico que voy a exportar
share -F nfs -o ro:aldebaran:pegasus:altair /opt share -F nfs -o rw:aldebaran:pegasus /var/mail Montar FS a travs de NFS mount -t nfs saka:/usr/people /home
Opciones ms comunes: bg retry timeo retrans (para que mande en segundo plano y el sistema no se congele) (cuantas veces va a reintentar, retry=nmero) (timeout timeo=segundos) (nm. De retransmisiones que va a pedir)
48
RESPALDOS
Los datos son el componente ms valioso de un sistema de cmputo. "Para m, los datos de los usuarios son de importancia inigualada. Cualquier otra cosa es generalmente reemplazable. Se pueden comprar ms discos, ms computadoras, ms energa elctrica, pero si se pierden los datos, por un incidente de seguridad o por cualquier otra cosa, se van para siempre". Russell Brand. La mejor proteccin contra la prdida de stos consiste en hacer copias de seguridad con el fin de evitar cualquier tipo de riesgo al que puedan estar expuestos los datos, tales como errores de usuarios, errores de programacin, fallas del hardware, intrusos, robo o destruccin de los equipos, desastres naturales, etc. Un elemento crucial al decidir realizar copias de seguridad es la identificacin de las aplicaciones e informaciones crticas ya que con base en esto se decide la frecuencia con la que se realizaran las copias de seguridad, los archivos que se copiarn, as como los medios dnde se almacenarn las copias.
Estrategias de respaldo
La estrategia de respaldo Consiste en determinar las polticas de respaldos. Involucra:
49
Tiempo y esfuerzo representado por las modificaciones a los archivos. Tiempo y esfuerzo representado por la copia de seguridad de los archivos. Valor del contenido de los archivos.
Consideraciones al realizar respaldos Nmero de copias de seguridad. Manipulacin de medios. Etiquetas. Rotacin. Verificar que el respaldo se haga completo. En sitios grandes es funcin del operador el verificar los respaldos y cambiar las cintas cuando el sistema lo requiere (respaldos atendidos). Una solucin es adquirir un mecanismo (robot) que cambie las cintas y verifique los respaldos de forma automtica.
Unidades de Cinta Las cintas son accesadas por dispositivos tipo crudo (raw). Para el manejo de cintas UNIX utiliza bsicamente 2 dispositivos. Dispositivo rewind (el cual rebobina y retensiona las cintas) Dispositivo norewind (el cual no rebobina las cintas)
50
Los nombres de los archivos especiales asociados a estos dispositivos, varan dependiendo del UNIX, pero bsicamente son: Unix SunOS Solaris Digital UNIX AIX IRIX Linux Rewind /dev/rst? /dev/rmt/? /dev/rmt/? /dev/rmt? /dev/rmt/tps?d? /dev/tape /dev/st? No rewind /dev/nrst? /dev/rmt/?n /dev/nrmt? /dev/rmt?.1 /dev/rmt/tps?d?nr /dev/nrtape /dev/nst?
Nota: Cuando se manejen mltiples respaldos en una sola cinta, es muy importante estar seguro del funcionamiento de los dispositivos rewind y no rewind ya que vara en cada UNIX. Mt Programa de Manipulacin de Cintas Magnticas. Posiciona una cinta en un lugar particular. til cuando se manejan mltiples respaldos en una sola cinta. $ mt [ -f dispositivo ] comando Mt se utiliza para dar comandos a los drives de cintas magnticas. Por default utiliza el dispositivo norewind. Los comandos ms utilizados son: status fsf bsf rewind Da el estado de la cinta Recorre 1 archivo_de_cinta hacia delante (forward) Recorre 1 archivo_archivo_de_cinta hacia atrs (backward) Rebobina la cinta
El funcionamiento de mt vara para cada sistema operativo, ya que en algunos sistemas comienza la cuenta desde el archivo actual y en otros no, por tanto el administrador deber verificar primero este funcionamiento antes de realizar cualquier respaldo. Ejemplos: $ mt status Controller: SCSI Device: ARCHIVE: Python 01931-XXX5.63 Status: 0x20262 Drive type: DAT Media : READY, writable, at BOT $ mt fsf 1 $ mt status
51
Controller: SCSI Device: ARCHIVE: Python 01931-XXX5.63 Status: 0x28260 Drive type: DAT Media : READY, writable, at FMK, block 43 $ mt fsf 1 $ mt status Controller: SCSI Device: ARCHIVE: Python 01931-XXX5.63 Status: 0x24260 Drive type: DAT Media : READY, writable, at EOD, block 86 Algunos cdigos importantes que reporta mt son: BOT Begin of Tape EOT End of Tape EOD End of Data Block Si es diferente de 0, la cinta est recorrida. File number= Nmero de archivo de la cinta Herramientas de Respaldo Dump Utilera de respaldo propia de BSD. Permite realizar respaldos de sistemas de archivos, ya sea completo o incremntales. Maneja nueve de respaldo incremental, y lleva un registro de cundo se hizo el ltimo respaldo de cada sistema de archivos, y en qu nivel. Cuando se solicita un respaldo incremental, se respaldan todos los archivos que hayan sido modificados desde la ltima fecha en que se realiz un respaldo de un nivel menor. Maneja el archivo de configuracin /etc/dumpdates <archivo especial> /dev/rz0c <nivel> <fecha> 2 sun feb 26 <hora> 12:09:45 1995
Si es la primera vez que se va a respaldar, debe crearse el archivo de configuracin. # touch /etc/dumpdates
[opciones]
filesystems
52
s d C
tamao cinta en pies 9 tracks 2300 densidad (BPI) 9 tracks 6250 BPI
capacidad en megabytes 2m = 2gigabytes 200 = 200 megabytes wait (nicamente imprime, no hace nada) dispositivo destino
w f Ejemplo:
Respaldo completo nivel 0, actualizar el archivo dumpdates, el tamao de la cinta es de 2300 pies, la cinta se encuentra ubicada en /dev/rmt1, su densidad es de 6250 bpi y el FS a respaldar es /dev/dsk/rz0c.
# dump 0usfd 2300 /dev/rmt1 6250 /dev/desk/rz0c dump (/inv to tape): Dates of this level 0 dump:Wed Feb 22 07:08:29 1995 dump (/inv to tape): Dumping /inv " : to tape " : mapping " : estimated 249248 sectors en 408 volume (s)
Respaldo completo Respaldo incremental Lista archivos Respalda archivos bajo $HOME de user Dispositivo Indica que el dispositivo es cinta (default floppy)
#backup -c -t -d /dev/rmt/0 / respaldo completo en cinta de root /etc/bkup/bkreg.tab Registro de respaldos Comandos de Administracin de backup bkstatus bkhistory Ver el estado de un respaldo (active, suspend, pending, failed, waiting, completed) Ver el estado de un respaldo ejecutado con anterioridad
53
Opciones if of ibs obs cbs fskip count conv input file output file tamao de bloque de entrada tamao de bloque de salida tamao de bloque de conversin salta archivos nmero de bloques a transferir tipo de conversin ascii EBCDIC ASCII swab invierte cada par de bytes
Ejemplo: # dd if=/dev/rmt0 of=/tmp/root/respaldo ibs=20 obs=20 conv=swab $ dd if=archivo1 of=archivo2 Copiar una cinta completa $ if=/dev/tape of=cinta cbs=20b $ if=cinta of=/dev/tape cbs=20b
Cpio Comando que permite empaquetar archivos en un contenedor cpio, es decir almacena otros archivos en uno solo. El contenedor puede ser un disco, otro archivo, una cinta o una tubera. Los archivos pueden ser ordinarios, dispositivos o FS completos. # cpio -o [llaves] # cpio -i [llaves] [patrones] # cpio -p [llaves] [directorios] o i p m t v d Genera un contenedor en la salida estndar Toma archivos en un contenedor de la entrada estndar Lee de la entrada estndar los nombres de los archivos que hay que copiar y los copia en el directorio especificado. Conserva los atributos de los archivos Crea una tabla de contenidos Modo verbose Especificar un directorio
Ejemplos:
54
# # # #
/var | cpio o > /dev/tape . name *.txt | cpio o /tmp/textos.cpio i < /dev/st0 . | cpio pd /tmp/nuevo
Tar Comando que permite empaquetar archivos en un contenedor tar, es decir almacena otros archivos en uno solo. El contenedor puede ser otro archivo, una cinta o una tubera. Los archivos deben ser ordinarios, FS completos. Su nombre significa Tape Archiver, pero uno de sus usos ms comunes es el manejo de archivos de disco. Normalmente se combina con algn programa de compresin/descompresin de datos ( compress, gzip, etc.) para disminuir el espacio ocupado por los archivos. Se utiliza para distribuir programas de dominio pblico, pues permite incluir todos los archivos necesarios en un solo archivo de distribucin. Sintaxis: tar llave [ argumentos ] archivo | directorios [] Llave: Debe contener alguna de las siguientes funciones: c x t Crear un respaldo. Extraer archivos de un resplado. Listar los archivos de un respaldo
Opciones ms utilizadas: v f file Proporcionar informacin de lo que se est haciendo (verbose) Utilizar el archivo especifico en vez de la unidad de cinta de default para hacer el respaldo. Se usa para hacer respaldos en un archivo en disco o en dispositivos alternos. Se puede utilizar - para especificar la entrada o salida estndar.
En tar los argumentos no se ponen inmediatamente despus de su letra correspondiente, sino que todas las letras se agrupan en un solo bloque y despus se tienen que poner todos los argumentos en el orden correcto. En vez de utilizar $ tar -c -v -b 20 -f /dev/rmt8 .
55
se usa $ tar Ejemplos: $ tar c . Crear un respaldo en la cinta de default del directorio actual y todos sus subdirectorios. $ tar cvf backup.tar ./usr ./etc ./bin Crear el archivo backup.tar que contenga los directorios usr, etc y bin del directorio actual. $ tar cvf - . | gzip > ../respaldo.tar.gz Crea un respaldo del directorio actual en la salida estndar, que es pasado al gzip para que lo comprima, y el resultado es puesto en el archivo reslapaldo.tar.gz $ tar cvf - . | ( cd /tmp/dup; tar xvf -) $ tar cvf - . | tar xvCf /tmp/dup Son formas equivalentes de crear un duplicado perfecto del directorio actual en el directorio /tmp/dup Se recomienda no usar rutas absolutas. Tar no puede cambiar la ruta de un archivo al momento de recuperarlo. Por ejemplo, si un respaldo se realiz con el siguiente comando: $ tar cv /usr/users/jqz Al momento de recuperarlo, tar va recuperar los archivos con exactamente la misma ruta, de manera que si /usr/users/jqz ya exista, sus archivos sern reemplazados por los del respaldo. La solucin es utilizar nicamente rutas relativas al momento de crear un respaldo con tar. Por ejemplo, en vez del comando anterior, se puede ejecutar: $ cd /usr/users $ tar cv ./jqz con lo cual el respaldo se podr recuperar al directorio jqz debajo del directorio actual, sin importar cul sea. Respaldos remotos. Para realizar respaldos en mquinas que carecen de unidad de cinta, debe combinarse tar con algn comando de red como rsh o ssh, as como el comando dd el cual permite especificar el dispositivo al que se escribir en la mquina remota. # tar cvf - * | ssh l usuario maquina dd of=/dev/tape obs=20b # ssh l usuario maquina dd if=/dev/tape ibs=20b | tar xvf -cvbf 20 /dev/rmt8 .
56
Restaurar respaldos Restore # restore r R x f h v i Ejemplo: # cd /usr/users # restore xf /dev/rmt1 yoli otro/tmp/dos opciones argumentos [archivos y directorios]
lee y restaura la cinta completa selecciona una cinta de un respaldo multivolumen extrae dispositivo de entrada no recursivo verbose interactivo
57
58
----yiacatl.contad.unam.mx PING Statistics---3 packets transmitted, 3 packets received, 0.0% packet loss round-trip min/avg/max = 40.497/51.489/65.587 ms
Traceroute Comando que permite verificar el camino que un paquete sigue hasta llegar a su destino. No existe en todos los sistemas UNIX, en dado caso se baja y se compila.
$ traceroute yiacatl.contad.unam.mx traceroute to yiacatl.contad.unam.mx (132.248.18.40), 30 hops max, 38 byte packets 1 castor (132.248.159.1) 7.386 ms 13.812 ms 9.407 ms 2 gw-dgsca.labvis.unam.mx (132.248.160.254) 2.094 ms 1.570 ms 1.468 ms 3 132.248.254.254 (132.248.254.254) 1.990 ms 1.583 ms 1.545 ms 4 yiacatl.contad.unam.mx (132.248.18.40) 35.217 ms 150.752 ms 116.732 ms
Un asterisco (*) implica que hay un problema en esa ruta. Utilizando tanto ping como traceroute podemos saber si el problema es la mquina o la red. Nslookup
Comando que permite hacer una consulta a un servidor de nombres. Si una mquina es vista con su direccin IP, pero no con su direccin cannica, el problema est en el servidor de nombres. Al tener un equipo nuevo, no se puede asignar una IP arbitraria Si hay otra mquina con la misma IP, desconfigura la anterior.
$ nslookup rigel.contad.unam.mx Note: nslookup is deprecated and may be removed from future releases. Consider using the `dig' or `host' programs instead. Run nslookup with the `-sil[ent]' option to prevent this message from appearing. Server: 132.248.204.1 Address: 132.248.204.1#53 Name: rigel.contad.unam.mx Address: 132.248.18.50
Habilita la interface de red Deshabilita la interface de red Permite especificar la direccin IP En algunos sistemas inetaddr netmask mask mscara de la red (tipo de red) broadcast mensajes pblicos de reconocimiento Ejemplo:
# ifconfig ec0 down # ifconfig ec0 inet 132.248.168.94 netmask 0xffffff00 broadcast 132.248.168.255 # ifconfig ec0 up
60
Los nombres ms comunes de interfaces de red son: Unix IRIX Linux SunOS Solaris Aix eco, et0 eth0 le0, ie0, ec0 le0 en0, et0 Interface
El comando ifconfig tambin permite conocer informacin sobre las interfaces de red. # ifconfig a Ejemplo:
% ifconfig -a ec0: flags=c43<UP,BROADCAST,RUNNING,FILTMULTI,MULTICAST> inet 132.248.168.94 netmask 0xffffff00 broadcast 132.248.168.255 lo0: flags=1849<UP,LOOPBACK,RUNNING,MULTICAST,CKSUM> inet 127.0.0.1 netmask 0xff000000
En sistemas donde ifconfig no soporta la opcin a, puede utilizarse el comando netstat. # netstat i Ejemplo:
3% netstat Name Mtu ec0 1500 lo0 8304 -i Network 132.248.168 loopback Address coronel localhost Ipkts Ierrs 5252196 8 536611 0 Opkts Oerrs Coll 1047663 0 63241 536611 0 0
En algunos sistemas los cambios realizados con el comando ifconfig no quedan almacenados permanentemente por lo que se debern modificar los archivos de configuracin adecuados.
61
En irix: /etc/sys_id En Linux: /etc/sysconfig/network-scripts/ifcfg-eth0 HOSTNAME=coronel /etc/hosts Principal archivo de configuracin de red. Contiene las direcciones de todos los hosts conocidos. Incluye a localhost y la direccin IP del host local # DireccinIP Nombre DNS # la lnea de localhost es obligatoria 127.0.0.1 localhost 132.248.168.85 coronel.dgsca.unam.mx Alias coronel
En Linux la IP se especifica en: /etc/sysconfig/network-scripts/ifcfg-eth0 IPADDR=132.248.168.85 /etc/defaultdomain Permite especificar el dominio del sistema. En sistemas que no manejan este archivo, el dominio se obtiene del archivo /etc/hosts /etc/netmask Archivo de configuracin de la mscara de red En irix: /etc/config/ifconfig-?.options 0xffffff00 En Linux: /etc/sysconfig/network-scripts/ifcfg-eth0 NETMASK=255.255.255.0
62
domain y search son mutuamente excluyentes. Hostresorder indica la prioridad de bsqueda en el proceso de resolucin de nombres Local ve archivos locales Bind busca en el servidor de nombres /etc/nsswitch.conf En las nuevas versiones de sistemas UNIX, este archivo permite indicar el orden de bsqueda en la resolucin de nombres. hosts: files, dns
63
Nota: Cuando se deshabilite un servicio hay que eliminar al demonio y cerrar el puerto asociado a ese servicio. inetd Demonio de Internet Toma la peticin y arranca al demonio correspondiente Utiliza el archivo de configuracin /etc/inetd.conf /etc/inetd.conf
<servicio> telnet <tipo socket> steam <protocolo> tcp <delay> <programa> wail /usr/etc/telnetd <argumentos> telnetd
<socket> Tipo de archivo que permite hacer la conexin. <delay> que mientras est atendiendo un servicio no puede correr otro o viceversa wait nowait La mayora de los demonios de red son manejados a travs de inetd En UNIX es una convencin que los nombres de los demonios terminen con d Ejemplo: talkd telnetd ftpd fingerd /etc/hosts.equiv permite crear un mecanismo de confianza No se recomienda su uso excepto para localhost
64
Paginacin
La paginacin es cuando el espacio de direcciones de un programa se divide en unidades llamadas pginas. Las unidades correspondientes en la memoria fsica se denominan cuadros de pgina. Las pginas y los cuadros de pgina siempre son del mismo tamao. Las transferencias entre la memoria y el disco siempre estn en unidades de una pgina. Se mantienen en memoria principal las pginas que estn usando los procesos activos. Si un programa direcciona una pgina que no est en memoria principal, se produce una falla de pgina. El sistema operativo toma un cuadro de pgina con poco uso y vuelve a escribir su contenido en el disco. Despus captura la pgina recin referida en el cuadro de pgina que acaba de liberarse.
Swap
El swap es la memoria virtual manejada por UNIX, su funcionamiento depende estrictamente del sistema operativo, algunos manejan swapping y otros paginacin o ambos.
Tipos de swap
Particin fsica swap raw sw Linux swap Archivo dedicado (permisos 600) BSD dd if=/dev/zero of=swapfile bs=1024 count=tamaoenks SV mkfile tamao[k|b|m|g] archivo
65
2. En algunos sistemas operativos se debe configurar el dispositivo como swap, avisndole al kernel. Linux mkswap {swapfile|swapdevice} FreeBSD vnconfig -c swapdevice swapfile 3. Activar el swap BSD swapon {swapfile|swapdevice} En OpenBSD swapctl -a {swapfile|swapdevice} SV swap -a {swapfile|swapdevice} 4. Si se desea dejarlo permanentemente modificar: BSD: /etc/fstab {swapfile|swapdevice} swap swap defaults 0 0 SV: /etv/vfstab /appl/swap - - swap - no -
Listar el swap
BSD pstat -s En Linux: cat /proc/swaps free swapon -s En OpenBSD: swapctl -l swapctl -k swapctl -s SV
66
67
68
INSTALACIN DE APLICACIONES
Distribucin de aplicaciones
Binarias. Ventaja: Ms fciles de instalar. Desventaja No tenemos un control real de cmo fueron compiladas. Proporcionan opciones por default. Cdigo fuente. Ventaja: Podemos configurar de acuerdo al sitio. Tenemos control sobre rutas y opciones. Desventaja: Ms difciles de instalar.
Manejadores de paquetes
Proporcionan utileras para el control de versiones dependencias. RPM rpm -i [install-options] <package_file>+ PKG pkg_add [-d] pkg_name Tardist inst -a -f http://server/distdir/file.tardist y verificacin de
70
REFERENCIAS
Frisch, Ellen. Essential System Administration. O'Reilly & Associates, Inc. Nemeth, Evi. System Administration Handbook. Prentice-Hall Loukides, Mike. System Performance Tunning. 1a. edicin. O'Reilly & Associates, Inc. UNIX performance tuning : sys admin. R & D Books Flores, Y. Caballero, R. Notas de cursos. (Administracin de UNIX, rea de Administracin de Sistemas UNIX, Departamento de Supercmputo, DGSCA, UNAM. Flores Y. Administracin de UNIX, Lnea de especializacin en Administracin y Seguridad en UNIX, Seguridad en Cmputo 2003, DGSCA, UNAM.
71