Назад | Перейти на главную страницу

Как изменить раздел подкачки в Linux?

Как изменить раздел подкачки в Linux? Если я сейчас использую / dev / hda3 для подкачки и предпочитаю использовать / dev / hda4, какие шаги мне следует выполнить?

Сделайте это как root:

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

и отредактируйте запись подкачки в / etc / fstab

Если у вас приличный объем оперативной памяти и ваши приложения не потребляют много памяти, вы можете рассмотреть возможность использования в качестве подкачки отдельного файла вместо всего раздела. Таким образом, вы можете легко выбрать объем используемого пространства подкачки, либо добавив дополнительные файлы подкачки, либо изменив размер существующих.

Допустим, ваш файл подкачки будет находиться в корневом каталоге как /swapfile, и будет иметь размер 512 МБ. Для его создания выполните команды от имени пользователя root:

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

Для автоматического использования после перезагрузки вставьте в /etc/fstab:

/swapfile    none    swap    defaults    0 0

Добавить файлы подкачки так же просто, как создать больше файлов (/swapfile1, /swapfileX), форматируя их с помощью mkswap и позволяя использовать swapon. Если вы хотите отключить файл подкачки, вы можете использовать команду swapoff /swapfile.

Что касается производительности между дисковой версией и версией файла, она не так уж сильно отличается. Вы даже можете использовать файл подкачки в качестве диска гибернации на ноутбуках (хотя я всегда использую для этого отдельный раздел).

На лету:

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

Для загрузки: после запуска mkswap отредактируйте файл / etc / fstab и соответствующим образом измените строку / dev / hda3.

Вам нужно будет отформатировать / dev / hda4 как swap, который, я думаю, просто удаляет таблицы файловой системы, затем просто отредактируйте / etc / fstab и укажите swap на / dev / hda4. Затем перезагрузитесь, и все будет в порядке. Само собой разумеется, что вы потеряете все данные на / dev / hda4. Вы можете использовать gparted как графический интерфейс для форматирования.

Решение mateusza в порядке, но состояние не может быть восстановлено при выходе из спящего режима. Необходимы дополнительные операции:

# 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

здесь можно проверить режим гибернации, если он не работает:

# 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

взято из Аскубунту