Для организации подкачки в Linux могут использоваться как файлы, так и специально выделенные для этого разделы. Предпочтительным является 2-й вариант, т.к. при этом выше быстродействие. Как правило, при установке Linux создается 1 раздел размером в несколько сотен Мб, он автоматически прописывается в fstab и подключается при загрузке системы. Вы можете открыть свой /etc/fstab и увидеть 1-й или 2-й строкой примерно следующее:
/dev/hdb5 none swap none 0 0
Заметьте интересное отличие этой строки от остальных - вместо точки монтирования указано none. Действительно, разделы подкачки не монтируются, да и вообще не содержат ФС как таковой. Первые 4 Кб раздела подкачки заняты служебной информацией, а всё остальное пространство отдано непосредственно под вирутальную память. Кстати, отформатировать раздел для использования в качестве раздела подкачки можно командой mkswap.
В системе может быть несколько (до 32) файлов и разделов подкачки. В любой момент можно подключать и отключать отдельные файлы/разделы командами swapon и swapoff. Таким образом, можно, например, перенести подкачку с одного жесткого диска на другой без остановки системы. Для этого создаем (cfdisk) новый раздел на 2-м диске, форматируем его (mkswap), подключаем (swapon) и отключаем старый (swapoff). Посмотреть статистику использования отдельных разделов/файлов подкачки можно в файле /proc/swaps.
Иногда срочно необходимо (возможно, временно) добавить виртуальной памяти, раздел подкачки заканчивается, а новые создавать негде. В таком случае можно создать где-нибудь (хоть на корневом разделе) файл подкачки. Вообще, конечно, держать файл подкачки (доступ к которому должен быть как можно более быстрым) на журналируемой ФС - идея не очень удачная, но если срочно надо - можно временно сделать это. Итак, сначала создадим пустой файл нужного размера (допустим, 300 Мб):
# dd if=/dev/zero of=/swapfile bs=1M count=300
300+0 records in
300+0 records out
Инициализируем его:
# mkswap /swapfile
Setting up swapspace version 1, size = 314568 kB
И подключим:
# swapon /swapfile
При этом в системном журнале появится примерно следющее сообщение:
kernel: Adding 307192k swap on /swapfile. Priority:-3 extents:1
Проверим, что файл дествительно подключился:
# cat /proc/swaps
Filename Type Size Used Priority
/dev/ide/host0/bus0/target1/lun0/part5 partition 666656 1344 -2
/swapfile file 307192 0 -3
Действительно, помимо 650 Мб /dev/hdb5, используется 300 Мб /swapfile. Когда необходимость в его использовании отпадет, его можно отключить командой swapoff /swapfile и удалить. А если необходимо использовать его постоянно, команду swapon /swapfile надо добавить в загрузочные скрипты.
В заключение хочу добавить, что в ядрах ветки 2.6 появилась возможность отключить использование подкачки как таковой на этапе компиляции ядра. За это отвечает параметр CONFIG_SWAP, он же "Support for paging of anonymous memory (swap)" в разделе "General setup".