Crear archivo de intercambio en una máquina Linux en ejecución

8

Los sitios web de nuestra empresa acaban de pasar de un host compartido a un VDS, ya que la empresa de alojamiento planea retirar los servidores de alojamiento compartido menos confiables.

El VDS solo tiene 256 MB de RAM y aloja algunos sitios, todos menos uno, que son sitios estáticos muy simples con solo unas pocas páginas y combinados sirven a menos de 20-30 visitantes por día.

Nuestro sitio principal, que ejecuta una versión algo personalizada de OSCommerce, también tiene poco tráfico (raramente más de 10 usuarios concurrentes) pero requiere MySQL. Desafortunadamente, desde el movimiento mysqld sigue fallando debido a la memoria insuficiente. He editado un poco la configuración de Apache (para reducir el número de subprocesos) para facilitar la carga, pero eso es solo eludir el problema real.

El servidor no tiene espacio de intercambio, pero tiene considerablemente más espacio en disco del que necesitamos, por lo que estoy pensando en usar parte de ese espacio para el intercambio. Sé que eso no ayudará exactamente al rendimiento, pero podemos vivir con eso.

¿Cómo puedo crear un archivo de intercambio y habilitarlo mientras se ejecuta el servidor? El sistema operativo es CentOS 5.5 (final) y Linux no es mi lengua materna.

Actualización: Para cualquiera que se pregunte sobre los resultados, desde que implementó el archivo de intercambio como lo describe quanta, el servidor no solo ha sido estable, sin más bloqueos de mysqld, en realidad está sirviendo páginas más rápido que antes. El aumento de rendimiento es contrario a lo que esperaba, pero estoy encantado de estar equivocado en este caso.

John Gardeniers
fuente

Respuestas:

15

Suponiendo que desea crear un archivo de intercambio de 512 MB:

# dd if=/dev/zero of=/swapfile bs=1024 count=524288

Configurar área de intercambio con:

# mkswap /swapfile

Activalo:

# swapon /swapfile

Agregar a /etc/fstabpara permanente:

echo -e "/swapfile\t\tswap\t\tswap\t\tdefaults\t0 0" >> /etc/fstab

y verificar con free -m.

quanta
fuente
No se requiere reiniciar?
John Gardeniers
3
Claro, no es necesario reiniciar. Fue activado con swapon.
quanta