mas SWAP al vuelo

Iniciado por LastDragon, 12 Mayo 2006, 16:35 PM

0 Miembros y 1 Visitante están viendo este tema.

LastDragon




Creando SWAP al vuelo.

Cuando se requiere mas SWAP de la configurada se puede recurrir a un archivo SWAP de emergencia


Como root revisa lo siguiente:

Observa tu sistema y decide cuanto swap quieres asignare

Puedes usar  comandos como FREE o TOP, en este ejemplo obtengo esto del TOP

Citartop - 09:48:27 up 35 min,  2 users,  load average: 0.12, 0.14, 0.26
Tasks:  62 total,   1 running,  60 sleeping,   0 stopped,   0 zombie
Cpu(s):  4.2% us, 11.2% sy,  0.0% ni, 78.8% id,  0.0% wa,  0.0% hi,  5.8% si
Mem:    256044k total,   254384k used,     1660k free,    61580k buffers
Swap:        0k total,        0k used,        0k free,    51184k cached

He decidido anexar 10 megas de SWAP, primero requiero un archivo con datos nulos asi que por medio del comando DD obtengo uno del dispositivo ZERO, ocupo bloques de a un mega cada uno y como decidi meter 10 megas entonces contare 10 bloques de a mega,

En la linea e ejemplo tu puedes editar el count=10 por la cantidad de megas que requieres


[root@miniserv ~]# dd if=/dev/zero of=/archivo.swap bs=1048576 count=10
10+0 registros leídos
10+0 registros escritos


Ya que tienes el archivo, yo lo almacene en raíz con el nombre ARCHIVO.SWAP. Se procede a darle "formato" o prepararlo para que sea un archivo de SWAP, lo hacemos con el comando MKSWAP


[root@miniserv ~]# mkswap /archivo.swap
Configurando espacio de intercambio versión 1, tamaño = 10481 kB

Una vez preparado el archivo, simplemente lo activamos como SWAP, con el comando SWAPON


[root@miniserv ~]# swapon /archivo.swap


Una vez activado, ya nuestro sistema contara con el SWAP que necesitamos, puedes verlo ejecutando TOP de nueva cuenta

Citartop - 09:51:05 up 38 min,  2 users,  load average: 0.40, 0.24, 0.27
Tasks:  62 total,   1 running,  60 sleeping,   0 stopped,   0 zombie
Cpu(s):  5.4% us, 12.0% sy,  0.0% ni, 74.5% id,  1.2% wa,  0.4% hi,  6.6% si
Mem:    256044k total,   254056k used,     1988k free,    55924k buffers
Swap:    10232k total,        0k used,    10232k free,    61232k cached

Si queremos recuperar el espacio del SWAP, primero apagamos el servicio de SWAP del archive con SWAPOFF


[root@linux ~]# swapoff /archivo.swap

Borramos el archivo que contenía el SWAP

[root@linux ~]# rm /archivo.swap

Con TOP vemos que el sistema quedo como antes

Citartop - 09:54:26 up 41 min,  2 users,  load average: 0.20, 0.27, 0.27
Tasks:  58 total,   1 running,  57 sleeping,   0 stopped,   0 zombie
Cpu(s):  7.4% us, 12.4% sy,  0.0% ni, 69.0% id,  8.4% wa,  0.2% hi,  2.5% si
Mem:    256044k total,   232264k used,    23780k free,    54696k buffers
Swap:        0k total,        0k used,        0k free,    60616k cached

En este ejemplo puse un archive de swap por que no tenia nada de swap mi sistema, sin embargo la mayoría tiene ya swap. A veces en raros casos requerimos más SWAP y no podemos raparticionar el disco. Simplemente se puede anexar SWAP al SWAP ya existente con archivos al vuelo de SWAP

orvtech

Aquí hay un poco de como paralelizar en acceso a estos archivos: http://orvtech.com/general/archivos-swap-y-paralelizacion-de-espacio-swap/




Lo único que se necesita es un par de modificaciones al /etc/fstab y  un kernel 2.6 o mas moderno.
El impacto va a ser a la hora de escribir al swap... sera mas veloz aunque el tiempo de lectura puede ser impactado de forma negativa pero no por mucho.