lunes, 29 de noviembre de 2010

Cómo: Crear un archivo swap en GNU/Linux

Según Wikipedia, la mayoría de los sistemas operativos modernos poseen un mecanismo llamado memoria virtual, que permite hacer creer a los programas que tienen más memoria que la disponible realmente; por ejemplo, 4 Gb en un ordenador de 32 bits. Como en realidad no se tiene físicamente toda esa memoria, algunos procesos no podrán ser ubicados en la memoria RAM.

En este caso es cuando es útil el espacio de intercambio: el sistema operativo puede buscar un proceso poco activo, y moverlo al área de intercambio (el disco duro) y de esa forma liberar la memoria principal para cargar otros procesos. Mientras no haga falta, el proceso extraído de memoria puede quedarse en el disco, ya que ahí no gasta memoria física. Cuando sea necesario, el sistema vuelve a hacer un intercambio, pasándolo del disco a memoria RAM. Es un proceso lento (comparado con usar sólo la memoria RAM), pero permite dar la impresión de que hay más memoria disponible.
En GNU/Linux se suele usar con una partición de intercambio, aunque también permite usar ficheros de intercambio.

Se pueden asignar varios dispositivos de intercambio, incluso de diferentes tipos, y asignar a cada uno una prioridad. Si la prioridad es la misma en varios, las páginas de memoria se distribuirán como en un RAID de nivel 0. Esto permite que los dispositivos de swap se usen en paralelo, cosa que puede aumentar la eficacia, sobre todo si están en discos independientes.

Creando un archivo SWAP

Primero creamos el archivo como tal, por ejemplo un archivo swap de 512 MB:

$ dd if=/dev/zero of=/home/usuario/archivo-swap bs=1M count=512

512+0 records in
512+0 records out
536870912 bytes (537 MB) copied, 15.9923 s, 33.6 MB/s

Luego usamos mkswap para configurar en el archivo un área Linux swap:

$ mkswap /home/usuario/archivo-swap

Setting up swapspace version 1, size = 536866 kB

Una vez que el archivo es creado y es configurado como un área Linux swap, es tiempo de habilitarlo utilizando el comando swapon:

$ sudo swapon /home/usuario/archivo-swap

Y finalmente agregamos la siguiente línea al final del fichero /etc/fstab y reinicamos el sistema para que estos cambios tengan efecto:

$ sudo nano /etc/fstab

/home/usuario/archivo-swap  swap  swap  defaults  0  0


Fuente: Linux 101 Hacks

No hay comentarios:

Publicar un comentario