Professional Documents
Culture Documents
Índice
1
Módulo 11: Administración del NOS avanzada
Descripción general
2
Módulo 11: Administración del NOS avanzada
11.1 Backups
El proceso de backup involucra la copia de datos de una computadora a algún otro medio de
almacenamiento confiable para salvaguardarlos. Una vez que los datos han sido archivados por un
dispositivo semejante, el administrador del sistema puede entonces restaurar los datos al sistema
desde cualquier backup grabado anteriormente. Estos dispositivos de almacenamiento alternativos
no necesitan ser extremadamente rápidos o fácilmente accesibles. Hay otras consideraciones que
son más relevantes:
• Costo
• Tamaño
• Manejabilidad
• Confiabilidad
Costo
Los backups son llevados a cabo bastante a menudo y requieren almacenamiento eficaz en
materia de costos. Afortunadamente, con los rápidos avances de la tecnología moderna, los
dispositivos de almacenamiento se están volviendo simultáneamente más rápidos y más baratos.
Tamaño
Los servidores por lo común pueden almacenar cantidades extremadamente grandes de datos.
Como resultado de ello, es importante seleccionar un medio de backup que proporcione una
capacidad de almacenamiento comparable.
Manejabilidad
A pesar de su importancia, los administradores de sistemas no pueden darse el lujo de pasar
varias horas de cada día en backups del sistema. Cada dispositivo debe ser eficiente y fácilmente
manejable para ayudar a dar lugar al proceso.
Confiabilidad
El backup del sistema sólo es beneficioso si los datos pueden restaurarse exitosamente en algún
punto en el futuro. Si un medio de almacenamiento se desgasta fácilmente o se vuelve ilegible, el
esfuerzo hecho por hacer un backup del sistema se desperdicia.
Grandes backups del sistema pueden consumir mucho tiempo y por lo común solamente se llevan
a cabo para computadoras críticas, como servidores de red. Para evitar restringir los recursos
limitados del servidor, los backups usualmente se ejecutan durante horas de red no pico, que es
por lo general en medio de la noche. Son más eficaces cuando se los lleva a cabo a intervalos
3
Módulo 11: Administración del NOS avanzada
regulares y comúnmente están programados tan a menudo como una vez por día. Sin un
cronograma regular de backups del sistema, el riesgo potencial de perder datos es mucho mayor.
Tipos de Backups
El tipo más común de procedimiento de backup consiste en que el administrador coloque una cinta
de backup en una unidad de cinta y copie los datos a un backup de cinta. Por ejemplo, el
administrador puede especificar qué datos se copian y en qué puntos se copian los datos. Los
backups usan un tipo de "marcador" de backup, que sirve como atributo de archivo que marca un
archivo cuando ha cambiado desde la última vez que el archivo fue sometido a backup. El método
de backup escogido puede usar este atributo para determinar si hacer o no backup del archivo.
Cuando el archivo es copiado, el atributo se borra. Hay cuatro tipos de procedimientos de backup
que definen cómo éste tendrá lugar:
• Completo
• Parcial
• Incremental
• Diferencial
Completo
Un backup completo, también llamado backup normal, copiará todo en el disco rígido en un
momento programado del día. Hará esto cada día. Un backup completo no usa los "marcadores"
previamente mencionados ni atributos de archivo para determinar qué archivos copiar. Cuando se
lleva a cabo un backup completo, cada marcador de archivo se borra y marca como copiado. Los
backups normales aceleran el proceso de restauración, porque los archivos copiados son los más
actuales.
Parcial
Un backup parcial copia los archivos seleccionados. Los tipos de backup parcial incluyen backup
de copia y diario. Un backup de copia copiará cualquier archivo y carpeta que un administrador
seleccione para ello. Este tipo de backup parcial es útil para backups que pueden hacerse sin
borrar los marcadores. Un backup de copia no busca y elimina marcadores cuando se hace el
backup. Un backup diario es un método de backup parcial útil que un administrador puede hacer
para seleccionar todos los archivos y carpetas que han cambiado durante el día.
Incremental
En un backup incremental, sólo los archivos que han cambiado desde el último backup se
seleccionarán para el mismo. Los archivos se seleccionan basándose en si han o no cambiado
recientemente, en lugar de una selección arbitraria basándose en nombres de directorio o archivo.
Diferencial
Un backup diferencial copiará los archivos creados o cambiados desde el último backup normal o
incremental. No marca los archivos como copiados. Un backup diferencial no borrará los
marcadores. Todos los archivos, incluyendo aquéllos que no han cambiado desde el último backup,
se copiarán.
4
Módulo 11: Administración del NOS avanzada
5
Módulo 11: Administración del NOS avanzada
El mapeo de unidades es una herramienta útil que permite a un administrador compartir recursos
almacenados en un servidor. El mapeo es un proceso de dos etapas que requiere definir primero la
ruta al recurso de red, y luego la asignación de una letra de unidad a ese recurso. Las letras de
unidad son significativas sólo localmente, lo que significa que diferentes letras de unidad en
diferentes computadoras cliente podrían representar la misma solución de recurso de red a
intrincados dispositivos robóticos. La Figura muestra un ejemplo de una unidad de red mapeada
en un sistema operativo Windows.
6
Módulo 11: Administración del NOS avanzada
Mapear una unidad de red en el NOS Windows puede lograrse en una de dos maneras:
7
Módulo 11: Administración del NOS avanzada
La unidad mapeada aparece como la letra de unidad asignada en el panel izquierdo del
Explorador, junto con las disqueteras, unidades de CD, y particiones del disco rígido. Se puede
acceder a ella desde el Explorador de Windows, Mi PC, o desde el escritorio si se ha creado un
acceso directo.
\\nombrecomputadora\ nombrecompartido
Para mapear una unidad de red al recurso compartido, introduzca lo siguiente en el prompt de
comandos:
El comando net use puede usarse en lugar del mapeo de unidades mediante el Explorador de
Windows. net use también puede incorporarse a un script de inicio de sesión que se ejecute
automáticamente cuando el usuario inicie sesión en la red.
8
Módulo 11: Administración del NOS avanzada
Mapear una unidad a un servidor Linux se hace usando uno o dos métodos. Si los clientes están
usando Windows, entonces el daemon Samba necesitará cargarse al servidor Linux. El daemon
Samba carga el protocolo SMB, que permite la comunicación entre computadoras Linux y
Windows. Una vez que el daemon Samba se ha cargado y se han configurado los directorios
apropiados para compartir, entonces los clientes Windows pueden mapear una unidad al directorio
compartido en el servidor Linux, como si estuvieran conectados a un servidor Windows. El usuario
seguiría los pasos descritos previamente para mapearse al directorio compartido.
Una computadora cliente que corra Linux debe mapearse de manera levemente diferente. Primero,
use el comando mount para establecer una conexión al directorio compartido en el servidor.
Introducir la sintaxis mapeará una unidad para compartir en Linux/UNIX. La sintaxis es la siguiente:
La designación de directorio local que señala a la unidad remota compartida denotada por la
primera parte del comando se llama punto de montaje del directorio. La ubicación del punto de
montaje ya debe existir antes de que se pueda mapear a ella. Esto significa que el punto de
montaje debe establecerse primero en el servidor Linux que estará compartiendo los recursos.
9
Módulo 11: Administración del NOS avanzada
10
Módulo 11: Administración del NOS avanzada
La Utilidad fdisk
El Capítulo 7 trató los conceptos básicos sobre qué hace la utilidad fdisk. No obstante, los detalles
acerca de cómo usar fdisk y todas las opciones no se trataron. La versión de Linux de fdisk opera
de manera muy diferente a la versión que se usa en los sistemas Windows y DOS.
Al igual que la mayoría de las utilidades Linux, fdisk está basada en texto y requiere el uso de
comandos de una letra para manipular las opciones. Para obtener una lista de los comandos que
pueden usarse con fdisk, tipee m o ? en el prompt de fdisk. Algunos de los comandos más
comúnmente usados se enumeran en la Figura .
La sintaxis de comandos para usar fdisk es bien simple. El comando fdisk se usa junto con el
nombre de archivo del dispositivo en particular asociado con la partición. Por ejemplo, el siguiente
comando debe emitirse primero para poder usar cualquiera de las opciones de más arriba:
fdisk /dev/hda2
Una vez usado este comando, es una buena idea usar primero la opción p para mostrar la
información acerca de la partición. Desde este punto, cualquiera de los comandos enumerados
más arriba puede usarse para hacer cambios en la partición. Tenga en cuenta que no sólo es una
buena idea conocer qué información hay en la partición, sino que toda ella está copiada en un
backup primero. Una vez borrada la partición, también lo son todos los datos en dicha partición.
Algunas de las opciones enumeradas en la Figura requerirán información adicional tal como
cuándo se crean nuevas particiones. Luego, deberá introducirse información acerca de los nuevos
parámetros de la partición.
La Utilidad mkfs
Crear una nueva partición o hacer cambios en la partición es solamente el primer paso de la
administración de particiones. Una vez que se han hecho los cambios en la partición, un sistema
de archivos debe crearse en ella. Esto también se denomina formatear la partición. Use la utilidad
mkfs para crear un sistema de archivos en Linux. En el Capítulo 9 se explicó que esta utilidad se
usaba para crear un sistema de archivos y formatear una partición. No obstante, los detalles de
esta utilidad se describen en esta sección.
Una vez emitido este comando, comenzará el proceso del sistema de archivos o proceso de
formateo. Este proceso puede llevar un breve periodo o un largo periodo dependiendo del tamaño
11
Módulo 11: Administración del NOS avanzada
de la partición y de si se especificó o no una verificación del sistema de archivos. Una vez completo
este proceso, la partición está completa para almacenar datos.
La Utilidad fsck
El comando fsck se usa para verificar el sistema de archivos y reparar archivos dañados. Por
ejemplo, si accidentalmente se apaga su sistema y se daña la estructura de archivos, se puede
usar el comando fsck para intentar reparar el sistema de archivos.
También es una buena idea verificar sus sistemas de archivos ocasionalmente para ver si hay
archivos dañados o corruptos. El comando fsck actúa como programa introductorio a una serie de
comandos diseñados para verificar sistemas de archivos específicos. En otras palabras, verifica el
sistema de archivos que coincide con el tipo que se especifica. La sintaxis para el comando fsck es
la siguiente:
fsck [-A] [-V] [-t fs-type] [-a] [-l] [-r] [-s] filesys
La Figure describe estas opciones de línea de comandos para el comando fsck. Para que el
comando se ejecute apropiadamente, Linux necesita saber qué tipo de sistema de archivos está
verificando. La forma más fácil de asegurarse de que fsck llama al comando correcto es especificar
un tipo de sistema de archivos con la opción -t. Si no se usa la opción -t, Linux intenta descubrir el
tipo de sistema de archivos mirando el sistema de archivos en /etc/fstab y usando el tipo de
sistema de archivos especificado ahí. Es crítico que se especifique qué sistema de archivos
verificar porque hay diferentes tipos de sistemas de archivos que Linux puede usar (ext2, ext3,
reiser, etc.). Es especialmente importante si está verificando un sistema de archivos que no está
enumerado en el archivo /etc/fstab. Una buena práctica es desmontar un sistema de archivos antes
de verificarlo. Esto asegura que ninguno de los archivos del sistema de archivos esté en uso
cuando están siendo verificados.
Los nuevos sistemas de archivos tal como ext3, XFS, o ReiserFS no llevan a cabo verificaciones
del sistema de archivos durante el inicio, incluso si el sistema no ha sido apagado apropiadamente.
Estos tipos de sistemas de archivos usan un sistema de diario, que mantiene un registro de
operaciones que necesitan llevarse a cabo en caso de que el sistema se caiga o tenga lugar un
fallo de alimentación. Estas operaciones pendientes puede hacerse o deshacerse para mantener la
integridad de los sistemas de archivos intacta. Este proceso se hace automáticamente cada vez
que se monta el sistema de archivos. Tenga en cuenta que estos sistemas de archivos aún
necesitan tener programas de verificación como fsck que se ejecuten periódicamente en caso de
que otras cosas como bugs del sistema operativo, virus, fallos en la alimentación, o un fallo de
hardware ocurran.
12
Módulo 11: Administración del NOS avanzada
13
Módulo 11: Administración del NOS avanzada
La manera de programar tareas para que se ejecuten a intervalos regulares en un sistema Linux es
mediante Programas Cron. Los Programas Cron, también llamados trabajos Cron, programan
tareas de mantenimiento del sistema que se llevan a cabo automáticamente. Por ejemplo, el
directorio /tmp se llena de archivos inútiles creados por los usuarios que inician sesión en el
sistema. Es posible programar una tarea que vacíe este directorio a intervalos de tiempo
programados.
El primero de dos tipos de trabajos Cron que pueden programarse son los trabajos Cron del
Sistema. Éstos son los trabajos que consisten en tareas de mantenimiento del sistema esenciales
que mantienen el sistema funcionando tan eficientemente como es posible. Éstas incluyen tareas
tales como la mencionada anteriormente de limpieza del directorio /tmp regularmente. Otro ejemplo
de un trabajo Cron del Sistema es la rotación de logs. La rotación de logs cambia los nombres de
los archivos log y borra los antiguos archivos log como rutina para evitar que se hagan demasiado
14
Módulo 11: Administración del NOS avanzada
grandes para el disco rígido. El segundo tipo de trabajo Cron se denomina trabajo Cron del
Usuario. Los trabajos Cron del Usuario pueden ser creados por usuarios regulares para llevar a
cabo ciertas funciones que necesiten para ejecutar un programa específico que usan. Los Trabajos
Cron del Sistema sólo pueden ser ejecutados por el usuario raíz. No obstante, puede ser útil
ejecutar un trabajo Cron del Usuario como raíz para ejecutar una tarea durante un tiempo
especificado por el administrador. Los trabajos Cron del Sistema tienden a ser bastante rígidos en
el tiempo en el cual están programados para ejecutarse. Esto deja muy poca flexibilidad. Los
trabajos Cron del Usuario pueden ejecutarse de manera mucho más flexible.
La siguiente variable de este archivo indica el nombre de cuenta que se usará para ejecutar el
programa. Por ejemplo, en la Figura se indica "raíz", que siempre será el caso en un trabajo Cron
del Sistema. La última variable indica qué comando ejecutar. Usando la Figura nuevamente
como referencia, run-parts /etc/cron.daily es uno de los comandos que se ejecutarán en
este trabajo. Por lo tanto, de acuerdo a la Figura , todos los scripts en /etc/cron.daily se
ejecutarán a las 4:02 am cada día. Usando este ejemplo, es fácil comprender cómo crear trabajos
Cron del Sistema. Modele otros trabajos Cron del Sistema según los trabajos Cron existentes. De
ser necesario para un trabajo ejecutarse en un momento diferente que el especificado en este
archivo, simplemente edítelo de acuerdo al tiempo correcto. Un trabajo Cron del Usuario también
puede crearse, lo cual se explica en la siguiente sección.
La utilidad crontab puede usarse con o sin el parámetro -u usuario . Si este parámetro se usa
con este comando, entonces un trabajo Cron del Usuario se creará para el usuario especificado en
el parámetro. Si no se especifica ningún usuario con este parámetro, entonces el trabajo Cron del
Usuario se creará para el usuario actual. Es una buena práctica en un sistema Linux usar siempre
el parámetro -u usuario para especificar el usuario para el trabajo Cron que se creará. Por
ejemplo, el comando su podría usarse para cambiar al usuario actual y luego el comando
crontab podría introducirse sin el parámetro -u usuario . No obstante, esto a veces confunde
a la utilidad crontab, y puede producir resultados imprevistos. Incluso se recomienda que se use el
parámetro -u usuario incluso si se crea un trabajo Cron del Usuario para el usuario individual.
Los otros parámetros asociados a la utilidad crontab se usan para visualizar, editar y crear
trabajos Cron del Usuario. Específicamente, las opciones -l, -e, y -r se usan para trabajar en
trabajos Cron del Usuario actuales. La opción -l, mostrará el trabajo Cron del Usuario actual. La
opción -e abrirá un editor, para que el trabajo Cron del Usuario actual pueda editarse. La opción -r
eliminará el trabajo Cron actual.
15
Módulo 11: Administración del NOS avanzada
Para crear un nuevo trabajo Cron del Usuario, debe introducirse el comando crontab usando el
parámetro archivo. Por ejemplo, el comando crontab u jsmith js_cronjbs creará un
nuevo trabajo Cron del Usuario llamado "js_cronjbs" para los trabajos Cron de jsmith. La sintaxis
para crear un trabajo Cron del Usuario será la misma que para un trabajo Cron del Sistema del que
hablamos en la sección anterior. Aún se utilizarán variables ambientales para indicar dónde y cómo
ha de ejecutarse el trabajo, y la sintaxis para crear un comando a ejecutarse en un momento
específico también será la misma. La única diferencia será que el usuario no necesita especificar el
nombre de usuario usado para ejecutar el trabajo Cron porque el propietario del trabajo Cron ya
indica esta información.
En el siguiente ejemplo el comando at lleva a cabo su trabajo a la 1:23 am. La impresión (comando
lp) está programada para ejecutarse hoy, a la 1:23 am. Si el sistema está ocupado a la 1:23 am, el
comando se ejecutará a la 1:23 am del día siguiente. El trabajo imprime todos los archivos del
directorio /home/rtalbot/thesis y envía al usuario llamado rtalbot un e-mail anunciando que el
trabajo de impresión se llevó a cabo a la 1:23 am.
Para ejecutar el ejemplo del párrafo precedente tipee los siguientes comandos en la terminal,
presionando <Enter> al final de cada línea. Una vez que introdujo cada línea, presione <Ctrl-d>
para finalizar el comando.
at 1:23
lp /home/rtalbot/thesis/*
echo "Your files were printed, rtalbot!" | mail -s"Complete" boss
Los comandos a ser programados por at se introducen como una lista de comandos en la línea que
sigue al comando at. Una vez que termine el comando at, ve una pantalla que muestra lo que
sigue:
Esta salida indica que el trabajo se ejecutará a la 1:23 según lo especificado. El número de trabajo
55842688.a, identifica al trabajo. Si decide cancelar el trabajo, hágalo usando el número asociado
a él, como sigue:
at -d 55842688.a
Si tiene varios comandos que desea programar usando at, lo mejor es ponerlos en un archivo,
como se sugirió más arriba. Si el nombre de archivo es scheduledjobs.txt y desea programar los
comandos para las 8:00 am, tipee el siguiente comando:
at 8:00 -f scheduledjobs
También se puede especificar una fecha para un trabajo at. Por ejemplo, para programar un trabajo
para el 17 de junio, se agregaría June 17 al primer comando de ejemplo mostrado arriba. Los
16
Módulo 11: Administración del NOS avanzada
trabajos que se programan con at se colocan en una cola que el sistema operativo verifica
periódicamente.
La Figura resume las diferentes formas de usar el comando at. Como usuario raíz, puede usar
cualquiera de estos comandos; para otros usuarios, los archivos /etc/at.allow y /etc/at.deny
determinan el permiso para usar los comandos. Si /etc/at.allow existe, solamente se permite usar
los nombres de usuario enumerados en el archivo con el comando at. Si el archivo /etc/at.allow no
existe, el sistema verifica /etc/at.deny y a cada nombre de usuario no mencionado en /etc/at.deny
se le permite usar el comando at. Si ninguno de los archivos existe, solamente el raíz puede usar
at. Como alternativa, si etc/at.deny está vacío, cada usuario puede usar at.
17
Módulo 11: Administración del NOS avanzada
18
Módulo 11: Administración del NOS avanzada
Otro aspecto importante de la administración de procesos en un sistema Linux es cómo tratar con
las caídas del software. Cuando tales caídas ocurren, a menudo generan errores de causas
potenciales. Estos errores están contenidos en un archivo del núcleo que se crea entonces. Estos
archivos del núcleo también se llaman Descargas del Núcleo.
Es importante comprender qué pueden proporcionar las Descargas del Núcleo y cómo
administrarlas. Una vez que el error o errores han sido identificados, pueden reemplazarse o
repararse. Reparar un software propenso a los errores requiere habilidades de programación
avanzadas que van más allá del alcance de este curso. No obstante, si el administrador o el
usuario comprende el lenguaje en que está escrito el software, entonces el usuario puede intentar
reparar el programa sin tener que reemplazarlo.
El tamaño de la Descarga del Núcleo dependerá del tamaño del programa que lo produjo. Un
programa grande que usa muchos recursos del sistema y memoria producirá un archivo de
Descarga del Núcleo mucho más grande que un programa más pequeño que usa menos memoria
y recursos del sistema. En cualquiera de los casos, el archivo se creará en el mismo directorio en
el cual está ubicado el programa que se cayó. No obstante, en algunos casos no se creará un
archivo Descarga del Núcleo. Por ejemplo, un usuario puede no tener permisos escritos al
directorio, o podría haber un límite en cuanto al tamaño de los archivos del Núcleo que se generan.
Limitar el tamaño de un archivo del Núcleo puede ser útil, para que el espacio libre de los
directorios no se consuma. La sintaxis para limitar el tamaño de los archivos del Núcleo es la
siguiente:
ulimit c [tamaño]
El parámetro tamaño se especifica en kilobytes y asegura que no se cree ningún archivo del
Núcleo más grande que el tamaño especificado. Si un archivo del núcleo es más grande que el
tamaño especificado, se cortará para que tenga este tamaño. Estos archivos del Núcleo abreviados
usualmente no son de gran utilidad. Si se pone un cero como parámetro tamaño, no se generarán
archivos del Núcleo en absoluto, y el parámetro unlimited puede usarse, para que no haya
límites en el tamaño de los archivos del Núcleo que se generan.
También es importante tener en cuenta que este comando dará como salida algunos archivos y
directorios que no son necesariamente archivos Descarga del Núcleo. Por ejemplo, el archivo
/dev/core es un archivo de dispositivos y /proc/sys/net/core es un directorio. Después de emitir
este comando y ubicar los archivos del Núcleo específicos que se buscan, ¿qué hacen los usuarios
con ellos ahora? Como se dijo antes, a menos que los usuarios estén familiarizados con el
19
Módulo 11: Administración del NOS avanzada
Hay unas pocas cosas en estos archivos de las cuales los usuarios podrían querer enterarse o que
pueden ayudar a descubrir qué creó el archivo del Núcleo y determinar si el archivo es útil o no.
Por ejemplo, puede ser de ayuda familiarizarse con las siguientes propiedades del archivo del
Núcleo:
• Propietario del archivo indica quién ejecutó el programa. Descubrir al propietario del
archivo del Núcleo es útil al determinar si borrar o no el archivo por varias razones. Por
ejemplo, un usuario podría estar actualmente escribiendo programas para el sistema, y se
colocaron archivos del Núcleo con este usuario como propietario. Sería una buena idea
verificar con ese usuario primero antes de borrarlos, porque podría necesitarlos por alguna
razón.
• Fecha de Creación del archivo Núcleo es simplemente la fecha en la cual ocurrió la caída,
y cuándo se creó la Descarga del Núcleo. Identificar la fecha de creación del archivo es
útil. Puede darnos más ayuda en determinar cuáles borrar o conservar. Usualmente los
archivos más antiguos ya no sirven y pueden borrarse.
• Propiedades del Programa Creador de los archivos del Núcleo indicarán qué programa
cayó y generó los archivos de Descarga del Núcleo. Esto, no obstante, se averigua
indirectamente mediante el uso de un comando diferente. Para averiguar qué programa
creó los archivos del Núcleo, tipee gdb -c core. Este comando lanza el debugger de GNU,
que muestra varias salidas acerca del archivo del Núcleo incluyendo el programa que cayó.
Para salir del debugger GNU, tipee exit.
Deberá tenerse cuidado antes de mover o borrar cualquier archivo del Núcleo, porque como se
enunció anteriormente, podría haber archivos y directorios del Núcleo que no son los archivos del
Núcleo que el usuario podría estar buscando. Borrar uno de estos archivos puede hacer que otros
programas no funcionen. Se trató anteriormente que es posible incluir el comando find, con un
trabajo Cron del Usuario. Si la variable ambiental MAILTO está configurada apropiadamente, todos
los archivos del Núcleo del sistema serán reportados cada vez que el trabajo Cron está
programado para ejecutarse. Puede ser útil generar este informe una o dos veces por mes para
mantenerse alerta de cualquier tipo de archivo del Núcleo que podría ser necesario inspeccionar.
20
Módulo 11: Administración del NOS avanzada
El Comando ps
Los procesos que actualmente se están ejecutando en un sistema Linux pueden ser visualizados
usando el comando ps. Éste es uno de los comandos más importantes que un administrador
necesitará conocer en lo que respecta a la administración de procesos en un sistema Linux. Puede
ser de particular utilidad cuando el sistema está ejecutándose lentamente, para terminar procesos
que están consumiendo demasiados recursos del sistema.
Al igual que la mayoría de los comandos Linux que han sido tratados en este curso, el comando ps
tiene una variedad de opciones que pueden usarse con el comando para manipular su salida.
Algunas de estas opciones se enuncian en la Figura .
También es importante mencionar que estas opciones pueden usarse juntas para mostrar la salida
deseada usando el comando ps.
El Comando top
Otro comando informativo, que es similar al comando ps , es el comando top. Éste funciona de
manera muy similar a la herramienta Desempeño de Windows 2000, proporcionando información
detallada respecto al uso de la CPU y de la RAM. La Figura muestra la salida del comando top.
Tal información incluye la cantidad de usuarios que actualmente han iniciado sesión en el sistema,
la cantidad de memoria disponible, y el porcentaje de la CPU usada para diversas tareas. Estas
tareas se ordenan descendentemente, que permiten al administrador del sistema ver rápidamente
qué usuarios consumen la mayor parte de los ciclos de CPU. Por defecto, la salida se actualiza
cada cinco segundos para proporcionar datos continuamente actualizados al usuario. Los
administradores del sistema por lo común ejecutarán este comando bastante a menudo para
monitorear los niveles de actividad en el sistema y asegurarse de que los recursos suficientes
estén disponibles para sus usuarios.
Eliminación de Procesos
A veces un proceso hará que el sistema se bloquee. Además, puede comenzar a consumir todos
los recursos del sistema, por lo cual el sistema comienza a funcionar lentamente. Esto hace
imposible para los usuarios ejecutar cualquier otro programa. En el caso de que esto ocurriera,
puede usarse el comando kill. Hay algunos parámetros diferentes que pueden usarse con el
comando kill, que determinan cómo se termina el proceso. La sintaxis genérica para el comando
es la siguiente:
La opción signal representa la señal específica que se envía al proceso. Hay aproximadamente
sesenta y tres (63) parámetros que pueden introducirse para la señal que se envía al proceso.
Cada una de ellos terminará el proceso de manera diferente. Por ejemplo, el usuario puede
introducir el nombre de la señal como SIGKILL o el número correspondiente a SIGKILL, que es el
nueve (9). Signal 9 eliminará el proceso sin llevar a cabo ninguna tarea de apagado. La Figura
muestra todos los parámetros signal posibles que pueden introducirse. Este menú que se muestra
en la Figura puede mostrarse introduciendo el comando kill –l. Si el usuario no especifica una
señal, se usará la señal por defecto 15, que es SIGTERM. Signal 15 eliminará el proceso pero le
permitirá cerrar cualquier archivo abierto que podría estar usando primero. La sección anterior
21
Módulo 11: Administración del NOS avanzada
explicó qué es una pid y qué pid está usando un proceso específico usando el comando ps. La pid
debe introducirse para el proceso que ha de terminarse.
Otra opción disponible para eliminar un proceso es usar el comando killall en lugar de sólo
kill. El comando killall se usa para eliminar cada proceso por nombre y no por su número de
pid. Por ejemplo, para eliminar todas las instancias de vi en ejecución, introduzca killall vi.
Esto eliminaría todos los procesos vi actualmente en ejecución, independientemente del número
de pid. Podría haber ocasiones en las que es necesario eliminar todos los procesos excepto uno.
Para ello, use el comando killall con la opción -i. Por ejemplo, si el usuario tipea el comando
killall -i vi en el prompt, el sistema confirmará cada instancia de vi que está ejecutándose.
Entonces el usuario puede terminarlas a todas excepto la que desea que siga ejecutándose.
22
Módulo 11: Administración del NOS avanzada
23
Módulo 11: Administración del NOS avanzada
24
Módulo 11: Administración del NOS avanzada
25
Módulo 11: Administración del NOS avanzada
26
Módulo 11: Administración del NOS avanzada
Una de las áreas finales de la administración esencial de procesos en un sistema Linux es poder
controlar quién tiene la capacidad de ejecutar determinados programas asignando el permiso
apropiado. Por lo común, los programas tienen los mismos tipos de permiso y pueden leer los
mismos archivos que el usuario que ejecuta el programa. Existen no obstante, determinados
programas que requieren permiso adicional para ser ejecutados por ciertos usuarios.
El Set User ID (SUID) se usa con archivos ejecutables en un sistema Linux. Le indica al sistema
operativo que ejecute el programa con el permiso de quien posea el archivo, en lugar de aquél del
usuario que ejecuta el programa. Como en el ejemplo del comando su, el bit SUID fue establecido
como cuenta raíz, lo que significa que cualquier usuario podría ejecutar este programa usando el
permiso de la cuenta raíz.
La Set Group ID funciona igual, pero establece el bit SGID para el grupo al cual está asociado el
programa.
El uso de estas funciones puede ser de ayuda y a veces necesario para permitir a los usuarios
ejecutar programas específicos que requieren un permiso que normalmente no tienen. Es
27
Módulo 11: Administración del NOS avanzada
importante limitar esta capacidad a tan pocos archivos como sea posible a causa del riesgo de
seguridad que representa. Si esta opción para el comando su está habilitada, como en el ejemplo
de más arriba, eso daría a los usuarios la capacidad de asumir la identidad de otros usuarios de la
red.
Permitir a los usuarios ejecutar ciertos programas como su, cp, o fdisk es un riesgo. Aplicar
permisos de raíz SUID para el comando fdisk podría permitir a un usuario borrar completamente el
disco rígido del servidor. Hacerlo para el comando cp permitiría al usuario copiar cualquier archivo
del servidor. Esto podría ocasionar serias amenazas a la seguridad si un usuario copiara un
archivo sensible como /etc/shadow, que contuviera la información de contraseña de otro usuario.
Otro riesgo de seguridad es si hay bugs en cualquiera de los programas, SUID o SGID. Si estos
programas contuvieran problemas o bugs y son ejecutados por usuarios que no deberían tener
permiso para ello, podrían potencialmente ocasionar más daño al sistema que si fueran ejecutados
con los privilegios normales. Por ejemplo, si un programa es ejecutado que tenga un bug
desconocido que intente borrar cualquier archivo que se encuentre en el directorio, esto podría
ocasionar mucho daño al sistema. No habría mucho daño si un usuario con privilegios normales
ejecutara este programa. No obstante, si este programa tuviera privilegios raíz SUID, todo el
directorio o más podría resultar dañado.
Estos dos ejemplos son ejemplos de los peores casos y es improbable que ocurran. Esto es así
especialmente en el caso del programa que tiene bugs y borra todos los archivos de un directorio.
Es muy común que los programas contengan bugs, pero es muy poco común que dicho bug
comience a borrar archivos. No obstante, los archivos pueden corromperse haciendo que ya no
funcionen. En cualquier caso, es siempre una buena idea tener particular cuidado respecto a qué
programas se asigna un permiso de bit SUID o SGID y minimizar la cantidad de programas que
tienen estos permisos especiales.
El comando nice se usa para alterar la prioridad inicial de un trabajo. En sistemas Linux esto es
bien simple: cuanto más bajo es el comando nice, más alta es la prioridad. El rango en un sistema
Linux es de -20 (la más alta) a 19 (la más baja). El uso de nice es muy simple. Por ejemplo, si
desea asegurarse de que un programa que compila e instala tiene una alta prioridad, podría
introducir el siguiente comando:
nice -n 5 make
El comando anterior baja el número de nice y elevó la prioridad del trabajo inicialmente para esta
tarea. El comando renice se usa para alterar el valor nice de un trabajo una vez que se lo ha
28
Módulo 11: Administración del NOS avanzada
empezado. Es importante notar que sólo el raíz puede alterar el valor nice de trabajos que no son
suyos, lo que evita que los usuarios molesten a otros usuarios. Los usuarios no-raíz solamente
pueden alterar sus valores nice entre 0 y 20, lo cual protege los procesos privilegiados del sistema.
El siguiente comando es un ejemplo del uso de renice en un único proceso:
renice 5 -p 10023
En el comando anterior el valor de nice es bajado a 5 del PID 10023. El comando renice también
puede afectar un grupo entero de procesos. Por ejemplo, si quisiera que todos los procesos del
usuario jdoe tuvieran un valor de nice de 12, se introduciría el siguiente comando:
renice 12 -u jdoe
29
Módulo 11: Administración del NOS avanzada
El espacio en disco disponible en una unidad de disco rígido es un recurso limitado que puede
consumirse rápidamente en los servidores de red. A cada usuario de una red se le otorga por lo
común permiso de escritura completo en el directorio home o en algún otro almacenamiento central
de la red. El comportamiento de los usuarios puede ser muy impredecible. Cuando muchos
usuarios almacenan sus datos en la misma unidad de disco rígido, el disco puede llenarse bastante
rápidamente. Las consecuencias de quedarse sin espacio en disco a veces son impredecibles y
podrían incluso incluir fallos inesperados de los programas en ese servidor.
La administración del espacio en disco de rutina puede llevarse a cabo de varias maneras. Un
método incluye inspeccionar regularmente el estado del disco y hacer cualquier ajuste necesario
manualmente. Otra solución más práctica usa mensajes de alerta automatizados para notificar al
administrador del sistema cuándo el espacio disponible en disco cae por debajo de un nivel
predeterminado. Tales alertas pueden ser muy buenas herramientas que ahorran tiempo y ayudan
a administrar no sólo el almacenamiento en disco, sino también todos los recursos del NOS.
Una herramienta de administración de disco preventiva disponible para los administradores del
sistema es el uso de "cuotas" para las cuentas de los usuarios. Una cuota actúa como techo de
almacenamiento que limita la cantidad de datos que cada usuario puede almacenar en la red.
Usando esta herramienta, un administrador de sistemas puede planificar y administrar mejor el
espacio disponible en la unidad de disco rígido de la red. Si no se implementa una cuota, los
usuarios pueden por lo común almacenar tantos datos como lo deseen en el disco de la red.
Aunque este método proporciona una mayor flexibilidad a los usuarios, también obliga al
administrador del sistema a monitorear de cerca el nivel actual de espacio disponible en disco. En
definitiva, los métodos de administración del disco que un administrador de sistemas emplea son
una combinación de preferencias personales y de las necesidades de los usuarios.
30
Módulo 11: Administración del NOS avanzada
Otro recurso crítico que un administrador del sistema debe administrar es la Memoria de Acceso
Aleatorio (RAM). Cada vez que una aplicación se ejecuta en una computadora, se lee información
del disco rígido y se la coloca en el almacenamiento temporario de la RAM. La computadora usa
esta porción de su RAM para ejecutar el programa y eventualmente libera el espacio una vez que
se sale del programa. La RAM es mucho más rápida que un disco rígido, pero también es mucho
más pequeña. Como resultado de ello, es posible usar el 100 por ciento de la RAM del sistema
simplemente ejecutando varios programas a la vez.
Una falta de RAM disponible puede tener un impacto severo en el desempeño de una
computadora, especialmente en una que funciona como servidor de red. Cuando la memoria es
baja, obstaculiza severamente la potencia de procesamiento del sistema y puede producir efectos
colaterales negativos, como caídas de programas. En el caso de un servidor de red, un pobre
desempeño de la memoria puede incluso evitar que los usuarios inicien sesión en el servidor. Es el
deber de un administrador de sistemas monitorear el uso de las aplicaciones y evitar que estos
eventos ocurran. Las herramientas de diagnóstico que permiten descubrir las aplicaciones
intensivas en materia de RAM, y detenerlas si es necesario, están por lo común incorporadas a la
mayoría de plataformas de NOS. La Figura muestra el administrador de tareas usado para
verificar el uso de la memoria.
Puesto que la RAM es usualmente un recurso limitado, los administradores de sistemas pueden
compensar la falta de memoria mediante el uso de "memoria virtual". La memoria virtual adjudica
espacio en el disco rígido y lo trata como una extensión de la RAM del sistema. Aunque el acceso
al disco rígido es significativamente más lento que a la RAM estándar, la memoria virtual ayuda a
evitar la falta de RAM incrementando mucho la cantidad total disponible. La mayor parte del
software NOS proporcionará la capacidad de administrar la memoria virtual directamente con
31
Módulo 11: Administración del NOS avanzada
La Unidad Central de Procesamiento (CPU) actúa como cerebro de una computadora moderna.
Toda la información usada por el NOS, incluyendo el NOS en sí, es procesada millones de veces
por segundo por la CPU para mostrar información al usuario. Cada aplicación que se esté
ejecutando, ya sea visible o en segundo plano, consume valiosos ciclos de procesamiento de la
CPU. La mayoría de los sistemas operativos priorizan estas tareas, permitiendo a la CPU servirlos
de acuerdo a la importancia. No obstante, la CPU puede en ocasiones sobrecargarse con grandes
cantidades de procesamiento llevado a cabo simultáneamente. Esto es especialmente común en el
caso de los servidores de red, donde muchos usuarios intentan acceder a los recursos de la
computadora al mismo tiempo. A medida que más usuarios solicitan información al servidor, la
CPU debe trabajar más para cumplir esas demandas.
Además, las aplicaciones por lo común se enumeran individualmente con sus respectivas
estadísticas de uso. Si una aplicación o usuario en particular causa en el sistema un excesivo
esfuerzo de procesamiento, el administrador del sistema puede elegir terminar la causa del
problema. Aunque puede parecer desagradable obligar a un usuario a desconectar o detener un
32
Módulo 11: Administración del NOS avanzada
programa en medio de su uso, la realidad es que tales acciones a menudo son necesarias para
mantener un desempeño de procesamiento aceptable para todos los usuarios.
Un aspecto importante de monitorear los recursos de cualquier computadora es revisar los archivos
log [registro] del sistema. La mayoría de programas de computadora, servidores, procesos de inicio
de sesión, así como el kernel del sistema, registran resúmenes de sus actividades en archivos log.
Estos resúmenes pueden usarse y revisarse para diversas cosas, incluyendo software que podría
estar funcionando mal o intentos de irrumpir en el sistema.
Para ayudar a crear un informe de estos eventos, los "logs" son generados automáticamente por el
sistema y sus aplicaciones. Estos archivos por lo común consisten en sentencias de texto que
detallan información específica acerca del evento que ocurrió. Por ejemplo, la mayoría de
servidores web mantienen un archivo log que detalla cada solicitud de información hecha al
servidor. Información relativa al momento de la solicitud, la dirección IP de la computadora remota,
y archivos accedidos se almacenan como registros únicos del log. Estos registros proporcionan al
administrador de sistemas feedback y datos estadísticos necesarios para implementar mejoras en
las operaciones del servidor.
33
Módulo 11: Administración del NOS avanzada
Si se selecciona un evento específico, tal como un error de TCP/IP por ejemplo, pueden verse más
detalles acerca del evento. La información que se mostrará indica que ocurrió un conflicto de
direcciones IP, lo cual explicaría por qué esta computadora no puede comunicarse en la red.
Muchos de los servidores en un sistema Linux, como Samba por ejemplo, mantienen sus propios
archivos log. La ubicación donde se almacenan estos archivos puede configurarse mediante el
archivo de configuración nativo del servidor, como smb.conf con Samba. El parámetro del archivo
log en los archivos smb.conf controla dónde se ubica el archivo log. No obstante, normalmente se
lo encuentra en el directorio /var/log o en uno de sus subdirectorios por defecto.
Dependiendo de la distribución de Linux usada, los archivos log serán diferentes. Por ejemplo, no
hay archivos log para sendmail en Mandrake o Debian Linux, ya que estas distribuciones usan
otros servidores de correo. Hay otras razones para familiarizarse con los archivos log y la
información que se introduce en los archivos log que hay en el sistema Linux. Lo más importante,
porque un usuario podrá determinar mejor qué eventos se registran como eventos normales y
cuáles no. Esto es así para que los que no lo son puedan ser fácilmente identificados y
examinados en mayor detalle.
34
Módulo 11: Administración del NOS avanzada
Otra herramienta de análisis de archivos log que puede usarse es Logcheck. Algunas
distribuciones incluyen esta herramienta por defecto, como Mandrake y Debian Linux. Es más fácil
de usar cuando viene preconfigurada con la distribución de Linux. Al usar una distribución que no
incluye Logcheck, tendrá que configurarse para que se ejecute en el sistema. Lo mejor es verificar
la documentación en busca de instrucciones específicas acerca de cómo configurar esto en un
sistema Linux. El archivo principal que debe editarse es el archivo logcheck.sh, que se instala con
el paquete. Este archivo debe configurarse para verificar los archivos log que han de monitorearse.
Las funciones, como por ejemplo qué usuario recibe informes cuando se ha hallado una violación,
pueden ajustarse. Por lo común esto se configura a raíz por defecto. Una vez configurado
Logcheck, debe crearse un trabajo Cron, que cronometre los intervalos cuando se ejecuta y a
quién se enviarán los informes por e-mail.
35
Módulo 11: Administración del NOS avanzada
Los recursos del sistema se monitorean en Windows 2000 y Windows XP mediante la Herramienta
Desempeño como lo muestra la Figura . Esta aplicación se encuentra bajo la opción del menú
Inicio > Programas > Administración del Sistema > Desempeño. El árbol del menú a la
izquierda presenta el "Monitor del Sistema" y "Logs y Alertas de Desempeño", que es la misma
opción que se encuentra en las opciones de Herramientas de Administración de la Computadora.
Seleccionar el Monitor del Sistema muestra un gráfico vacío por defecto. Los usuarios pueden
entonces hacer clic con el botón derecho en el gráfico y seleccionar Agregar Contadores para
especificar qué recursos del sistema monitorear en el gráfico. La Figura ilustra el proceso de
agregar recursos monitoreados a la herramienta de Desempeño de Windows 2000.
Por ejemplo, para monitorear el uso actual de la RAM del sistema, use el menú desplegable
"Objeto de Desempeño" para seleccionar la opción de la memoria. A continuación, el usuario
puede decidir qué aspectos del uso de la memoria visualizar seleccionando de la lista del contador
y presionando el botón Agregar. Varias adiciones pueden hacerse al gráfico desde esta ventana, y
una descripción de cada recurso está disponible haciendo clic en el botón Explicar. Hacer clic en
el botón Cerrar y regresar a la Herramienta de Desempeño muestra las estadísticas de los
recursos seleccionados usando un gráfico de línea por defecto. El gráfico de línea proporciona un
historial visual de la actividad de los recursos. Esto incluye información acerca de sus valores
actual, promedio, mínimo y máximo.
Para configurar más aún esta pantalla, los usuarios pueden hacer clic con el botón derecho en el
gráfico y seleccionar Propiedades. Aparece el recuadro de diálogo Propiedades del Monitor del
Sistema, donde los usuarios pueden seleccionar vistas de los datos tales como Histograma o
informe sólo texto. Varias otras opciones personalizables pueden encontrarse aquí, la más
importante de las cuales es el recuadro de verificación "Actualizar automáticamente...". Marcar
esta opción permite a la Herramienta de Desempeño automatizar la pantalla automáticamente
según el intervalo especificado. Deberá notarse que una tasa de refresco más rápida incrementará
la cantidad de datos proporcionados al usuario, pero a un costo significativo. Irónicamente, la
Herramienta de Desempeño en sí usa valiosos recursos del sistema para monitorear e informar
sobre estos mismos recursos. Especificar una tasa frecuente de actualizaciones podría tener un
impacto levemente negativo en los recursos disponibles para Windows 2000/XP y otras
aplicaciones.
36
Módulo 11: Administración del NOS avanzada
37
Módulo 11: Administración del NOS avanzada
Las herramientas Linux más comunes usadas para investigar el uso de recursos consisten en
varios comandos basados en texto introducidos en la línea de comandos. La Figura muestra
comandos comunes para mostrar el uso de recursos. Para más detalles respecto a los diversos
parámetros de estos comandos, los usuarios pueden ver sus respectivas páginas del manual
introduciendo el comando man en el prompt. No obstante, estos comandos son relativamente
simples en su uso y son extremadamente informativos para los administradores de sistemas sin
especificar parámetros adicionales. Por lo común no generan información gráfica como las cartas
que genera Windows 2000. En cambio, listas detalladas de información textual se muestran
organizadamente para permitir al usuario interpretar los datos. Las herramientas comúnmente
usadas se tratan a continuación.
El Comando df
La primera de ellas es el comando df. Se lo usa para mostrar la cantidad de espacio en disco
actualmente disponible para los diversos sistemas de archivo de la máquina. La Figura muestra
la salida del comando df. Su salida es organizada en seis columnas. Éstas incluyen sistema de
archivos, bloques, usados, disponibles, capacidad y montados. Cada sistema de archivos se
enumera en líneas individuales a lo largo de su información de uso correspondiente. Este comando
proporciona una mirada de alto nivel al uso del disco de parte del sistema. Si un sistema de
archivos en particular se está poniendo innecesariamente grande, el administrador del sistema se
enterará en primer lugar del problema aquí.
El Comando du
No obstante, si es necesario un rastreo más profundo de los recursos del disco, el comando du
puede usarse entonces para determinar la ubicación exacta del problema. Cuando se especifica un
nombre de directorio, el comando du devuelve el uso del disco tanto para el contenido del
directorio como para el contenido de cualquier subdirectorio por debajo suyo. La Figura muestra
la salida del comando du. Ejecutarlo para directorios de alto nivel con muchos subdirectorios puede
resultar en un conjunto de salidas muy grande. Este comando se usa mejor dentro de los niveles
más bajos de la estructura de directorios para ayudar a ubicar áreas específicas del sistema de
archivos que consumen grandes cantidades de espacio de disco.
El Comando top
El tercero y tal vez más informativo comando disponible para la administración de recursos básica
de Linux es el comando top. Esto funciona de manera muy similar a la Herramienta de
Desempeño de Windows 2000, proporcionando información detallada respecto al uso de la CPU y
la RAM. La salida del comando top se mostró anteriormente en este capítulo. Tal información
incluye la cantidad de usuarios actualmente con sesión iniciada en el sistema, la cantidad de
memoria disponible, y el porcentaje de la CPU usada para diversas tareas. Estas tareas se
ordenan en orden descendente, lo cual permite al administrador del sistema ver rápidamente qué
usuarios están consumiendo la mayor parte de los ciclos de la CPU. Por defecto, la salida se
refresca cada cinco segundos para proporcionar datos continuamente actualizados al usuario. Los
administradores de sistemas por lo común ejecutarán este comando bastante a menudo para
monitorear los niveles de actividad en el sistema y asegurarse de que hay los suficientes recursos
disponibles para sus usuarios.
38
Módulo 11: Administración del NOS avanzada
39
Módulo 11: Administración del NOS avanzada
40
Módulo 11: Administración del NOS avanzada
Puesto que puede haber poco tiempo disponible para el personal de la red, muchos
administradores se encuentran a sí mismos operando de modo reactivo. Es decir, tratan los
problemas a medida que ocurren, lo cual no deja tiempo para implementar medidas que evitarían
que esos problemas ocurrieran en primer lugar.
El administrador de red debería hacerse tiempo para concebir un plan proactivo para administrar la
red. Este plan habilita la detección de pequeños problemas antes de que se conviertan en grandes.
Si puntos problemáticos potenciales se anticipan y se toman medidas para corregirlos, pueden
ahorrarse mucho tiempo y dinero. Los tres conceptos clave para el análisis y optimización del
desempeño de la red son los siguientes:
• Cuellos de botella
• Líneas básicas
• Mejores prácticas
Las siguientes secciones observan más de cerca cada concepto y tratan la velocidad de conexión
a Internet, que es otro factor importante al evaluar y optimizar una red. Muchos de los términos
importantes que se relacionan con problemas de desempeño y monitoreo serán definidos.
41
Módulo 11: Administración del NOS avanzada
Un cuello de botella es exactamente lo que el nombre implica. Es el punto en el sistema que limita
el throughput de datos, que es la cantidad de datos que pueden fluir a través de la red.
Un cuello de botella puede estar ocasionado por un problema con un componente o por
limitaciones inherentes al mismo. Un ejemplo podría ser una red que tiene hubs y switches de
10/100 Mbps y switches y computadoras con placas de red de 10/100 Mbps, pero sólo par
trenzado Categoría 3 en la infraestructura de cableado. Puesto que el cable de par trenzado
Categoría 3 no soporta una velocidad de transferencia de datos elevada, el cable es el cuello de
botella que ralentiza la red.
Es dudoso que todos los componentes de la red puedan ponerse a punto de manera tan precisa
que todos operen exactamente a la misma velocidad. No obstante, optimizar el desempeño tiene
en cuenta encontrar los cuellos de botella y actualizar, reconfigurar y reemplazar los componentes
para elevar su desempeño hasta o por encima del nivel del resto de los componentes de la red.
Este proceso de manera casi inevitable crea un nuevo cuello de botella en otro punto, pero con
buena planificación el nuevo cuello de botella debería ser menos restrictivo que el anterior.
Para poder diagnosticar qué componente del servidor de red está ocasionando un cuello de botella
en el sistema, debe haber herramientas de software de monitoreo de desempeño específicas del
sistema operativo del servidor de red. La mayoría de los sistemas operativos de servidores de red
tienen al menos un paquete de software de monitoreo de desempeño básico incluido en el sistema
operativo. Fabricantes terceros también tienen herramientas de software de monitoreo de
desempeño disponibles para la mayoría de los sistemas operativos de servidores de red.
Las diversas versiones de los sistemas operativos UNIX/Linux tienen utilidades de línea de
comandos que pueden usarse para monitorear el desempeño del servidor de red UNIX/Linux. Las
herramientas principales son sar, vmstat, iostat, y ps. Los indicadores usados por estos
comandos pueden variar en las diferentes versiones de UNIX/Linux. Use el comando man de
UNIX/Linux para obtener especificaciones acerca del uso de estos comandos. La información
mostrada por el comando man también indica cómo interpretar la salida generada por el comando.
42
Módulo 11: Administración del NOS avanzada
El System Activity Reporter de UNIX/Linux, o comando sar, recoge e informa sobre la actividad del
sistema, que incluye utilización del procesador, utilización del buffer, etcétera para el servidor de
red UNIX/Linux.
El comando Processes (ps) de UNIX/Linux enumera todos los procesos que se están ejecutando
en el servidor de red UNIX/Linux.
En servidores de red con sistemas operativos que sí soportan memoria virtual, varios indicadores o
contadores deberán monitorearse. El primer contador es la cantidad de memoria disponible, o la
memoria que no se está usando, una vez que se ha cargado todo el software del servidor de red.
Para evitar totalmente la paginación o intercambio de páginas de memoria al disco, simplemente
coloque más memoria real o física de la necesitada por todo el software que se ejecuta en el
servidor de red.
El otro contador que debería monitorearse para verificar si hay cuellos de botella de memoria es la
cantidad de páginas que se leen o escriben en el archivo de paginación del disco en un segundo.
La cantidad de páginas por segundo aceptable depende de la velocidad del procesador. En
general, la cantidad debería ser menor que 2.000 por segundo. Una paginación densa a menudo
se manifiesta como alta utilización del disco, porque las páginas de memoria se escriben en el
disco cuando la memoria es necesitada por otro programa.
Otro indicador de la falta de memoria es la cantidad de fallos de página generados por segundo.
Un fallo de página es la condición encontrada cuando hay un intento de acceder a una página de
un programa, la página ya no está en la memoria, pero debe recuperarse del disco. Un problema
de fallo de página está indicado si la cantidad de fallos de página por segundo es más del doble de
43
Módulo 11: Administración del NOS avanzada
los fallos de página grabados en las mediciones de línea básica del servidor tomados bajo una
carga de trabajo normal.
Para aliviar un cuello de botella de memoria, agregue más memoria al servidor de red.
Los contadores del subsistema de disco que deberán monitorearse son la utilización del
subsistema de disco y la longitud de cola del disco. Un porcentaje de utilización del subsistema de
disco no deberá ser constantemente mayor del 90%. Esta tasa de utilización del subsistema de
disco muy alta indica que el subsistema de disco es el cuello de botella.
La longitud de la cola del subsistema de disco indica cuántos elementos esperan para ser escritos
al subsistema de disco. Una longitud de cola del subsistema de disco que es constantemente
mayor que dos indica que el subsistema de disco es demasiado lento. Varias cosas podrían
mejorar el desempeño del subsistema de disco:
Un porcentaje del uso de la red que sea constantemente mayor que 65% se considera en general
como una alta utilización y puede constituir un cuello de botella.
Las soluciones a un cuello de botella de un subsistema de red son en general caras e incluyen lo
siguiente:
44
Módulo 11: Administración del NOS avanzada
• Reemplazar el subsistema de red por uno más rápido. Reemplazar una red Ethernet de 10
Mbps por una red Fast Ethernet de 100 Mbps probablemente eliminará el subsistema de
red como cuello de botella.
• Reemplazar los hubs Ethernet por switches Ethernet. En un hub Ethernet, todo el ancho de
banda de la red disponible es compartido. Usar un switch Ethernet en lugar de un hub
proporciona a cada puerto la cantidad completa de ancho de banda, lo que significa que
ésta no es compartida.
• Si el cuello de botella parece ser ocasionado por demasiados clientes intentando llevar al
servidor de red, considere el uso de agrupación por adaptador para incrementar el ancho
de banda de red disponible para el servidor de red. Esto requiere la instalación de varias
NICs en el servidor de red y un switch Fast Ethernet que soporte la instalación de
agregación de ancho de banda.
• Eliminar protocolos innecesarios de la red. Cuando hay varios protocolos instalados en un
servidor de red, los anuncios enviados desde el servidor de red se envía una vez por cada
protocolo instalado. Esto incrementa el tráfico en la red.
Los siguientes son un par de herramientas de monitoreo y análisis de red bien conocidas:
• Procesador
45
Módulo 11: Administración del NOS avanzada
• Memoria
• Subsistema de disco
• Red - Longitud de la cola de red
El primer paso al determinar cuán eficientemente una red se está desempeñando involucra
comparar diversas mediciones a las mismas mediciones tomadas en un momento anterior. Estas
mediciones pueden incluir la cantidad de bytes transferidos por segundo, la cantidad de paquetes
descartados, o una cantidad de otros indicadores de desempeño de la red. Una vez hecha esta
comparación, puede responderse a una cantidad de preguntas:
La única forma de conocer las respuestas es tener una medición válida con la cual comparar las
lecturas actuales. Este punto de comparación se llama línea básica, que es el nivel de desempeño
aceptable cuando el sistema está manejando una carga de trabajo típica.
Una lectura de línea básica debería hacerse en un momento en que la red está funcionando
normalmente. La medición no debería hacerse en el momento más ocupado del día, ni tampoco
cuando la red no está en uso en absoluto. Una línea básica debería establecerse midiendo el
desempeño de la red durante el uso normal. Una buena manera de hacer esto es tomar varias
lecturas separadas a intervalos espaciados y después sacar un promedio.
Usando las utilidades disponibles para los diversos sistemas operativos de red, pueden llevarse a
cabo mediciones de línea básica. Las mediciones de línea básica incluyen las siguientes
estadísticas:
Además de ayudar a identificar cuellos de botellas que pueden estar desarrollándose, una línea
básica ayuda a:
46
Módulo 11: Administración del NOS avanzada
• Planificar su gran uso y buscar formas de evitar que el uso afecte la eficiencia de la red.
Por supuesto, la opción elegida depende de quiénes son los grandes usuarios, sus roles en la
organización, y el propósito de su gran uso.
NOTA:
47
Módulo 11: Administración del NOS avanzada
Si una red está conectada a Internet, puede ser útil determinar la velocidad de conexión. El hecho
de que un módem de 56 kbps se usa para conectarse no significa que realmente se establezca una
conexión de 56 kbps. Es probable, dependiendo de las condiciones de la línea, que la velocidad de
conexión sea de 50 kbps o inferior. De hecho, algunos servicios de compañías telefónicas como
AT&T TrueVoice evitan que un módem de 56 kbps se conecte a su velocidad óptima.
NOTA:
El throughput de datos puede variar a causa de factores tales como el uso de compresión de
hardware o software. Esta compresión hace posible llegar a un throughput de 112 kbps con un
módem de 56 kbps a través de una línea telefónica analógica.
La velocidad de una conexión está limitada por su componente de más baja velocidad o el cuello
de botella. Esto significa que incluso si el equipamiento es capaz de una conexión de 50 kbps, la
conexión será a la velocidad más baja si el módem remoto soporta solamente 33,6 kbps.
48
Módulo 11: Administración del NOS avanzada
NOTA:
Hay varios sitios web que tienen como objetivo probar la velocidad de conexión. Estos sitios usan
el Protocolo de Transferencia de Hipertexto (HTTP), la sobrecarga del cual afectará la velocidad de
descarga. Los resultados de diferentes sitios pueden variar. No obstante, son útiles para
comparaciones estimadas. Algunos de los sitios que miden la velocidad de conexión son:
• Una conexión pobre al servidor de acceso remoto del ISP causada por problemas del
módem en cada extremo y líneas con ruido
• Un servidor web, servidor FTP, o cualquier servidor en Internet lento al cual se envían las
solicitudes
• Conexiones congestionadas en las líneas del backbone principal, que pueden ocurrir
durante eventos de importancia nacional o internacional
• Ancho de banda compartido en la LAN o dentro de la red del ISP
Se esperan bajas temporarias en la velocidad ocasionales, y hay poco que pueda hacerse respecto
a ello. Si la velocidad de conexión es inaceptable sobre una base continua, puede ser necesario
cambiar a banda ancha u otro acceso de alta velocidad.
49
Módulo 11: Administración del NOS avanzada
El término "sniffer" se usa a menudo para referirse a cualquier programa que permite "escuchar" el
tráfico en la red. Network Associates hace el producto con la marca registrada Sniffer y su versión
mejorada, Sniffer Pro. Ambos productos son analizadores de red.
50
Módulo 11: Administración del NOS avanzada
Los programas de sniffing tienen mala reputación en algunos círculos, porque los hackers y
crackers pueden usarlos para extraer nombres de usuario y contraseñas que se envían a través de
una red en texto claro. Estas credenciales luego se usan para obtener acceso no autorizado a
sistemas. No obstante, los sniffers tienen muchos usos legítimos para los administradores de red:
Estos monitores pueden mostrar valores en formato de gráfico, guardar los datos en un log, y
compilar informes. Las mediciones pueden verse en tiempo real, actualizarse automáticamente o
actualizarse bajo demanda.
Performance Monitor y System Monitor pueden configurar alertas y enviar notificación cuando un
valor especificado pasa arriba o abajo de un límite predefinido.
Para identificar cuellos de botella en la red, contadores de interfaz de red como los siguientes
deberán monitorearse:
Monitorear estos contadores ayuda a planificar una capacidad de ancho de banda apropiada. Por
ejemplo, si la cantidad total de bytes transferidos por segundo está cerca de o es igual a la
capacidad máxima de un medio de red, alguno de los equipos deberá actualizarse (por ejemplo, de
Ethernet de 10 Mbps a Ethernet de 100 Mbps) o el uso de la red deberá reducirse.
El monitor de red que viene con Windows NT y Windows 2000 es una herramienta funcional y útil
para llevar a cabo un análisis de protocolo de rutina. La Figura muestra al Network Monitor
monitoreando la utilización de la red, frames por segundo, y estadísticas de la red adicionales.
51
Módulo 11: Administración del NOS avanzada
Network Monitor puede usarse para mostrar los frames individuales de datos capturados. La figura
muestra que paquetes para varios protocolos diferentes han sido capturados, incluyendo TCP,
UDP, y SMB.
52
Módulo 11: Administración del NOS avanzada
53
Módulo 11: Administración del NOS avanzada
54
Módulo 11: Administración del NOS avanzada
Hay varios programas de administración de red (o, más precisamente, suites de programas) en el
mercado. En esta sección, se examinan algunos de los más populares:
• Microsoft SMS
• Novell ManageWise
• IBM Tivoli Enterprise
• Hewlett Packard OpenView
Estos productos están diseñados teniendo en mente la red grande, multisitio, empresarial.
El software de administración de red que es apropiado para la LAN de tamaño pequeño a mediano
incluye LANExplorer y Lanware Network Monitoring Suite.
SMS también incluye una versión más robusta del Microsoft Network Monitor que la incorporada a
los sistemas operativos Windows NT y Windows 2000. Por ejemplo, el Network Monitor del SMS
agrega la capacidad de buscar routers en la red y resolver direcciones a partir de nombres.
Una de las características más útiles de SMS es su función de distribución de software. Con ella,
se crea un paquete de distribución. El paquete contiene la información usada por SMS para
coordinar la distribución del software como lo muestra la Figura .
SMS usa el servidor Microsoft SQL para almacenar datos, lo que significa que los datos pueden
exportarse fácilmente a Microsoft Access. SMS incluye soporte para clientes Macintosh, y puede
integrarse fácilmente a un entorno Novell NDS.
Novell ManageWise
Novell ManageWise consiste en un grupo integrado de servicios de administración de red que
pueden usarse para administrar servidores NetWare o, mediante la adición de un agente agregado,
servidores Windows NT. Los componentes incluyen un análisis del tráfico de la red, control de
estaciones de trabajo y servidores, y administración de aplicaciones de red. La consola de
ManageWise también incluye la capacidad de mapear unidades de red.
Al igual que SMS, ManageWise puede crear un inventario de dispositivos de red. Además, incluye
una función de alarma/notificación. ManageWise incluye el agente NetWare LANalyzer, el agente
de administración, Intel LANDesk Manager, y protección contra virus LANDesk. ManageWise
incluye el Administrador de Escritorio, como lo muestra la Figura .
55
Módulo 11: Administración del NOS avanzada
Tivoli Enterprise es capaz de proporcionar una vista completa de la topología de red. Herramientas
de reporte permiten la personalización de la vista en la cual se presentan los datos, y pueden
crearse "sets inteligentes" que agrupan los datos lógicamente y que ayudan a analizar la salud de
la red. IBM Tivoli Enterprise se muestra en la Figura .
Tivoli también ofrece soluciones para pequeños negocios con Tivoli IT Director y para
organizaciones de tamaño medio con las suites de administración Tivoli.
56
Módulo 11: Administración del NOS avanzada
57
Módulo 11: Administración del NOS avanzada
58
Módulo 11: Administración del NOS avanzada
SNMP
SNMP es un protocolo que se incluye en la mayoría de las implementaciones de TCP/IP. Tiene
varias ventajas como solución de administración de red:
• Simplicidad
• Bajo costo
• Relativa facilidad de implementación
• Baja sobrecarga en la red
• Soportado por la mayoría de los dispositivos de hardware de red
SNMP usa una base de datos jerárquica llamada Base de Información de Administración (MIB)
para organizar la información que reúne acerca de la red. Software llamado administrador SNMP
se instala en una computadora host que se usa para recolectar los datos. El software del agente
SNMP se instala en las computadoras de la red desde las cuales se recogen los datos. Versiones
freeware tanto de adminitradores como agentes SNMP están disponibles para diversos sistemas
operativos.
CMIP
CMIP fue diseñado para mejorar SNMP y expandir su funcionalidad. Funciona de manera muy
similar a SNMP, pero tiene mejores características de seguridad. Además, permite la notificación
cuando ocurren eventos especificados.
Puesto que la sobrecarga para CMIP es considerablemente más grande que lo requerido para
SNMP, es implementado menos extensamente. CMIP se basa en la suite de protocolos OSI,
mientras que SNMP se considera parte de la suite TCP/IP.
Una compañía se suscribe a un servicio MSP, que proporciona monitoreo del desempeño y
administración de la red. Esto ahorra a la organización el costo de comprar, instalar, y aprender a
usar el software de monitoreo y administración.
59
Módulo 11: Administración del NOS avanzada
Usando SNMP, puede encontrarse información acerca de estos dispositivos remotos sin tener que
estar físicamente en el dispositivo en sí. Ésta puede ser una herramienta muy útil si se comprende
y usa apropiadamente. Algunos ejemplos son:
• Dirección IP de un router
• Cantidad de archivos abiertos
• Cantidad de espacio disponible en el disco rígido
• Número de versión de un host (como Windows NT)
Antes de configurar SNMP, es necesario tener las direcciones IP o nombres de host de los
sistemas que serán iniciadores o de aquéllos que responderán a las solicitudes. El Servicio SNMP
de Microsoft, por ejemplo, usa la resolución de nombres de host regular de Windows NT, como
HOSTS, DNS, WINS, y LMHOSTS. Por lo tanto, al usar uno de estos métodos de resolución,
agregue el nombre de host correcto a la resolución de dirección IP para las computadoras que
están siendo configuradas con SNMP.
Los tipos de sistemas en los cuales pueden hallarse los datos incluyen los siguientes:
60
Módulo 11: Administración del NOS avanzada
• Mainframes
• Gateways y routers
• Hubs y bridges
• Servidores Windows NT
• Servidores LAN Manager
• Agentes SNMP
SNMP usa un diseño de arquitectura distribuida para facilitar sus propiedades. Esto significa que
diversas partes de SNMP se extienden a través de la red para completar la tarea de recolectar y
procesar los datos para proporcionar administración remota. Un Servicios SNMP de Microsoft
permite a una máquina ejecutando Windows NT poder transferir su condición actual a una
computadora ejecutando un sistema de administración SNMP. No obstante, éste es sólo el lado del
agente, no las herramientas de administración. Diversas utilidades de administración de terceros
están disponibles, incluyendo las siguientes:
1. IBM NetView
2. Sun Net Manager
3. Hewlett-Packard OpenView
Usualmente, solamente un sistema de administración está ejecutando el Servicio SNMP por grupo
de hosts. Este grupo se conoce como comunidad. No obstante, más sistemas de administración
pueden ser deseables por las siguientes razones:
El Agente SNMP
Anteriormente, se ha explicado de qué es responsable el lado de administración SNMP y qué
puede hacer específicamente. En su mayor parte, el lado de administración es el componente
activo para obtener información. El agente SNMP, por otro lado, es responsable de cumplir con las
61
Módulo 11: Administración del NOS avanzada
En una única instancia en particular, el agente es el iniciador, actuando por su cuenta sin una
solicitud directa. Este caso especial se denomina "trampa". Se tiende una trampa desde el lado de
administración al agente. Pero la administración no necesita ir hacia el agente para averiguar si se
ha caído en la información trampa. El agente envía un alerta al sistema de administración
diciéndole que el evento ha ocurrido. La mayor parte del tiempo, el agente es pasivo excepto en
esta única ocasión.
Ahora que se han tratado el sistema de administración y los agentes, exploraremos los diferentes
tipos de bases de datos de consultas.
62
Módulo 11: Administración del NOS avanzada
Una variedad de bases de datos MIB pueden establecerse. La MIB se almacena en el agente
SNMP. Estas MIBs están disponibles tanto para los sistemas agete y de administración como
referencia de la que ambos pueden extraer información.
El Servicio Microsoft SNMP, por ejemplo, soporta las siguientes bases de datos MIB:
• Internet MIB II
• LAN Manager MIB II
• DHCP MIB
• WINS MIB
Estructura de la MIB
El espacio de nombre para objetos MIB es jerárquico. Está estructurado de esta manera para que a
cada objeto administrable pueda asignársele un nombre globalmente único. Ciertas organizaciones
tienen la autoridad para asignar el espacio de nombre a partes del diseño de árbol. La estructura
MIB es similar a las direcciones TCP/IP. Obtener solamente una dirección de la InterNIC y luego
aplicar subnetting de acuerdo a lo necesario. No es necesario contactarlos para preguntar acerca
de cada asignación de direcciones. Lo mismo se aplica aquí. Las organizaciones pueden asignar
nombres sin consultar a la autoridad de Internet por cada asignación específica.
Una vez instalado el agente SNMP, debe configurarse con un nombre de comunidad SNMP. El
nombre de comunidad SNMP por defecto es Public. Siempre cambie esto a otra cosa que no sea
Public. El nombre de comunidad es un mecanismo primitivo de contraseña. La consola de
administración SNMP y los agentes SNMP con el mismo nombre de comunidad SNMP pueden
intercambiar información. Si los nombres de comunidad SNMP difieren, no podrán comunicarse.
El agente SNMP sabe qué monitorear en el dispositivo de red mirando la Base de Información de
Administración (MIB) del dispositivo. Cada dispositivo de red único tiene una MIB única definida.
Por ejemplo, hay MIBs para routers, hub, switches, computadoras, e incluso algunos paquetes de
software, como sistemas de base de datos. La MIB contiene una lista de los elementos que pueden
ser administrados por SNMP en el dispositivo asociado a la MIB.
63
Módulo 11: Administración del NOS avanzada
Comunidades SNMP
Una comunidad es un grupo de hosts ejecutando el Servicio SNMP al cual todos pertenecen. Éstos
usualmente consisten en al menos un sistema de administración y varios agentes. La idea es
organizar lógicamente sistemas en unidades organizativas para una mejor administración de la red.
Las comunidades se llaman según un nombre de comunidad. Este nombre es sensible al uso de
mayúsculas y minúsculas. El nombre de comunidad por defecto es "public" y en general todos los
hosts pertenecen a él. También por defecto, todos los agentes SNMP responden a cualquier
solicitud usando el nombre de comunidad "public". Usando nombres de comunidad únicos, pueden
proporcionarse una seguridad limitada y segregación de hosts.
Seguridad
Realmente no hay una seguridad establecida en SNMP. Los datos no son cifrados, y no hay
configuración para detener a alguien que quiera acceder a la red, descubrir los nombres de
comunidad y direcciones usados, y enviar falsas solicitudes a los agentes.
Una razón importante por la que la mayoría de las MIBs son de sólo lectura es para que no puedan
hacerse cambios sin autorización. La mejor seguridad es usar nombres de comunidad únicos. Elija
Enviar Trampa de Autenticación, especifique un Destino para la Trampa, y estipule Sólo Aceptar
Paquetes SNMP de Estos Hosts.
Además, pueden configurarse trampas que permitan a los usuarios saber si los agentes reciben
solicitudes de comunidades o direcciones no especificadas. De esta manera, la actividad SNMP no
autorizada puede rastrearse.
Agente SNMP
En algunos casos se configurarán otros aspectos del agente SNMP. Éstos configuran el tipo de
dispositivos que los usuarios monitorearán y quién es responsable del sistema.
64
Módulo 11: Administración del NOS avanzada
La última parte de la pantalla identifica los tipos de conexiones/dispositivos que este agente
monitoreará. Éstos incluyen:
Cualquier error con SNMP se registra en el log del sistema. El log registra cualquier actividad
SNMP. Use el Visor de Eventos para mirar los errores y encontrar el problema y las posibles
soluciones.
Notificación Remota
La única mejor manera de ser notificado de situaciones cuando surgen es mediante SNMP, que se
trató antes. SNMP es una aplicación de TCP/IP y disponible para cualquier red que use TCP/IP
como protocolo de red. Esto lo hace disponible para Windows 2000, Windows NT, Linux, OS/2,
etcétera.
Comprenda que la notificación es posible usando SNMP. Variará según el sistema operativo.
Dentro de Windows 2000, por ejemplo, los usuarios pueden establecer umbrales para enviar
notificación cuando existan las condiciones, como cuando la memoria disponible en una máquina
cae por debajo de un nivel especificado.
65
Módulo 11: Administración del NOS avanzada
66
Módulo 11: Administración del NOS avanzada
Resumen
Este capítulo trató la administración avanzada de un Sistema Operativo de Red (NOS). Algunos de
los conceptos importantes a retener de este capítulo incluyen los siguientes:
• Existen cuatro tipos de backups. Ellos son completo, parcial, incremental y diferencial.
Automatizar el proceso de backup no sólo incrementa la consistencia del mismo, sino que
también otorga a los administradores de sistemas más tiempo para tratar otros problemas
acuciantes de la red.
• El mapeo de unidades crea una ruta o mapa a través de la red a la unidad o carpeta
compartida. Es una herramienta útil que permite a un administrador compartir recursos que
están almacenados en un servidor. Los recursos que están en el otra computadora de un
usuario final pueden mapearse también. Asignar un permiso permite al administrador del
sistema controlar los grupos y usuarios que pueden acceder a la unidad o carpeta.
• El administrador del sistema administra los recursos de la unidad de disco rígido usando
administración de disco. Los mensajes de alerta automatizados notifican al administrador
de sistemas cuando el espacio disponible en disco cae por debajo de un nivel
predeterminado. Otras herramientas que están disponibles son las cuotas. Una cuota actúa
como techo de almacenamiento para limitar la cantidad de datos que cada usuario puede
almacenar en la red.
• La mayoría de los sistemas operativos proporcionan un medio de escribir automáticamente
en un archivo de registro del sistema. Este archivo detalla fallos de dispositivos, intentos
fallidos de comunicación, y otras condiciones de error. La información es un útil punto de
inicio para resolver problemas. Por ejemplo, Windows NT y Windows 2000 proporcionan el
Visor de Eventos, que muestra una lista de eventos del sistema.
• La primera regla para resolver problemas es verificar la conectividad física. Una vez
verificada, hay un conjunto de pasos para cada caso de resolución de problemas para
asegurar que todo esté cubierto. Éstos incluirían identificación del problema, recreación del
problema, aislamiento, inicio de una respuesta, e implementación del plan de corrección,
prueba de a respuesta, documentación de los resultados, y provisión de feedback al
usuario final.
67