Agregue espacio de intercambio a una computadora Linux, o aumente el espacio de intercambio que ya está presente, sin alterar las particiones. Te mostramos la forma más sencilla de personalizar tu espacio de intercambio.
Hay varios escenarios en los que es posible que desee aumentar el espacio de intercambio existente o agregar nuevo a su computadora con Linux.
La solución simple a todo esto es agregar un archivo de intercambio a su computadora . Este es un archivo especial, preasignado y reservado para su uso como espacio de intercambio. Un archivo de intercambio funcionará en conjunto con cualquier intercambio existente que pueda tener, ya sea un archivo de intercambio o una partición de intercambio.
En un momento, hubo un impacto en el rendimiento por usar un archivo de intercambio en comparación con una partición de intercambio. Ese ya no es el caso con las mejoras en el rendimiento de los discos duros mecánicos (giratorios) y una mayor eficiencia en las funciones de intercambio dentro del sistema operativo Linux. De hecho, algunas distribuciones de Linux ahora crean archivos de intercambio en lugar de particiones de intercambio.
Swap no solo se usa como un medio para liberar RAM cuando se está quedando sin memoria. Es una parte importante de un sistema que funciona bien. Sin ningún intercambio, la gestión sana de la memoria se vuelve muy difícil de lograr para el kernel. Veamos la forma fácil de agregar espacio de intercambio.
Hay dos puntos que nos gustaría discutir rápidamente.
El sistema de archivos Btrfs tiene ciertas advertencias sobre los archivos de intercambio. En un momento, hubo un conflicto entre la naturaleza de copia en escritura de Btrfs, que quería operar de una manera e intercambiar archivos que necesitaban operar de otra. Algunas funciones de las que dependen los archivos de intercambio no se implementaron, y algunas suposiciones que se hicieron sobre la numeración de bloques dentro de los archivos de intercambio no se cumplieron con Btrfs. Por lo tanto, los archivos de intercambio no fueron compatibles.
Desde el kernel 5.0, puede tener archivos de intercambio en los sistemas de archivos Btrfs si están configurados con los siguientes requisitos:
La mayoría de los lectores utilizarán el sistema de archivos ext4 predeterminado , por lo que esto no les preocupará.
Cuando las unidades de estado sólido (SSD) estuvieron disponibles por primera vez, existía la preocupación de usarlas en situaciones que tenían escrituras frecuentes en el sistema de archivos. Se advirtió a las personas que no pusieran espacio de intercambio en las SSD e incluso que evitaran el registro del sistema en las SSD.
Esto es mucho menos preocupante hoy en día, y muchos SSD que están a la venta tienen una esperanza de vida que durará más que la mayoría de las PC . Un archivo de intercambio en un SSD tendrá un rendimiento mucho mejor que una partición de intercambio en un disco duro mecánico.
Mira antes de saltar. Veamos qué espacio de intercambio está disponible en su computadora. Puede hacer esto de dos formas y usaremos ambas. El free
comando mostrará la memoria usada y libre . La -h
opción (legible por humanos) hará free
que se utilicen unidades sensibles cuando muestre los valores de la memoria.
libre -h
El resultado de free
muestra que no hay espacio de intercambio configurado en esta máquina.
El intercambio nunca se discute sin que surja RAM y RAM libre. Por lo tanto, vale la pena señalar que la RAM libre es de 237 MB. No confunda eso con el total de RAM disponible para su uso. Ese valor lo proporciona la cifra «disponible», que es 881 MB.
Linux utiliza RAM libre para sus propios fines, como el almacenamiento en caché de archivos y los búferes del kernel. La cantidad de RAM dedicada a eso es la cifra de «búfer / caché», que es 871 MB. Pero ese recuerdo todavía se considera y se cuenta como «disponible». El contenido de la RAM “buf / cache” se puede descartar inmediatamente y utilizarlo cualquier aplicación que necesite algo de memoria.
Otra forma de comprobar si hay espacio de intercambio disponible es utilizar el swapon
comando. La --show
opción no realiza ningún cambio en el intercambio en su computadora . Solo proporciona estadísticas.
swapon - show
Si no hay salida de este comando, no hay ningún intercambio configurado.
Si estos comandos han revelado que ya se ha configurado algún espacio de intercambio, el tamaño del espacio de intercambio existente debe tenerse en cuenta en las decisiones relacionadas con el tamaño del archivo de intercambio que va a crear.
La respuesta tradicional era «el doble de RAM que tienes». Pero esto se acuñó cuando las computadoras solían tener una RAM muy limitada. A medida que la RAM se ha vuelto más barata y los programas y juegos requieren más memoria, las especificaciones de la PC se han ajustado en consecuencia. Las PC domésticas con 32 GB de RAM no son infrecuentes hoy en día. Y no va a asignar 64 GB de espacio en el disco duro para intercambiar espacio si tiene 32 GB de RAM. Eso es claramente excesivo.
La cantidad de intercambio que necesita es un tema incendiario, comparable a «cuál es el mejor editor». Una de las discusiones más sensatas que hemos visto sobre este tema se encuentra en las preguntas frecuentes sobre el intercambio de Ubuntu . Es un enfoque corto y de sentido común (aunque, como muchas personas, no entienden cómo funciona el intercambio en Linux ). Hay una tabla útil que muestra una cantidad recomendada de espacio de intercambio para la cantidad de RAM que tiene su sistema y si hiberna su computadora o no.
Y la buena noticia es que realmente no importa qué valor elija. Siempre podemos eliminar un archivo de intercambio y reemplazarlo por uno más grande o, para el caso, uno más pequeño. O simplemente puede agregar otro archivo de intercambio.
Elija un tamaño de archivo de intercambio de la tabla y ejecútelo durante un tiempo. Supervise el uso que hace su sistema del espacio de intercambio. Si se requiere un ajuste fino, los cambios se realizan fácilmente. Con archivos de intercambio, es un trabajo de dos minutos. Compare eso con el ajuste de particiones en una computadora Linux en vivo.
No debe usar el fallocate
comando para crear su archivo de intercambio . Esto es de la página del manual de swapon
:
La implementación del archivo de intercambio en el kernel espera poder escribir en el archivo directamente, sin la ayuda del sistema de archivos. Este es un problema en archivos con agujeros o en archivos de copia sobre escritura en archivo sistemas como Btrfs. Los comandos como cp (1) o truncar (1) crean archivos con agujeros. Estos archivos serán rechazados por swapon. Los archivos preasignados creados por fallocate (1) pueden interpretarse como archivos con agujeros también dependiendo del sistema de archivos. Los archivos de intercambio preasignados son compatible con XFS desde Linux 4.18. La solución más portátil para crear un archivo de intercambio es usar dd (1) y / dev / zero.
Entonces, aunque fallocate
es más rápido, lo usaremos dd
para crear el archivo de intercambio . La máquina utilizada para investigar este artículo tiene dos GB de RAM. Vamos a crear un archivo de intercambio de un GB.
Las opciones son:
/dev/zero
que proporcionará un flujo de cero bytes.swapfile
.bs
valor para obtener el tamaño del archivo.sudo dd if = / dev / zero of = / swapfile bs = 1024 count = 1048576
Se proporcionan algunas estadísticas cuando se crea el archivo.
Podemos ver el número de bloques (registros) que se escribieron en el archivo, el tamaño del archivo, el tiempo necesario para crear el archivo y la tasa de transferencia de datos efectiva.
Utilice el ls
comando para ver el archivo en el directorio raíz:
ls /
Necesitamos preparar el archivo de intercambio con el mkswap
comando antes de que pueda usarse. No necesitamos proporcionar ningún parámetro que mkswap
no sea la ruta y el nombre del archivo:
sudo mkswap / swapfile
El archivo está preparado para su uso como archivo de intercambio. Tenga en cuenta la advertencia sobre los permisos de archivo. Tendremos que cambiarlos para que el usuario root sea el único que pueda leer y escribir en el archivo de intercambio.
Los permisos predeterminados son demasiado liberales, debemos restringirlos para que solo el root pueda usar el archivo de intercambio. Úselo chmod
para cambiar los permisos del archivo :
sudo chmod 600 / swapfile
Esto elimina todos los permisos de los miembros del grupo de archivos y de otros, pero permite que el propietario del archivo, root, lea y escriba en el archivo.
Necesitamos usar el swapon
comando para que Linux sepa que hay un nuevo archivo de intercambio disponible para usar. Solo necesitamos proporcionar la ruta y el nombre del archivo:
sudo swapon / swapfile
El archivo de intercambio ahora está activo.
Para asegurarse de que su archivo de intercambio esté disponible después de un reinicio, agréguelo al /etc/fstab
archivo . Puede usar cualquier editor de texto que prefiera, pero mostraremos el proceso usando el editor de texto gráfico Gedit .
sudo gedit / etc / fstab
La línea que debemos agregar al final del archivo es:
/ swapfile ninguno swap sw 0 0
Los campos son:
swapon -a
(iniciar todos los dispositivos marcados como swap) serán llamados desde uno de los scripts de arranque. Esta opción le dice a Linux que trate esta entrada como un recurso de intercambio que debería estar bajo el control de ese swapon -a
comando. Es común que se usen «valores predeterminados» aquí porque algunos usuarios de Linux creen erróneamente que este campo se ignora. Como veremos, ese no es el caso. Entonces tiene sentido usar la opción correcta.Guarde los cambios y cierre el editor.
Para ver si se está utilizando su espacio de intercambio, use el swapon
comando con la --show
opción:
swapon - show
Las columnas son:
A cada espacio de intercambio se le asigna una prioridad. Si no proporciona uno, se asigna uno automáticamente. Las prioridades asignadas automáticamente son siempre negativas. El rango de prioridades que se pueden asignar manualmente es de 0 a 32767. Los recursos de intercambio con prioridades más altas se utilizan primero.
Si más de un espacio de intercambio tiene la misma prioridad, se utilizan alternativamente hasta que ambos estén llenos, entonces el sistema busca el espacio de intercambio con la siguiente prioridad más baja. Si solo tiene un espacio de intercambio, la prioridad es irrelevante, por supuesto. Pero cambiaremos la prioridad del archivo de intercambio que hemos creado para demostrar cómo hacerlo.
Para establecer una prioridad, agregue la pri=
opción (prioridad) a la /etc/fstab
entrada. Edite la línea que agregó para /etc/fstab
que se vea así:
/ swapfile ninguno swap sw, pri = 10 0 0
Es decir, agregue pri=10
al campo de opciones, separado del «sw» con una coma. No deje ningún espacio entre «sw», la coma y «pri = 10». Reinicie su computadora y use el swapon --show
comando:
swapon - mostrar
La prioridad de este espacio de intercambio se ha elevado a 10. Lo que es una prueba positiva de que /etc/fstab
no se ignora el campo de opciones en la entrada.
Continuando con la exposición y la explicación, podemos crear un nuevo archivo de intercambio tan fácil y rápidamente como este:
sudo dd if = / dev / zero / of = / swapfile2 bs = 1024 count = 104857
sudo mkswap / swapfile2
sudo chmod 600 / swapfile2
sudo swapon / swapfile2
Y comprobemos que funcionó:
swapon - show
Si desea hacer esa caída permanente, en su /etc/fstab
archivo.
Auge. Trabajo hecho.
El mundo del gaming ha experimentado un crecimiento exponencial en los últimos años. La…
Stokkete/Shutterstock.com ¿Sigue utilizando una unidad flash USB obsoleta para almacenar sus archivos? ¿Por qué no…
LG Los fabricantes siempre intentan mejorar el rendimiento de imagen de los monitores. Como resultado,…
Patty Chan/Shutterstock.com Si cree en lo que ve en las redes sociales, puede pensar en…
Seksan.TH/Shutterstock.com Los servicios de suscripción como Netflix, Game Pass y Spotify nos permiten consumir tantas…
fatmawati achmad zaenuri/Shutterstock El acceso a Internet, oa cualquier otra red, se rige por la…