Уж простите за тавтологию, но иногда создавать новый дисковый раздел под раздел подкачки (swap) не представляется возможным. В таких случаях можно создать его в виде файла в файловой системе. Для примера рассмотрим создание дополнительного swap-файла размером 8ГБ:
# dd if=/dev/zero of=/swapfile bs=1M count=8192 8192+0 records in 8192+0 records out 8589934592 bytes (8,6 GB) copied, 13,2861 s, 647 MB/s # ls -l /swapfile -rw-r--r--. 1 root root 8589934592 Май 12 11:13 /swapfile # mkswap /swapfile mkswap: /swapfile: warning: dont erase bootbits sectors on whole disk. Use -f to force. Setting up swapspace version 1, size = 8388604 KiB no label, UUID=278eca1b-2af8-4e42-be11-5025ba0f3d8d
Обратите внимание на размер свободного swap-а после первой и второй команд free:
# free; swapon /swapfile ; free total used free shared buffers cached Mem: 32867736 30405392 2462344 0 153196 8790844 -/+ buffers/cache: 21461352 11406384 Swap: 8388600 7596 8381004 total used free shared buffers cached Mem: 32867736 30411360 2456376 0 153196 8790844 -/+ buffers/cache: 21467320 11400416 Swap: 16777200 7596 16769604 # echo '/swapfile none swap sw 0 0' >> /etc/fstab
Дополню - для создания больших файлов лучше пользоваться fallocate из пакета utils-linux-ng (ставится по умолчанию). Для сравнения:
$ time dd if=/dev/zero of=/tmp/swapfile bs=1M count=1024
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB) copied, 7.23511 s, 148 MB/s
real 0m7.238s
user 0m0.003s
sys 0m0.993s
$ls -la /tmp/swapfile
-rw-r--r-- 1 root root 1073741824 May 15 11:13 /tmp/swapfile
$ time fallocate -l 1G /tmp/test.file
real 0m0.023s
user 0m0.000s
sys 0m0.001s
$ls -la /tmp/test.file
-rw-r--r-- 1 root root 1073741824 May 15 11:12 /tmp/test.file
Как видно скорость создания в разы выше.