¿Cómo cambio la partición de intercambio en Linux?

12

¿Cómo cambio la partición de intercambio en Linux? Si actualmente uso / dev / hda3 para el intercambio, y prefiero usar / dev / hda4, ¿qué pasos debo seguir?

Martin Bøgelund
fuente
1
Probablemente valga la pena crear una partición lógica / dev / hda5 en la partición primaria / dev / hda4 y usarla para el intercambio. De esta manera, usted no tiene que gastar la totalidad de / dev / hda4 como intercambio, y puede crear otras particiones lógicas en ella
dmityugov

Respuestas:

25

Hazlo como root:

swapoff /dev/hda3
mkswap /dev/hda4
swapon /dev/hda4

y edite la entrada de intercambio en / etc / fstab

mateusza
fuente
13

Si tiene una cantidad decente de RAM y sus aplicaciones no requieren mucha memoria, puede considerar usar un archivo separado como un intercambio en lugar de la partición completa. De esa manera, puede seleccionar fácilmente la cantidad de espacio de intercambio que usa, ya sea agregando más archivos de intercambio o cambiando el tamaño de los existentes.

Digamos que su archivo de intercambio residirá en el directorio raíz como /swapfile, y tendrá un tamaño de 512 MB. Para crearlo, emita comandos como root:

$ dd if=/dev/zero of=/swapfile bs=1M count=512
$ mkswap /swapfile
$ swapon /swapfile

Para usarlo automáticamente después de reiniciar, inserte /etc/fstab:

/swapfile    none    swap    defaults    0 0

Agregar más archivos de intercambio es tan simple como crear más archivos ( /swapfile1, /swapfileX), formatearlos usando mkswapy habilitar el uso swapon. Si desea deshabilitar un archivo de intercambio, puede usar el comando swapoff /swapfile.

En cuanto al rendimiento entre el disco y la versión del archivo, no es tan diferente. Incluso puede usar swapfile como disco de hibernación en computadoras portátiles (aunque siempre uso particiones separadas para eso de todos modos).

Drybjed
fuente
swapfile no es una buena idea, porque ext4 es super SLOW un SSD para procedimientos de escritura frecuentes. Esta es la razón por la cual, por defecto, el intercambio de Linux tiene un sistema de archivos diferente. La forma correcta sería cambiar el tamaño de la tabla de particiones para hacer una partición de intercambio más grande.
Evalds Urtans 01 de
9

Sobre la marcha:

sudo swapoff /dev/hda3
sudo mkswap /dev/hda4
sudo swapon /dev/hda4

Para el tiempo de arranque, después de ejecutar el mkswap, edite el archivo / etc / fstab y cambie la línea / dev / hda3 según corresponda.

Kyle Brandt
fuente
4

Tendrá que formatear / dev / hda4 como intercambio, lo que creo que simplemente elimina las tablas del sistema de archivos, luego solo edite / etc / fstab y apunte el intercambio a / dev / hda4. Luego reinicie y debería estar bien. No hace falta decir que perderá datos en / dev / hda4. Puede usar gparted como gui para el formateo.

skitzot33
fuente
1
No necesita reiniciar Linux 2.6.x después de formatear una partición, ni siquiera después de cambiar la tabla de particiones del disco.
drybjed
Buen punto, pero me estaba apegando a la filosofía de KISS.
skitzot33
@ skitzot33 ¿No es el arranque más simple que el arranque ?
glglgl
2

La solución de mateusza está bien, pero es posible que el estado no se recupere al recuperarse de la hibernación. Se necesitan algunas operaciones adicionales:

# prepare your partitions
swapoff /dev/sda2
mkswap /dev/sda3
swapon /dev/sda3

# find swap uuid
sudo blkid | grep swap
# OR
sudo echo ls -l /dev/disk/by-uuid | grep sda3 |  cut -d' '  -f8 >> /etc/fstab

# edit swap entry in /etc/fstab
gksu gedit /etc/fstab

# edit the uuid line in /etc/initramfs-tools/conf.d/resume
gksu gedit /etc/initramfs-tools/conf.d/resume

# In terminal, execute this command
sudo update-initramfs -u

puedes probar tu hibernación aquí, si no funciona:

# check your /etc/default/grub file
gksu gedit /etc/default/grub

# Depending on your version : if a line looks like
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash resume=UUID=<old_swap_partition_uuid>"
# then modify it accordingly; otherwise that's all, you're done

# execute in terminal
sudo update-grub

tomado de askubuntu

fkk
fuente