viernes, 12 de septiembre de 2014

Red Hat: Cómo incrementar la SWAP

Extraido de la pagina: 
http://orlandoolguin.wordpress.com/2011/11/08/red-hat-como-incrementar-la-swap/

En este post, veremos cómo se puede incrementar el tamaño del área Swap de Red Hat Enterprise Linux. Posiblemente pueda aplicar a otros linux, pero para eso, tendrán qué validarlo.

Nota. Antes de comenzar es preciso recalcar que estas operaciones, se deben hacer con el usuario root, y que la forma de incrementar el tamaño de la Swap, es por medio de la creación de un archivo que sirva de espacio alterno para esta.

Verificar tamaño actual

Vamos a comenzar, para hacer esto, primero tenemos qué saber qué tamaño tiene la Swap en este momento. Para hacer esto, se usa el siguiente comando:

free -m

En nuestro ejemplo:
 
[root@metallilaptop opt]# free -m
             total       used       free     shared    buffers     cached
Mem:          8106        613       7492          0        114        302
-/+ buffers/cache:        196       7909
Swap:         5023          0       5023

Como se puede apreciar, en la computadora donde lo estoy corriendo, se tienen 5,023 Mb de espacio en ésta área. Una forma alterna de ver este dato, es por medio del comando:

grep SwapTotal /proc/meminfo

por ejemplo:
 
[root@metallilaptop opt]# grep SwapTotal /proc/meminfo
SwapTotal:     5144568 kB

Crear archivo extensión

Ya que se ha determinado de qué tamaño se requiere la extensión, hay que crear un archivo que sirva como extensión al tamaño de la Swap. Para esto, se usa el siguiente comando:
 
dd if=/dev/zero of=/opt/archivo_ext_swap bs=1k count=cantidad_de_kb

Por ejemplo:
 
[root@metallilaptop opt]# dd if=/dev/zero of=/opt/extension_swap bs=1k count=3156992
3156992+0 records in
3156992+0 records out
3232759808 bytes (3.2 GB) copied, 18.7375 seconds, 173 MB/s

con esto, ya en /opt está creado un archivo llamado extension_swap con un tamaño de 3,083 Mb. Este archivo, debe tener privilegios 600 como se ve a continuación:
 
[root@metallilaptop opt]# chmod 600 extension_swap
[root@metallilaptop opt]#

Convertir extensión en Swap

El archivo que se creó en el punto anterior, no funciona por sí solo como una extensión de la Swap, para eso, hay que aplicarle el comando:
 
mkswap nombre_de_archivo

por ejemplo:
 
[root@metallilaptop opt]# mkswap extension_swap
Setting up swapspace version 1, size = 3232755 kB

Añadir espacio a la Swap

Ya que está el archivo listo para usarse como extensiónd de la Swap, basta con activarlo con el comando:
 
swapon /opt/archivo_ext_swap

por ejemplo:
 
[root@metallilaptop opt]# swapon /opt/extension_swap
[root@metallilaptop opt]#

Verificar el nuevo tamaño

Ya que se activó la extensión de la Swap, hay que verificar que ya se ha incrementado el tamaño:
 
[root@metallilaptop opt]# grep SwapTotal /proc/meminfo
SwapTotal:     8301552 kB
[root@metallilaptop opt]#
[root@metallilaptop opt]# free -m
             total       used       free     shared    buffers     cached
Mem:          8106       3738       4367          0        114       3385
-/+ buffers/cache:        238       7867
Swap:         8106          0       8106

¿Ya fue todo?

Esta configuración que se acaba de hacer, funciona nada más para la presente sesión. Una vez que sea reiniciada la computadora o que se apague, la siguiente vez que arranque, la Swap tendrá el tamaño original ignorando la extensión que se agregó.

Para evitar esta situación, se tiene que automatizar que cada vez que inicie el sistema operativo, se habilité la extensión que se creó.

En este caso, en Red Hat Enterprise Linux, se hace uso del archivo rc.local que se encuentra localizado en /etc/rc.d, para agregar la instrucción swapon.

Por ejemplo:


[root@metallilaptop ~]# cd /etc/rc.d
[root@metallilaptop rc.d]# more rc.local
#!/bin/sh
#
# This script will be executed *after* all the other init scripts.
# You can put your own initialization stuff in here if you don't
# want to do the full Sys V style init stuff.

touch /var/lock/subsys/local
no tiene la instrucción; y después de editar con el vi:
[root@metallilaptop rc.d]# vi rc.local
[root@metallilaptop rc.d]#
[root@metallilaptop rc.d]# more rc.local
#!/bin/sh
#
# This script will be executed *after* all the other init scripts.
# You can put your own initialization stuff in here if you don't
# want to do the full Sys V style init stuff.

touch /var/lock/subsys/local

swapon /opt/extension_swap
 
Con esto, se asegura que cada vez que inicie la computadora, se agregue la extensión a la Swap de manera automática.
Si la información de este post te ha sido de utilidad o quieres que agregue algo más, deja por favor un comentario, contestaré a la brevedad.

No hay comentarios:

Publicar un comentario