ant

SWAP
4.9

sig

4.9.1 Creación del espacio de intercambio (swap)

Si usted esta pensando en usar una partición de intercambio para obtener RAM virtual, es ahora el momento de hacerlo. Muchas distribuciones necesitan que se cree y active la partición de intercambio antes de instalar el software. Si usted tiene poca RAM física, la instalación puede no ir bien, a menos que se active una cierta cantidad de swap.

Normalmente el programa de instalación de una distribución le ofrece una forma fácil de configurar las particiones de intercambio, pero si desea hacerlo usted mismo, siga con el procedimiento descrito aqui.

El comando utilizado para preparar una partición de intercambio es mkswap, tecleándose
mkswap -c <particion> <size>
donde <partition> es el nombre de la partición de swap y <size> es el tamaño de la partición, en bloques.8 Por ejemplo, si su partición de intercambio es la /dev/hda3 y tiene 10336 bloques, teclee el comando
# mkswap -c /dev/hda3 10336
La opcion -c indica a mkswap que compruebe si hay bloques erróneos en la partición mientras la crea. Si se usan varias particiones de intercambio, se necesitara ejecutar el comando mkswap apropiado para cada partición.
Después de preparar el área de swap, hay que decirle al sistema que la use. Normalmente, el sistema comienza a usarla automáticamente durante el arranque. El comando para hacerlo es swapon, y tiene el formato
swapon <particion>
En el ejemplo anterior, para activar el espacio de intercambio en /dev/hda3, usaremos el comando
# swapon /dev/hda3

4.9.2 Utilizando un fichero de intercambio

En vez de reservar una partición individual para espacio de intercambio, se puede usar un fichero. Sin embargo, hay que instalar todo Linux y hacer todas las tareas de configuración antes de crear el fichero de intercambio.
Si tiene un sistema Linux instalado, puede utilizar los siguientes comandos para crear un fichero de intercambio. A continuación vamos a crear un fichero de intercambio de 8208 bloques de tamaño (unos 8 megas).

# dd if=/dev/zero of=/swap bs=1024 count=8208
Este comando crea el fichero de intercambio propiamente dicho. Reemplace "count=" con el tamaño del fichero de intercambio en bloques.
# mkswap /swap 8208
Este comando inicializará el fichero de intercambio swap; como antes, se debe cambiar el nombre y tamaño del fichero de intercambio a los valores apropiados.
# /etc/sync
# swapon /swap
Ahora, tras sincronizar, lo que asegura que el fichero haya sido escrito a disco, ya estamos utilizando el fichero /swap que habíamos creado como fichero de intercambio.

El principal inconveniente de utilizar un fichero de intercambio de esta forma es que todos los accesos al fichero de intercambio se realizan a traves del sistema de ficheros. Esto significa que los bloques que forman el fichero de intercambio pueden no ser contiguos. Por esto, el rendimiento no puede ser tan alto como cuando se utiliza una partición de intercambio, en la que los bloques están siempre contiguos y las peticiones de entrada/salida se hacen directamente al dispositivo.

Otra desventaja a la hora de utilizar un fichero de intercambio es la posibilidad de corromper los datos del sistema de ficheros cuando se utilizan grandes ficheros de intercambio, existe la posibilidad de que se pueda corromper el sistema de ficheros si algo va mal. Manteniendo los sistemas de ficheros y particiones de intercambio separados prevendrá la posibilidad de que esto llegue a ocurrir.

La utilización de un fichero de intercambio puede ser muy útil si se tiene una necesidad temporal de más espacio de intercambio. Por ejemplo, si se está compilando un gran programa y se quiere acelerar las cosas, se puede crear un fichero de intercambio de forma temporal y utilizarlo conjuntamente con el espacio habitual de intercambio.

Para eliminar un fichero de intercambio, primero se usa swapoff de esta forma
# swapoff /swap
Y ahora se puede borrar de forma segura el fichero.
# rm /swap
Recuerde que cada fichero de intercambio (o partición) puede ser de hasta 16 megabytes, pero se pueden usar hasta 8 ficheros o particiones de intercambio en un sistema.