domingo, 3 de diciembre de 2006

NO me queda SWAP!!!

Si señores ... a veces suele ocurrir que por una mala planificación al momento de instalar, podriamos asignar poco espacio a la partición SWAP.

como se soluciona ?

Agregando Swap :)

primero, un poco de teoría.

Linux y los sistemas Unix en general, manejan dos tipos de elementos dentro del sistema operativo, los procesos y los archivos ... si algo no es proceso, entonces es un archivo. Aplicando este concepto, tanto nuestro teclado, ratón disco duro y otros dispositivos, están representados por archivos.

En el caso de los discos duros IDE, estos están representados por el archivo /dev/hda (ó hdb ó hdc según cuantos discos tengamos)

Bueno, ocurre que la SWAP también es un archivo y por lo tanto ,si necesitaramos más, basta con crear un archivo y decirle a sistema que lo use como SWAP.

Aquí vamos.

Averiguamos cuanta SWAP tenemos y de pasada cuanta memoria:

# free -m
total used free shared buffers cached
Mem: 249 244 4 0 2 75
-/+ buffers/cache: 166 83
Swap: 141 103 37

Ahí dice ... SWAP 141 megas ( la opcion -m del comando free muestra en megas los datos)

Creando el archivo SWAP con el comando dd

# dd
count=10 bs=1M if=/dev/zero of=swap_adicional
10+0 records in
10+0 records out
10485760 bytes transferred in 0.120218 seconds (87222935 bytes/sec)

Podemos estar en cualquier directorio pra crear el archivo ... da lo mismo!!.

Qué hicimos aquí ?

Creamos un archivo de 10 megas que se llama swap_adicional. La opción count indica cuantos bloques vamos a crear, la opción bs indica el tamaño de cada bloque, en este caso 1 mega (1024*1024), la opción if indica desde donde va a leerse el contenido para el nuevo archivo, en este caso va a estar lleno de ceros ( /dev/zero ), la opción of indica donde y como se va a llamar el archivo de destino, el que va a ser nuestra SWAP, swap_adicional en este caso.

Y estamos listo cn el archivo, ahora hay que formatearlo con el siguiente comando:

# mkswap swap_adicional
Setting up swapspace version 1, size = 10481 kB
no label, UUID=fa33b14b-c6c1-4d1b-b541-2b36a5e6a5fd

y ahora ... le decimos al sistema que use ese archivo como SWAP así:

# swapon swap_adicional

y listo!!

ahora sólo queda asegurarnos de que realmente se cargo nuestra SWAP adicional

# free -m
total used free shared buffers cached
Mem: 249 244 4 0 2 75
-/+ buffers/cache: 166 83
Swap: 151 103 37

Ahora tenemos 151 megas de memoria SWAP, osea 10 megas más que antes.

Etiquetas: ,

1 Comments:

Anonymous Anónimo said...

El /dev/zero es un device que te arroja el ASCII 0, no el caracter 0. El ascii 0 es un caracter no imprimible. Por lo cual, en resumidas cuentas, se esta creando un archivo lleno de basura el cual se formatea como swap.

Ahora, la swap adicional, como bien dices es un archivo, pero es menos eficiente que la particion que hayas creado como swap, la cual tiene mayor prioridad para almacenar. Mira el /proc/swaps

9:02 a. m.  

Publicar un comentario

<< Home