Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Curso /
Indice
1. Introduccion 2
2. Objetivos 2
3. Ordenes utilizadas 2
7. Ejercicios 12
1
1. Introduccion
Es muy importante tener informacion esencial del rendimiento del sistema: procesos en ejecucion,
cantidad de memoria disponible, espacio disponible en disco, numero de particiones, etc. La eficiencia
de un sistema en un momento concreto es el resultado de la demanda total de los recursos, y de como
trata el sistema los procesos que demandan estos recursos. Los problemas de rendimiento pueden ser
debidos a muchas causas, incluyendo la falta de recursos y el control ineficiente de los que disponemos
Como administradores del sistema tenemos que ser capaces de controlar el rendimiento del sistema de
una manera eficiente, detectar posibles problemas que aparezcan, y, si fuese posible, solucionarlos.
2. Objetivos
Al finalizar este boletn vamos a ser capaces de:
Controlar del uso de la CPU: que procesos estan en ejecucion, carga media del sistema, porcentaje
de uso de la CPU, etc.
Priorizar la ejecucion de los procesos, asignando para ellos diferentes valores de prioridades.
Enviar senales a los procesos en ejecucion: terminarlos, finalizarlos, etc.
Limitar algunas de las acciones que se pueden realizar en un interprete de ordenes (numero
maximo de procesos en ejecucion, numero maximo de ficheros abiertos, etc.).
Programar tareas para que se ejecuten en un momento concreto, o programar tareas para que
se ejecuten con una cierta periodicidad.
Controlar el uso de la memoria: cantidad de memoria RAM ocupada o libre, cantidad de la
memoria de intercambio ocupada o libre, cantidad de memoria usada por un proceso, etc.
Controlar el espacio usado en un sistema de ficheros, o bien el espacio disponible. Numero de
ficheros creados en un sistema de ficheros y cuantos hay disponibles.
3. Ordenes utilizadas
Las ordenes que vamos a usar son:
uptime
pstree
ps
top
mpstat
vmtat
w
ulimit
nice y renice
kill y killall
free
mkswap, swapon, etc.
df y du
2
4. Control y gestion de la CPU
En esta seccion de este boletn nos vamos a centrar en el control de la CPU como principal recurso
del sistema.
# uptime
18:00:41 up 3 min, 1 users, load average: 1.53, 0.97, 0.40
systemd---+-NetworkManager-+-chclient
|-2*[abrt-watch-log]
|-abrtd
|-accounts-daemon--4*[{accounts-daemon}]
|
.
.
.
4.3. La orden ps
La orden ps muestra informacion de la actividad de los procesos en ejecucion. Si no anadimos
ningun parametro, ps mostrara los procesos del usuario actual. Los parametros mas basicos son los
siguientes:
-u: Lista informacion del proceso como, por ejemplo, el usuario que lo esta ejecutando, la
utilizacion de CPU y memoria, etc.
-l: Muestra informacion que incluye el UID y el valor nice (ver seccion 4.8).
Algunos de los datos mas importantes que nos muestra por cada proceso son:
3
PPID: identificador del proceso padre.
R: en ejecucion o listo.
N: prioridad baja (valor mayor que 0).
S: durmiendo.
<: prioridad alta (valor menor que 0).
T: parado.
Z: proceso zombie.
D: durmiendo ininterrumpiblemente (normalmente por E/S de corta duracion).
l: tiene multi-threads.
+: proceso ejecutandose en primer plano.
Estadsticas sobre los procesos del sistema (numero de procesos, procesos en ejecucion, durmien-
do, parados o zombies).
El estado actual de la CPU (porcentaje en uso por usuarios, por el sistema, por procesos con
valor nice positivo (ver seccion 4.8), por procesos esperando E/S, desocupada, tratando inte-
rrupciones hardware o software, en espera involuntaria por virtualizacion).
La memoria (memoria total disponible, usada, libre, cantidad usada en buffers y en memoria
cache de paginas).
Los datos de la parte inferior son en su mayora similares a los del ps, indicando para cada proceso:
Columna NI: El valor nice, que indica la prioridad base (ver seccion 4.8).
Columna VIRT: La cantidad de memoria virtual que usa. Se corresponde con la columna VSZ
de ps.
Columna RES: La cantidad de memoria fsica, no intercambiada a disco, que usa. Se corresponde
con la columna RSS de ps.
4
Columna SHR: La cantidad de memoria que podra ser potencialmente compartida con otros
procesos.
Columna %CPU: El porcentaje de CPU usado durante el intervalo de actualizacion del top. En
ps esta columna corresponde al porcentaje de tiempo que ha estado en la CPU desde que se
creo el proceso.
Columna TIME+: El total de tiempo de CPU utilizado desde que se creo. Se corresponde con la
columna TIME de ps.
Por defecto, el listado de los procesos se hace por orden decreciente de uso de la CPU, actua-
lizandose la lista normalmente cada 5 segundos.
Una ventaja de top respecto a ps es que top actualiza periodicamente la informacion que aparece
por pantalla. Otra ventaja es que permite ordenar los procesos segun un determinado criterio. Por
ejemplo, si pulsamos M, top ordenara los procesos segun la columna %MEM, es decir, segun el por-
centaje de memoria RAM ocupada, mientras que si pulsamos P los ordenara por consumo de CPU
(columna %CPU). Una desventaja de top, sin embargo, es que no muestra informacion para todos los
procesos en ejecucion en el sistema (ya que, por lo general, hay mas procesos que lneas se pueden ver
en pantalla). La orden top nos puede ser muy util para saber si hay algun proceso que puede estar
afectando al rendimiento del sistema, haciendo que este vaya anormalmente lento.
La orden top permite realizar una serie de tareas sobre los procesos, como por ejemplo:
Ordenarlos segun diferentes criterios (por PID con N, uso de CPU con P, tiempo con T, etc.).
%nice: porcentaje de uso de la CPU con tareas a nivel de usuario con prioridad base (numero
nice) mayor que 0 (ver seccion 4.8).
%sys: porcentaje de uso de la CPU para tareas del sistema (no incluye el tratamiento de
interrupciones) (modo nucleo).
%iowait: porcentaje de tiempo que la CPU estaba desocupada durante el cual el sistema
tiene pendientes peticiones de e/s de disco.
%steal: porcentaje de tiempo empleado en una espera involuntaria de una CPU virtual mien-
tras que el hypervisor esta sirviendo otro procesador virtual (temas de virtualizacion).
5
%idle: porcentaje de tiempo que la CPU estaba desocupada y el sistema no tiene peticiones
de disco pendientes.
La sintaxis sera:
Ejemplo:
# mpstat 10 5
Linux 2.6.27.37-170.2.104.fc10.x86_64 (ditec.um.es) 29/04/13
13:18:46 CPU %user %nice %sys %iowait %irq %soft %steal %idle intr/s
13:18:56 all 0,02 0,00 0,02 0,05 0,02 0,00 0,00 99,88 2167,60
13:19:06 all 0,23 0,00 0,70 0,18 0,00 0,00 0,00 98,90 2301,30
13:19:16 all 0,02 0,00 0,02 0,00 0,00 0,00 0,00 99,95 2188,50
13:19:26 all 0,00 0,00 0,00 0,02 0,00 0,00 0,00 99,98 2162,20
13:19:36 all 0,00 0,00 0,00 0,00 0,00 0,00 0,00 100,00 2179,90
Media: all 0,05 0,00 0,15 0,05 0,00 0,00 0,00 99,74 2199,90
En caso de que no se le pasen argumentos, esta orden muestra la informacion estadstica que
corresponde al periodo de tiempo desde el arranque del sistema hasta el momento actual.
4.6. La orden w
La orden w muestra quien esta conectado y que esta haciendo. Entre la informacion mostrada
encontramos:
JCPU: tiempo usado por todos los procesos asociados al terminal correspondiente (incluye los
procesos en background actuales, pero no los pasados).
-a: Muestra todos los lmites que actualmente estan establecidos para los diferentes recursos.
6
-f: Establece el tamano maximo para un fichero.
-t: Establece el tiempo maximo que se puede utilizar por cada segundo de CPU.
El rango de prioridad base va desde -20 (maxima prioridad) a 20 (mnima prioridad), teniendo
como valor especial el 19 (o 20) que indica que al proceso solo se le da la CPU cuando nadie mas
la quiera. Por defecto, cada proceso hereda la prioridad base de su proceso padre. Asignar un valor
negativo o que disminuya (mejore) la prioridad base del proceso solo puede hacerlo el root.
Finalmente, la prioridad dinamica del proceso se calcula en funcion de la prioridad base, teniendo
en cuenta factores como el consumo de CPU realizado, ejecucion de codigo dentro del nucleo, etc.
Ordenes relacionadas:
Ejemplo: Ejecuta el proceso konqueror, aumentando en 5 el valor por defecto del numero
nice para empeorar la prioridad de este proceso:
nice -5 konqueror
Ejemplo: Ejecuta el proceso konqueror, disminuyendo en 10 el valor por defecto del nume-
ro nice para mejorar la prioridad de este proceso (solo puede hacerlo el root):
Ejemplo: Fija el valor del numero nice en 14 para el proceso cuyo PID es 890:
renice 14 890
7
4.9. Envo de senales a procesos
En ocasiones es necesario enviar senales a los procesos para pararlos, con la senal SIGSTOP (19),
para eliminarlos, con la senal SIGKILL (9), para hacer que continuen, con la senal SIGCONT (18),
etc. Este envo se realiza mediante la orden kill, con la sintaxis:
La senal que se enva por defecto es SIGTERM (15), que ordena al proceso receptor que termine
su labor, de forma correcta y controlada. Esta senal puede ser capturada. En cambio, si la senal que
se enva es la SIGKILL (9) tendremos la seguridad que el proceso receptor finaliza.
Se puede hacer un envo mas generico usando el nombre del proceso, en lugar de su PID, con la
orden killall, siguiendo la sintaxis:
O incluso enviar una senal usando el nombre u otros atributos o criterios (uid, gid, terminal, ...)
mediante las ordenes pkill o skill.
Finalmente, habra que indicar que hay procesos que no mueren a pesar de recibir la senal KILL:
Procesos zombies.
# at 18:40
at> /sbin/controlimpresora
at> /bin/ls /tmp/ > /home/pilar/salida_ls_at
at> <EOT> # Finalizar con Ctrl+D
job 10 at 2010-01-29 18:40
Para ejecutar tareas periodicamente podemos hacer uso del servicio cron mediante la orden
crontab. Opciones de la orden crontab:
-e: para anadir/modificar tareas, se abre un editor (normalmente vim) en el que indicar, segun
el formato, tarea a lanzar y periodicidad.
Formato de cada lnea de planificacion: minutos hora dia mes da semana tarea
Ejemplos:
8
05 09 * * * tareadiaria #cada da a las 9:05
15 14 1 * * tareames #primer da del mes, a las 14:15
00 22 * * 1-5 tareasemanal #de lunes a viernes, a las 22:00
23 0-23/2 * * * tareacada2horas #a las 2, 4, etc., y 23 minutos
05 04 * * sun tareadomingos #domingo a las 4:05
El fichero /etc/cron.d/0hourly es el fichero para el servicio cron del sistema. Esta preparado
para ejecutar, usando el script run-parts, una serie de tareas cada hora. Las tareas a ejecutar se
copian como ficheros ejecutables en el directorio /etc/cron.hourly/. De esta manera, el fichero
/etc/cron.d/0hourly podra terner un formato como este:
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
HOME=/
# run-parts
01 * * * * root run-parts /etc/cron.hourly
Si observamos entre las tareas planificadas para ejecutarse cada hora (ls /etc/cron.hourly/),
encontramos el ejecutable anacron. El anacron sirve de complemento al propio servicio cron,
pues se trata de un planificador de tareas periodicas (diarias, semanales o mensuales) que no asume
que la maquina tenga que estar encendida continuamente. De este forma, cada hora se pondra a
funcionar este planificador, que leera la lista de trabajos especificados en el fichero de configuracion
/etc/anacrontab y los pondra a funcionar, usando el script run-parts, teniendo en cuenta el
periodo de ejecucion y el margen de posible variacion en la hora de comienzo establecidos para cada
trabajo en dicho fichero de configuracion. Un ejemplo de fichero /etc/anacrontab podra ser:
SHELL=/bin/sh
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO:root
#the maximal random delay added to the base delay of the jobs
RANDOM_DELAY=45
# the jobs will be started during the following hours only
START_HOURS_RANGE=3-22
#
#period delay
#in days in minutes job-identifier command
#------- ---------- -------------- --------------------------------
1 5 cron.daily nice run-parts /etc/cron.daily
7 25 cron.weekly nice run-parts /etc/cron.weekly
@monthly 45 cron.monthly nice run-parts /etc/cron.monthly
9
5.1. La orden vmstat
La orden vmstat presenta informacion sobre la memoria virtual y tambien de los procesos en
ejecucion:
Procesos:
Memoria
si: Cantidad de memoria trada del espacio de intercambio a memoria (en KB/s).
so: Cantidad de memoria intercambiada al disco (en KB/s).
Entrada/Salida
Sistema
siendo:
Esta orden mostrara en cada lnea la informacion correspondiente a cada periodo de tiempo es-
tablecido, siendo la informacion que muestra en la primera lnea la que corresponde al intervalo de
tiempo desde que se arranco el sistema hasta el momento actual. En caso de que no se le pasen argu-
mentos, se muestra unicamente esta primera lnea. La informacion relativa a los procesos (columnas
r y b) y a la memoria (columnas swpd, free, buff y cache) corresponden a valores instantaneos
de cada momento.
Ejemplo:
# vmstat 5 3
procs ---------memory---------- -swap-- ---io---- --system-- -----cpu------
r b swpd free buff cache si so bi bo in cs us sy id wa st
0 0 92 187340 290868 2366352 0 0 48 79 0 0 1 0 99 0 0
0 0 92 186952 290872 2366352 0 0 0 31 2229 2063 0 0 100 0 0
0 0 92 186952 290888 2366344 0 0 0 12 2163 2038 0 0 100 0 0
10
5.2. Espacio para paginacion
El tamano adecuado para la particion de intercambio depende de varios aspectos:
Memoria requerida por los trabajos, tamano de los programas, numero de trabajos simultaneos,
etc.
En portatiles: para posibilitar la hibernacion, se necesita al menos tanto espacio como memoria
RAM.
Con la orden swapon se activa una particion de intercambio, mientras que con swapoff se
desactiva. Una vez desactivada una particion, esta se podra usar para otras cosas cuando tengamos
la garanta de que toda la informacion de la memoria virtual que maneja cada proceso que esta en
funcionamiento se encuentra ya definitivamente almacenada en la memoria secundaria asignada a
dicho proceso.
La creacion de un fichero de intercambio se realiza en varios pasos:
Con la orden free podemos obtener informacion sobre el estado de la memoria, (los campos tienen
el mismo significado que los mostrados en las primeras lneas al ejecutar la orden top).
# df
S.ficheros Bloques de 1K Usado Dispon Uso (porc) Montado en
/dev/sda3 497699 244502 227493 52 /
/dev/sda4 474321 388512 61310 86 /seguridad
11
La sintaxis de uso de esta orden es:
df [opciones]
Es importante tener en cuenta que si el sistema de ficheros raz se quedase sin espacio, o bien
sin nodos-i libres, el sistema tendra problemas para funcionar normalmente, ya que, por ejemplo, no
podra arrancar.
6.2. La orden du
La orden du se usa para informar de cuanto espacio en disco ocupa un archivo o directorio. Esta
informacion la muestra en unidades de 1KB.
La sintaxis de uso de esta orden es:
du [opciones] directorios
-s: En vez de el salida por defecto, informa solo de la suma total de cada uno de los archivos
especificados.
-L: Procesa los enlaces simbolicos usando el archivo o directorio al que el enlace simbolico
referencia, en vez de el enlace en s mismo.
-x: Evalua solo aquellos archivos que se encuentren en el mismo dispositivo que el directorio
especificado como argumento.
7. Ejercicios
Antes de empezar a resolver estos ejercicios es importante que tengas en cuenta lo siguiente:
Para realizar algunos de estos ejercicios es necesario tener el paquete sysstat. Comprueba con
rpm -q sysstat si esta instalado. En caso de que no lo este, realiza su instalacion con yum.
Al resolver los ejercicios no debes limitarte a ejecutar las ordenes de manera automatica. Lo
interesante es analizar los numeros que muestran, y ver como estos varan cuando producimos
cambios en el contexto de ejecucion. Es importante, por tanto, que prestes atencion a las ordenes
que ejecutas, y sobre todo a los datos que se obtienen.
12
1.5 A continuacion vamos a aumentar la carga media del sistema, ejecutando para ello varios
procesos que consumen mucha CPU, y no realizan operaciones de E/S.
1) Compila el programa ejemplo multmatrices.c:
2. La orden pstree muestra el arbol de procesos que hay en ejecucion. Comprueba, haciendo uso
de la orden ps la y de los valores PID y PPID mostrados para cada proceso, que efectivamente
los procesos son padre e hijo.
3. En muchos casos nos interesara seleccionar columnas. Recuerda el uso de tr y cut. Por ejemplo,
que muestra la ejecucion de esta instruccion?
#!/bin/bash
echo nada > /dev/null
exec /tmp/bucle
4.1 Ejecuta la orden top en una terminal y comprueba el estado del sistema. A continuacion
lanza /tmp/bucle en otra. Observa como cambia el estado del sistema al lanzar el script.
En una tercera terminal, comprueba con ps los procesos en ejecucion.
4.2 Usando la combinacion de teclas Control-Z para el proceso bucle. Una vez parado la
informacion mostrada por top va cambiando, hasta que no muestra mas informacion sobre
dicho proceso. Fjate que ha aumentado el numero de procesos parados.
4.3 Reinicia el proceso con la orden fg y comprueba que vuelve a aparecer la informacion sobre
el proceso.
4.4 Observa si mientras esta en ejecucion ese proceso cambia la carga media del sistema.
13
4.5 Por que el proceso bucle siempre tiene el mismo PID si se lanza a s mismo una y otra
vez durante su ejecucion?
4.6 Desde el top, cambia la prioridad base (el numero nice) del proceso (que esta actualmente
en valor 0), dandole un valor menor, por ejemplo -10.
4.7 Usando la orden nice lanza otro proceso bucle con la prioridad base (valor del numero
nice) de -15.
4.8 Observa que la CPU se le asignara mas al segundo bucle lanzado. Esto es debido a que este
segundo bucle tiene el valor de nice (columna NI) mas pequeno, lo que conlleva un valor
de la prioridad dinamica (columna PR) tambien mas pequeno, que en definitiva significa
que tiene mas prioridad de uso de la CPU.
4.9 Asigna mediante renice una prioridad base de -1 al bucle que lanzaste anteriormente
con prioridad -15. Como afecta esto a la ejecucion de los dos procesos?
4.10 Lanza ahora el proceso multmatrices del ejercicio 1. Observa en la orden top como se
distribuye la CPU entre los tres procesos. Cual de los tres obtiene un mayor porcentaje
de CPU, el bucle con nice -10, el bucle con nice -1 o el multmatrices? Por que?
4.11 Desde el top mata el bucle con nice -10. Fjate que ahora, a pesar de que el bucle
que queda tiene nice -1, se le asigna mas de la CPU que antes, al haber muerto el mas
prioritario.
4.12 Haciendo uso de la orden kill, enva la senal de parar al proceso bucle que aun esta en
ejecucion. Despues, usando tambien kill reanudalo y, finalmente, elimnalo. Usa la orden
kill -l para obtener el listado de senales.
5. Estudia el uso que se hace de la CPU, con mpstat, y el uso de memoria, con vmstat, que estan
haciendo en este momento los procesos en ejecucion y con top el uso de CPU, y que procesos
se estan ejecutando.
Abre, por tanto, 3 terminales, y en cada una de ellas ejecuta una de las ordenes anteriores.
Respecto a mpstat y vmstat tienen que dar la informacion cada 3 segundos, y de manera
indefinida, es decir, no tienes que fijarle cuantas muestras queremos.
Para que el sistema tenga tareas a realizar y acceso al disco al mismo tiempo, ejecuta las siguientes
ordenes, de nuevo en 3 terminales distintos, lanzarlas con unos segundos de separacion entre ellas,
para que no abran al mismo tiempo el mismo fichero.
find / -type f -exec cat {} > /dev/null \;
find / -type f -exec tac {} > /dev/null \;
find / -type f -exec sort {} > /dev/null \;
Observa en la ventana que estes ejecutando la orden top que la memoria compartida indicada
por los 3 procesos find es la misma.
Con las ordenes top y mpstat comprueba como se va repartiendo el tiempo de CPU (usuario,
sistema, en espera de E/S, interrupciones software, interrupciones hardware, . . . )
Con la orden vmstat observa si se esta usando o no el espacio de intercambio, si cambia la
cantidad de memoria libre, o la cantidad de bloques que se leen o escriben en disco.
Finalmente, usando la orden killall mata todos los find lanzados.
6. Prueba las opciones de ulimit. Ten en cuenta que una vez establecido un lmite con ulimit,
para cambiar a un valor menos restrictivo es necesario finalizar ese interprete de ordenes, a no
ser que seas el supersusuario. Crea un usuario llamado iso, entra al sistema con ese usuario y
realiza los siguientes ejercicios:
6.1 Limita el numero de ficheros abiertos a 2. A continuacion ejecuta la orden ls. Que sucede?
6.2 Limita el tamano del fichero core a 2K.
14
6.3 Limita el numero de procesos en ejecucion a 1. Ejecuta a continuacion una orden, por
ejemplo, ps. Que esta sucediendo?
Que podemos hacer para que tengan efecto siempre sobre cierto usuario? (Pista: ficheros
profile).
7. Ordenes: at, atq, atrm. (Para poder recibir un correo cuando una orden programada con at
se ejecute es necesario que este en ejecucion el demonio sendmail).
Para lanzar el demonio usa la orden systemctl start sendmail.service.
9. Entra al sistema con el usuario iso y programa la herramienta crontab para que en el da de
hoy y de este mes, durante la hora actual y cada 5 minutos se ejecute la orden /bin/ls -R
$HOME, y el resultado se guarde en el fichero /tmp/tareasiso. Comprueba si esta haciendo
la tarea observando el contenido /tmp/tareasiso.
Una vez que has visto que se ejecuta la tarea, elimina la entrada introducida por el usuario iso
en el cron.
10. Si han transcurrido 5 minutos desde que hiciste el ejercicio 8, comprueba si el demonio cups se
ha lanzado de nuevo.
15
generando_2_hilos &
12. Comprueba con la orden ps que el proceso correspondiente al programa generando 2 hilos
se ha puesto a funcionar y anota su PID.
13. Comprueba, usando la orden pstree, los procesos que son los ancestros de este proceso puesto
en marcha. Observa igualmente los threads que produce dicho proceso: el thread principal del
proceso y el thread hijo, que aparece a continuacion encerrado entre {}.
15. Ejecuta la orden ps con las opciones eLf. Anota, para todos los threads que genera el proce-
so generando 3 hilos, los valores de los campos denominados PID, PPID, LWP, NLWP y
STIME. Razona apropiadamente los valores obtenidos para cada campo.
16. Ejecuta la orden top. Para el proceso generando 3 hilos, anota los valores de los campos
PID, VIRT, RES, %CPU y TIME+. Explica su significado. Observa y anota el valor aproximado
en que aumenta el campo TIME+ por cada segundo que transcurre y razona tu respuesta.
17. Desde top ejecuta la orden H para ver al detalle todos los threads de cada proceso en funciona-
miento. Para todos los threads generados por el proceso generando 3 hilos, anota los valores
de los campos PID, VIRT, RES, %CPU y TIME+. Compara estos valores con los obtenidos en
el ejercicio anterior para el proceso en su conjunto y razona tu respuesta.
18. Siguiendo en top, ejecuta ahora la orden 1. Observa y anota la informacion que ahora te ofrece
esta orden sobre el uso de los diferentes cores de la CPU.
19. Finaliza los procesos generando 2 hilos y generando 3 hilos usando la orden kill.
20. Con la orden free averigua el estado de la memoria principal y de la zona de intercambio del
sistema en este momento. Anota el tamano total de la zona de intercambio.
21. Ejecuta la orden vmstat obteniendo 4 muestras cada 2 segundos. Anota, de la ultima muestra,
la informacion mostrada sobre la cantidad de memoria de intercambio usada.
22. Crea un fichero de paginacion y anadelo a tu sistema. Para crear el fichero de paginacion:
22.1 Cambian los valores mostrados por vmstat? Y los mostrados por free? Por que?
22.2 Que habra que hacer para que el fichero se active en el momento del arranque del sistema?
22.3 Si ademas del fichero de swap creado, el sistema tiene una particion de swap, que prioridad
asignaras a cada uno?
23. Comprueba el uso de bloques de datos que se esta haciendo en la particion raz. Obten la misma
informacion pero expresada en Megabytes o Gigabytes. Pista: consulta la pagina de manual para
ver que opcion hay que usar.
24. Cuantos nodos-i se estan usando en la particion raz? Cuantos ficheros nuevos se podran crear
en esa misma particion raz?
25. Cual es el tamano total de todos los ficheros contenidos en el directorio /etc?
26. Obten el numero de bloques de 4 KB usados por el directorio /etc y sus subdirectorios.
16