Está en la página 1de 7

M

MANUAL DE LABORATORIO
SC-203 FUNDAMENTOS DE SISTEMAS
OPERATIVOS
SC-203 Fundamentos de Sistemas Operativos

Contents
Laboratorio #5 – Clase 10 ............................................................................................................ 2
Tema ................................................................................................................................ 2
Tiempo estimado .................................................................................................................. 2
Objetivo ............................................................................................................................. 2
Requerimientos Previos ........................................................................................................... 2
Procedimiento ...................................................................................................................... 2
Paso 1 – Comprobar el espacio dedicado para Swap ....................................................................... 2
Paso 2 – Revisar el espacio disponible en la partición del disco duro ................................................... 2
Paso 3 – Creación del Archivo SWAP .......................................................................................... 3
Paso 4 – Habilitar el archivo swap ............................................................................................ 4
Paso 5 – Activar la permanencia del archivo SWAP ......................................................................... 5
Paso 6 – Optimización del uso de la Memoria Swap ........................................................................ 5

1
SC-203 Fundamentos de Sistemas Operativos

Laboratorio #5 – Clase 10
Tema
Creación de memoria swap en un servidor Ubuntu

Tiempo estimado
Se estima que el estudiante requerirá 40 minutos para crear la aplicación guiada.

Objetivo
Definir memoria swap o de intercambio como un espacio en nuestro disco duro designado para que el sistema
operativo almacene datos que las memorias RAM que no pueden retener de forma temporal.

Requerimientos Previos
Tener una máquina virtual con Ubutu Server 18.04 instalado y al menos un disco de 10GB y 2GB libres de
almacenamiento para la creación del segmento de memoria SWAP.

Procedimiento

Paso 1 – Comprobar el espacio dedicado para Swap

En una primera instancia se debe verificar la configuración del sistema operativo, para garantizar si tenemos espacio
de intercambio disponible. Se pueden tener varias particiones para este fin, aunque por lo general con una debería
ser suficiente. Esto se puede ver ejecutando la siguiente instrucción desde la consola “sudo swapon -s”, para la cual
debemos estar conectados con usuario root o bien utilizar el comando sudo:

En el caso de que una vez ejecutado el comando en la pantalla solo aparezcan los títulos de las tablas, significa que
actualmente no tenemos espacio habilitado. De lo contrario, veríamos información como la que se detalla en la
imagen anterior (NombreArchivo, Tipo, Tamaño, EspacioOcupado y Prioridad).

Adicionalmente podríamos observar si tenemos memoria swap en nuestro sistema es mediante el comando “free”.
Con este comando podremos verificar de mostrar el uso de los diferentes tipos de memoria del sistema.

De igual forma si en la línea que indica SWAP aparece el valor 0, esto significa que no se tiene espacio disponible
para este fin.

Paso 2 – Revisar el espacio disponible en la partición del disco duro

Cuando se desea asignar espacio para el intercambio por lo general se utiliza una partición independiente. Sin
embargo, no en todos los casos existe la posibilidad de cambiar el esquema de particionado. Lo que por lo general se
hace en estos casos es crear un archivo de memoria de intercambio que se mantenga en alguna de las particiones
previamente existentes. Para realizar este proceso es importante verificar el estado de uso de los diferentes

2
SC-203 Fundamentos de Sistemas Operativos

filesystem (Particiones) para valorar en cual segmento es más adecuado crearlo. Podemos obtener esta información
ejecutando el comando “df -h”, y tendremos en pantalla el siguiente resultado:

Como se puede ver en el resultado anterior, nuestro disco duro tiene un tamaño de 5 GB disponibles, lo que se traduce
en un espacio suficiente para trabajar. Al saber el espacio disponible, se logra determinar el tamaño que se destinará
a la memoria swap. En este punto existen opiniones diversas, por lo general se recomienda asignar un espacio que
sea al menos igual o el doble de la RAM; sin embargo, esto también dependerá del espacio disponible con que se
cuente. En este caso, dedicaremos 2 GB a este fin.

Paso 3 – Creación del Archivo SWAP

Al saber que contamos con el espacio libre suficiente disponible, se debe proceder a crear un fichero swap en nuestro
sistema de archivos. Para ello vamos a crear uno de nombre “swapfile” en nuestro directorio root. A este archivo
tenemos que asignarle el espacio deseado. Esto se puede realizar de dos maneras:

Primer Método
Cabe destacar que este método es el más lento. El comando utilizado es “dd”, el cual es una herramienta capaz de
escribir de una ubicación a otra. La siguiente instrucción, nos permite obtener un espacio de 2GB

sudo dd if=/dev/zero of=/swapfile bs=1G count=2

Esta sentencia permite crear un segmento de memoria de 1 GB y un contador con el valor 2, que corresponde a las
veces que se debe ejecutar. Así se obtienen los 2 GB de espacio mediante el uso de ceros como contenido. Se debe
ser muy precavido al momento de utilizarlo, ya que, al colocar mal algún tipo de información, se puede corromper
el sistema. El tiempo que se tarda en crear el dispositivo depende del tamaño que se desea crear.

