Muchos gurús de Linux recomiendan intercambiar particiones dos veces el tamaño de la RAM, pero Fedora Security 25 me empujó a una partición del mismo tamaño que la RAM. ¿Por qué fue menos?

Realmente depende del propósito del sistema y de las aplicaciones que esté ejecutando.

El intercambio solo se usa si las demandas de los procesos en ejecución exceden la RAM disponible. De lo contrario, realmente no lo necesitas en absoluto.

El propósito de “el tamaño de la RAM” es para computadoras portátiles que se ponen en suspensión / hibernación. EN ALGUNA PARTE, la memoria debe guardarse … y el intercambio está preasignado y disponible. Mientras no se use el intercambio, se puede usar para este propósito.

PERO, si está ejecutando algunos procesos grandes que están utilizando el intercambio … la hibernación fallará.

El uso del doble del tamaño permite un uso bastante intenso del intercambio, y aún así puede hibernar el sistema.

La “regla de oro” sigue siendo válida, pero debe comprender de qué se trata.

Los servidores no hibernan … Pero he visto que los servidores colapsaron al no tener suficiente intercambio para el uso que se le dio al servidor (dinámica de fluidos computacional) ya que las demandas excedieron la memoria, a pesar de que 256 GB de memoria estaban presentes … las demandas hasta ahora excedieron el intercambio (que los PHB insistieron en tener solo 6 GB) que el sistema se bloqueó. La expansión del intercambio a 32 GB redujo la frecuencia de tales bloqueos en un 80%, lo que se consideró tolerable. La única otra solución disponible era no permitir que los usuarios ocuparan toda la memoria (configurar ulimits ayuda), y no permitir 16K subprocesos por proceso.

Con Linux, también puede especificar “sin suscripción excesiva” al asignador de memoria y también evitar fallas debido a la falta de memoria, pero esto lo obliga a saber CUÁNTA memoria está utilizando realmente antes de tiempo, y establecer el espacio de intercambio adecuadamente. Al usar la suscripción excesiva, está asumiendo que la memoria estará disponible y puede asignar memoria incluso cuando no la esté usando.

Esta situación surge porque una “bifurcación” de un proceso duplica técnicamente toda la memoria del proceso: código y datos. Están marcados como “copiar al escribir”, por lo que si no escribe en la memoria, no se le asigna otra página, y no está excediendo la capacidad. Pero la configuración de “no suscripción excesiva” no puede predecir eso, por lo que considera que el nuevo proceso tiene una copia completa de los datos. Y eso puede exceder la capacidad del sistema, y ​​el proceso se aborta.

Sin embargo, el sistema no se bloqueará.

El tamaño de RAM 2x para el intercambio es un remanente histórico de los días en que los servidores UNIX tenían mucha menos RAM que las máquinas modernas. En estos días, si un sistema Linux comienza a intercambiarse, simplemente agregaría más RAM, algo que no estaba disponible para los viejos servidores UNIX. De hecho, a menudo configuro sistemas con muy poco o ningún intercambio, especialmente para máquinas virtuales Linux. Algunas aplicaciones, como la base de datos Oracle, todavía requieren un gran espacio de intercambio para instalar, pero muchas personas simplemente configuran un archivo de intercambio para instalarlo y luego eliminan el archivo de intercambio sin ningún efecto negativo.

En mi servidor Linux principal que tiene 32 GB de RAM, tiene el archivo predeterminado de intercambio de tamaño de RAM 1x pero ha usado 0 bytes. En mi servidor NAS de Linux, que tenía 4 GB de RAM y el mismo espacio de intercambio, ha utilizado 0 bytes. Están ejecutando diferentes distribuciones de Linux. Este uso es completamente habitual y esperado, el intercambio es solo para emergencias y, en su mayor parte, es solo espacio de disco desperdiciado.

Es solo por razones heredadas, teníamos una fórmula para crear particiones, esto fue antes de la era de LVM y los tamaños gigantescos de RAM en un sistema con 128 MB de ram, tiene mucho sentido porque habría muchos procesos que afeitarían la huella de la memoria mucho más tarde que ese.

Double se utilizó para ajustar todo lo que estaba a punto de cambiarse y todo lo que estaba a punto de cambiarse desde la RAM.

ERA SOLO UNA REGLA. DE THUMB, que ya no es relevante, de hecho, hay algunos programas que recomiendan no tener particiones de intercambio (por ejemplo, elasticsearch)

En los días de 1.5 o 2 gigas de carnero, un espacio de intercambio era casi obligatorio. Ahora con 4 u 8 conciertos como norma y 16 conciertos bastante comunes, no tanto. Cuando configuré mi lanbox con 16 gigas de ram, no configuré ningún espacio de intercambio. Depende de lo que se le pedirá a la PC que haga, la navegación básica, el correo electrónico y el procesamiento de texto 4 concierto es suficiente.