Я не могу себе представить, почему файл подкачки должен быть фиксированного размера. Почему бы не позволить ему динамически изменять размер, как файл образа жесткого диска для виртуальной коробки?
Я не могу себе представить, почему файл подкачки должен быть фиксированного размера. Почему бы не позволить ему динамически изменять размер, как файл образа жесткого диска для виртуальной коробки?
Ответы:
Похоже, Linux не поддерживает динамическое изменение размера файла подкачки (во всяком случае, я не смог обнаружить, что размер файла подкачки изменился без swapoff
/ swapon
).
Предположительно, проще предположить, что файл подкачки не меняет размер файла динамически при написании кода для его поддержки. Я тоже не вижу в этом особой пользы. Поскольку вы можете использовать несколько файлов подкачки, ничто не мешает вам создавать больше файлов подкачки по мере необходимости.
Также обратите внимание на этот пункт из на swapon
страницах руководства :
The swap file implementation in the kernel expects to be able to write
to the file directly, without the assistance of the filesystem. This
is a problem on preallocated files (e.g. fallocate(1)) on filesystems
like XFS or ext4, and on copy-on-write filesystems like btrfs.
Я думаю, что та же проблема будет применяться к файлу подкачки динамического размера.
SwapSpace - это утилита, которая позволит вам динамически менять размер свопа, если это то, что вы ищете. Я верю, что это доступно в Ubuntu.
Я знаю, что уже поздно, но я думаю, что лучшее решение для динамического обмена - это:
sudo apt install dphys-swapfile
sudo update-rc.d dphys-swapfile enable
затем установить CONF_SWAPFACTOR=2
в /etc/dphys-swapfile
и , наконец ,
sudo service dphys-swapfile start
Пространство подкачки можно добавить в работающую систему с помощью swapon
команды. Требуется существующий (неиспользуемый) файл подкачки / раздел. Чтобы создать его, используйте dd
команду для выделения смежного файла, а затем mkswap
добавьте правильную управляющую информацию в файл / раздел.
Чтобы удалить файл подкачки, используйте swapoff
; файл может быть удален.
Я подозреваю, что это то, SwapSpace
что делает демон @ user231695.
Обратите внимание, что swapoff может быть медленной операцией, если используется swapfile; все данные должны быть перенесены в другую область подкачки.