Segundo Método
Este es el método más rápido y para ello se utiliza el programa “fallocate”. Este comando permite crear de manera
inmediata un fichero del tamaño indicado. Para lo anterior es necesario ejecutar lo siguiente:

sudo fallocate –l 2G /swapfile

Importante destacar que en ninguno de los casos es resultante un mensaje en pantalla si este se ejecutó de manera
adecuada. De igual forma el archivo se crea de manera inmediata, y se puede verificar el resultado ejecutando el
comando:

“ls –lh /swapfile”

Como salida deberíamos ver algo parecido a lo siguiente:

3
SC-203 Fundamentos de Sistemas Operativos

Paso 4 – Habilitar el archivo swap

Una vez que se tiene creado el archivo se debe indicar al sistema que será utilizado como partición de intercambio.
Debido a esto se le debe dar formato y activarlo. Para ello debemos ajustar los permisos del archivo, para que solo
el usuario root pueda leerlo y ejecutarlo, ya que, permitir que cualquier usuario pueda acceder a él supondría un
problema de seguridad importante. Para cambiar los permisos debemos ejecutar:

“sudo chmod 600 /swapfile”

A continuación, se le debe indicar al sistema que el archivo será utilizado como área SWAP. Para esto es necesario
ejecutar el siguiente comando:

sudo mkswap /swapfile

Una vez ejecutado dicho comando obtendremos el siguiente resultado, lo que significa que nuestro archivo se
encuentra listo para ser utilizado como espacio swap:

Después de asegurar que se encuentra disponible se debe ejecutar el siguiente comando para activarlo:

sudo swapon /swapfile

Seguidamente, procederemos a verificar que el sistema haya detectado que tenemos un espacio swap disponible con
el siguiente comando:

sudo swapon –s

Obteniendo en pantalla el siguiente resultado:

Utilizando la herramienta «free», nos debería aparecer que la memoria swap tiene espacio disponible en caso de que
anteriormente no se contara con este o bien debería aumentar con respecto al espacio anterior.

free -m

La impresión lógica resultante sería:

4
SC-203 Fundamentos de Sistemas Operativos

Paso 5 – Activar la permanencia del archivo SWAP

A pesar de haber creado el archivo de intercambio, cada vez que se reinicie la máquina el sistema no lo habilitará
de forma automática. Para que esto suceda se debe modificar el archivo “fstab”. Es necesario modificar con el editor
de preferencia (nano, vi, etc) con los privilegios de root o bien con sudo.

sudo nano /etc/fstab

En este archivo posterior a las líneas que ya se encuentran dentro debemos de agregar lo que se muestra a
continuación, en el cual estamos brindando el siguiente detalle: nombre del archivo, punto de montaje, tipo de
archivo, opciones que se utilizarán para montar el sistema de archivos, dump (indica cuando decidir crear un respaldo
siendo 0 que no se respaldará o bien 1 siendo respaldado el archivo) y por último pass (utilizado por fsck para decidir
el orden en el que los sistemas de archivos serán comprobados, teniendo tres niveles de prioridad 0,1 y 2)

/swapfile none swap sw 0 0

Una vez, se haya agregado la línea es necesario guardar el cambio, con el comando correspondiente al editor que se
encuentre utilizando.

Paso 6 – Optimización del uso de la Memoria Swap

Finalmente, es recomendable realizar algunas configuraciones que ayuden a mejorar el rendimiento del sistema de
intercambio. El parámetro “swappiness” permite configurar la frecuencia con la que el sistema realiza el intercambio
de datos de entre la memoria RAM y el espacio de intercambio.

Al parámetro “swappiness” se le puede asignar un valor que se encuentra entre 0 y 100. Cuando el valor esté cerca
de 0, no se intercambiará datos a menos de ser estrictamente necesario. En caso contrario, si el valor cerca de 100,
se llevarán a cabo un mayor número de intercambios para dejar más espacio libre en la RAM.

Para obtener el valor actual de “swappiness”, es necesario ejecutar el siguiente comando:

cat /proc/sys/vm/swappiness

Obteniendo la siguiente salida:

La cual significa que en mi caso se encuentra configurado en 60. A continuación, se debe ejecutar el siguiente
comando para cambiar la configuración de este parámetro. En este ejemplo será aumentado a 70.

sudo sysctl vm.swappiness=70

5
SC-203 Fundamentos de Sistemas Operativos

Es importante destacar que este cambio es temporal, se mantendrá de esa manera hasta que sea reiniciada el
servidor. En caso de querer mantenerlo permanente, se debe añadir la siguiente línea al final del archivo
/etc/sysctl.conf, el cambio se puede realizar en el archivo con un editor de preferencia, es necesario editarlo con
privilegios de root o bien utilizado sudo.

vm.swappiness=70

También podría gustarte