¿Hay alguna manera de aumentar mi "archivo de intercambio" existente sin tener que destruirlo y recrearlo? Me gustaría aumentar mi espacio de intercambio de 1GB a 2GB. Actualmente está configurado como tal:
$ sudo swapon -s
Filename Type Size Used Priority
/swapfile file 1048572 736640 -1
$ ls -lh /swapfile
-rw------- 1 root root 1.0G Nov 9 2016 /swapfile
Estoy usando Ubuntu 14.04.
command-line
files
swap
storage
Dave
fuente
fuente
swapoff
crear un nuevo /mkswap
swapon -a
swapoff
entoncesdd
ymkswap
finalmenteswapon
. Pensé que no querías tocar tu archivo.Respuestas:
Primero deshabilite el archivo de intercambio:
Ahora aumentemos el tamaño del archivo de intercambio:
El comando anterior agregará 1GiB de cero bytes al final de su archivo de intercambio.
Configure el archivo como un "archivo de intercambio":
habilitar el intercambio:
fuente
sudo fallocate -l 2G /swapfile
es probablemente más seguro que dd (aunque no mantiene el archivo de intercambio original), y también necesita asudo chmod 600 /swapfile
.fallocate
archivos dispersos? La página deswapon
manual dice que los archivos de intercambio dispersos son problemáticos (mencionando específicamentefallocate
).mkswap
manual también dice que los archivos no deben contener ningún agujero.fallocate
para preasignar espacio en disco y luego usardd
para llenar los agujeros con ceros.Debería agregar un nuevo archivo de intercambio en lugar de cambiar el tamaño del existente porque no le cuesta nada hacerlo . Para cambiar el tamaño de un archivo de intercambio, primero debe deshabilitarlo, lo que desaloja el contenido del intercambio a la RAM, lo que aumenta la presión sobre la RAM e incluso puede convocar al asesino OOM (sin mencionar que podría estar agotando sus discos durante varios minutos). Múltiples archivos de intercambio no son un problema, es trivialmente fácil de configurar otro archivo de intercambio. Literalmente, no hay ningún beneficio en cambiar el tamaño de un archivo de intercambio sobre agregar otro.
fuente
sudo chmod 600 /some/file
obligatorio o no?count=1K
da un archivo 1G? el recuento está en tamaño de bloque, ¿sí? ¿Y eso puede ser 512/4096? ¿O mis matemáticas están mal?Puede crear otro archivo de intercambio como lo hice yo:
sudo fallocate -l 4G /swapfile
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile
sudo swapon --show
Para que sea permanente, agregue un archivo al
fstab
archivo que escribe:echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab
fuente
fallocate
debe usarse bit para crear el archivo, ya que crea un archivo sparce. verman mkswap
man mkswap
, especialmente la última parrafo antes de "Medio ambiente"Tengo buenos resultados en mi Ubuntu 17.04 siguiendo los consejos de Arian Acosta del blog . Uno puede sustituir el 4G aquí
sudo fallocate -l 4G /swapfile
con cualquier cantidad de gigabytes que desee. Por ejemplosudo fallocate -l 2G /swapfile
para TS.fuente
Respuesta general para "cómo cambiar el tamaño del archivo de intercambio":
Desde Bogdan Cornianu, aquí: https://bogdancornianu.com/change-swap-size-in-ubuntu/
[CITA (Casi VERBATIMO, con solo algunas de mis adiciones de comentarios) INICIO]
En el siguiente ejemplo, ampliaremos el espacio de intercambio disponible en / swapfile de 4 GiB a 8 GiB.
Desactiva todos los procesos de intercambio
Cambiar el tamaño del intercambio
if
= archivo de entrada = archivo deof
salidabs
= tamaño de bloque; aquí,1G
representa 1 gibibyte, o GiB, que, segúnman dd
es G = 1024 * 1024 * 1024 bytescount
= multiplicador de bloquesHacer el archivo utilizable como intercambio
Activar el archivo de intercambio
Verifique la cantidad de intercambio disponible
[FIN DE LA COTIZACIÓN]
fuente