В Линуксе место подкачки бывает 2-ух видов: раздел подкачки (swap partition) и файл подкачки (swap file).
Раздел подкачки – это независимая секция жесткого диска, применяемая только для подкачки, практически никаких остальных файлов там нет. Файл подкачки – это файл особенного вида внутри файловой системы, посреди прочих файлов всех остальных типов. Чтоб выяснить каким пространством для подкачки вы располагаете, наберите в командной строчке:
swapon -s
В ответ вы получите что-то типа:
Filename Type Size Used Priority
/dev/sda5 partition 859436 0 -1
Любая строчка относится к отдельному месту подкачки, имеющемуся в системе. В предоставленном случае строка только одна. Поле ‘Type’ (Тип) говорит, что мы имеем раздел (partition), а не файл. Поле ‘Filename’ сообщает, что данный раздел располагаться на диске sda5. Поле ‘Size’ (размер) указывает величина раздела в кб. Поле ‘Used’ (Использовано) сообщает, сколько кб места подкачки употребляется (в предоставленном случае ноль). ‘Priority’ (Приоритет) сообщает, какое из мест подкачки Linux употребляет главным. Подсистема подкачки в линуксе владеет примечательное качество: ежели вы смонтируете с одинаковым приоритетом 2 (либо более) пространств подкачки (лучше на различных устройствах), Линукс будет применять их для подкачки попеременно, будто значительно прирастит продуктивность своппинга.
Раздел подкачки
Для того чтобы добавить доп раздел подкачки в собственную систему, нужно сначала приготовить его. Шаг 1-ый – удостовериться, что раздел помечен как swap partition (раздел подкачки). Шаг 2-ой – сотворить на нем специальную файловую систему – swap filesystem. Чтоб убедиться, что раздел помечен как swap, с правами root (суперпользователя) наберите команду:
fdisk -l /dev/hdb
Замените /dev/hdb на то устройство, которое хотите проверить. В ответ получите что-то вроде:
Device Boot Start End Blocks Id System
/dev/hdb1 2328 2434 859446 82 Linux swap / Solaris
Если раздел не помечен как Linux swap, то придется изменить его с помощью программы fdisk, используя опцию ‘t’. Будьте предельно осторожны при работе с разделами, если не хотите по ошибке удалить важный раздел, или переформатировать системный раздел в раздел подкачки. Вся информация на swap-разделе будет потеряна, так что семь раз отмерьте, один раз отрежьте. Также имейте в виду, что Solaris помечает свои разделы тем же идентификатором, что Линукс – свои разделы подкачки (Linux swap), так что поостерегитесь случайно испортить раздел Solaris (если они у вас есть). Когда раздел помечен как swap, необходимо отформатировать его командой mkswap (make swap), опять же, как root:
mkswap /dev/hdb1
Если не появляется сообщений об ошибках, значит ваш раздел отформатирован и готов к работе. Чтобы немедленно его активировать напечатайте:
swapon /dev/hdb1
Убедиться, что раздел используется, можно запустив команду swapon -s. Чтобы новый раздел автоматически подключался (монтировался) при запуске компьютера, нужно отредактировать файл /etc/fstab, который содержит список файловых систем, подключаемых (монтируемых) при загрузке. Формат каждой строки таков:
[file system] [mount point] [type] [options] [dump] [pass]
Так как пространство подкачки является специальным типом файловой системы, многие из этих параметров не понадобятся. Для раздела подкачки добавьте строку
/dev/hdb1 none swap sw 0 0
Здесь /dev/hdb1 – сам раздел подкачки, он не имеет специальной точки монтирования (mount point), следовательно, пишем none (нет). Его тип (type) – swap, обозначается опцией sw. Последние два параметра не используются, поэтому там нули.
Можно проверить без перезагрузки компьютера, будет ли ваш новый раздел подкачки автоматически подключаться. Для этого сначала отключим все пространства подкачки командой swapoff -a, затем обратно подключим все пространства подкачки, перечисленные в /etc/fstab командой swapon -a, затем проверим, что именно подключилось, командой swapon -s.
Файл подкачки (Swap file)
Кроме разделов подкачки, Линукс поддерживает также файлы подкачки, которые можно создавать, подготавливать и монтировать способом, похожим на вышеописанный. Преимущество файлов подкачки в том, что не нужно искать свободный раздел или создавать новый для увеличения пространства подкачки.
Для создания файла подкачки используйте команду dd, которая “умеет” создавать пустые файлы. Для создания файла в 1Гб напечатайте:
dd if=/dev/zero of=/swapfile bs=1024 count=1048576
Здесь: /swapfile – имя файла подкачки, а число 1048576 – это размер файла в килобайтах (т.е. 1Гб) Подготавливаем файл подкачки при помощи команды mkswap, также как поступали с разделом, но на этот раз указываем имя файла:
mkswap /swapfile
Аналогично монтируем его командой swapon:
swapon /swapfile
Строка в файле /etc/fstab для файла подкачки выглядит так:
/swapfile none swap sw 0 0