Introducción
Desde que empecé a utilizar Ubuntu, siempre me ha llamado mucho la atención, las gestión que hace de la memoria RAM y del área de intercambio SWAP. En la última instalación que hice de Ubuntu, Quantal Quetzal, omití la creación del área de intercambio, con la intención de comprobar el comportamiento del equipo en estas circunstancias, dejando todo el trabajo del equipo a la memoria RAM, 4 Gb. Y solo hice dos particiones, una para el raíz «/» y otra para el «/home».
Paralelamente a esto, indicar que soy un fiel usuario de Firefox, aunque con la cantidad de aplicaciones que están apareciendo para Chrome, me decidí a instalar nuevamente Chrome en mi equipo para ver como se comportaba la última versión del navegador. Como ya he comentado en otras ocasiones, Chrome es un auténtico consumidor de recursos, y rápidamente se apoderaba de la RAM. Decidí que era cuestión de Chrome y lo desinstalé, dejando solo Firefox, sin embargo, estas últimos días, en los que he realizado un uso mas intensivo del equipo de casa, me he dado cuenta que también sucedía con Firefox.
Tanto en un caso como en otro, tenía que abrir un terminal, tty1, para poder matar las aplicaciones, tanto en el caso de Chrome como en el caso de Firefox. Reflexionando sobre el asunto, y recordé mi experimento con la SWAP, así que me decidí a añadir el área de intercambio para comprobar los efectos de la misma.
Crear el área de intercambio
Para hacer esta operación, y aprovechando que tengo varios discos duros en el equipo, decidí crear el área de intercambio en uno distinto al que tengo el directorio raíz y «mi hogar», de forma que pudiera desmontarlo, y crear el área de intercambio sin tener que salir de la sesión de trabajo. Para esta operación utilicé Gparted, como viene siendo habitual.
Como de costumbre surge la duda del tamaño del área de intercambio. Hay diferentes recomendaciones, desde que tiene que ser del mismo tamaño que la memoria RAM o del doble del tamaño, aunque sinceramente, creo que lo mejor es probar, empezando por el mismo tamaño de la memoria RAM y si es observas que necesitas mas, monitorizando la memoria, pues la amplias; al fin y al cabo cada uno le da un uso particular a su equipo. También puedes conseguir aumentar el tamaño del área de intercambio utilizando zRam, de forma que en mi caso paso de tener 4 a 6 Gb.
Para instalar zRam tienes que añadir el siguiente repositorio, actualizar e instalar:
sudo add-apt-repository ppa:shnatsel/zram && sudo apt-get update && sudo apt-get install zramswap-enabler
Una vez creado el área de intercambio, el siguiente paso era habilitarla de forma temporal en la sesión en curso, y de forma definitiva para las próximas sesiones.
Para prepara la partición, se trata de ejecutar el siguiente comando en modo administrador:
sudo mkswap -c /dev/sdc2 sudo sync
y por último resta activar el área de intercambio:
sudo swapon /dev/sdc2
Para conseguir que el área de intercambio se cargue automáticamente al iniciar el equipo, tendremos que modificar «/etc/fstab», añadiendo la siguiente línea al final del archiv:
UUID=287a67ef-49b5-4198-b7c2-a114843c4b30 swap swap defaults 0 0
donde el UUID lo puedes averiguar en GParted haciendo clic con el botón derecho del ratón sobre la partición swap para que muestre el menú contextual y seleccionar la opción información, que nos mostrará un cuadro de diálogo como el siguiente:
Conclusiones
En ocasiones que en tu equipo se consuma toda la memoria RAM es tu responsabilidad, porque nos empeñamos en abrir varias tareas de forma simultánea, y esto no hace otra cosa que consumir y consumir. Pero también puede suceder de alguna aplicación que requiera un gran consumo de RAM para su funcionamiento, o que abrimos una imagen muy pesada. Si mientras hacemos esto, cambiamos al navegador y realizamos una búsqueda, sucede que tenemos toda la RAM ocupada por el otro proceso. Utilizando el área de intercambio, se puede llevar el primer proceso al área de intercambio, y utilizar la memoria RAM para lo que necesitamos y el resto de procesos pueden estar en el área de intercambio.
Más información | Usemos Linux, Ubuntu, Ubuntu-es, Linux para todos
Puedes agregar las siguientes opciones al sysctl para disminuir la presión sobre el sistema SWAP de la memoria virtual:
# swapping
vm.swappiness = 0
vm.vfs_cache_pressure = 40
Ya que, aunque no se acabe la RAM, por lo general el sistema hará uso de la SWAP, vm.swappiness = 0 reduce esa posibilidad.
Saludos!
Y dale con ese anti-tip. En realidad linux va más fluido cuanto más swap uses!
Hola, Llevo mas de un año sin swap. No obstante tengo 8 gb de ram y un i7. Que conste que e llegado a ocupar dos maquinas virtuales al mismo tiempo y ocupando chrome con mas de 10 pestañas, y solo una ves se a quedado congelado y fue culpa mia.
Y si, se nota la direferencia en velocidad.
Hola @e69014626cbcf8c95bc1c7b34178662e:disqus , lo cierto es que yo pensaba que sería mejor, pero tal y como comento, con mis 4 gb de ram, he tenido que poner swap, porque era imposible.
Creo que este articulo usa una forma antigua de instalación del zram-swap. No tengo delante la información pero en las últimas versiones de ubuntu ya no debe hacese así.
creo que era algo así como zramswap-enabler para activar el modulo del kernel sin el ppa.