Не все файловые системы представляют хранилища на физических носителях. В большинстве версий Unix есть файловые системы, которые играют роль системных интерфейсов. Такие файловые системы не только служат средством хранения данных на устройстве, но способны также представлять системную информацию, например идентификаторы процессов и диагностические сообщения ядра. Эта идея восходит к механизму /dev, который является ранней моделью использования файлов для интерфейсов ввода-вывода. Идея применения каталога /proc берет начало из восьмого издания экспериментальной версии Unix, которая была реализована Томом Дж. Киллианом (Tom J. Killian) и усовершенствована сотрудниками лаборатории Bell Labs (включая многих первичных разработчиков Unix), создавшими Plan 9 — экспериментальную операционную систему, которая вывела файловую систему на новый уровень абстракции (http://plan9.bell-labs.com/sys/doc/9.html).
Специальные типы файловых систем, которые широко применяются в Linux, включают следующие.
• proc. Смонтирована в каталоге /proc. Имя proc является сокращением слова
sysfs. Смонтирована в каталоге /sys (его вы встречали в главе 3).
tmpfs. Смонтирована в каталоге /run и других. С помощью файловой системы tmpfs вы можете использовать физическую память и область подкачки в качестве временного хранилища. Например, можно смонтировать tmpfs там, где вам нравится, применяя длинные параметры size и nr_blocks для контроля максимального размера. Будьте осторожны и не помещайте постоянно данные в систему tmpfs, поскольку в итоге у операционной системы может закончиться память и программы начнут выходить из строя. Так, корпорация Sun Microsystems годами применяла вариант файловой системы tmpfs для каталога /tmp, что вызывало проблемы на компьютерах, работающих в течение долгого времени.
4.3. Область подкачки
Не каждый раздел диска содержит файловую систему. Пополнять оперативную память компьютера можно также за счет дискового пространства. Если оперативная память на исходе, система виртуальной памяти в Linux может автоматически перемещать фрагменты памяти на дисковое хранилище и обратно. Этот процесс называется
Результатом работы команды free является следующая информация о применении подкачки (в килобайтах):
$ free
total used free
Swap: 514072 189804 324268
4.3.1. Использование раздела диска в качестве области подкачки
Чтобы полностью применять раздел диска для подкачки, выполните следующее.
1. Убедитесь в том, что раздел пуст.
2. Запустите команду mkswap
3. Запустите команду swapon dev, чтобы зарегистрировать область с помощью ядра.
После создания раздела подкачки можно внести новую запись о нем в файл /etc/fstab, чтобы система смогла применять область подкачки уже при загрузке компьютера. Вот пример такой записи, в которой в качестве раздела подкачки использовано устройство /dev/sda5:
/dev/sda5 none swap sw 0 0
Принимайте во внимание то, что теперь многие системы применяют идентификаторы UUID вместо простых названий устройств.
4.3.2. Использование файла в качестве области подкачки
Можно применять обычный файл в качестве области подкачки, если возникнет ситуация, когда вы будете вынуждены изменить разделы диска, чтобы создать область подкачки. Вы не должны испытать при этом какие-либо сложности.
Воспользуйтесь приведенными ниже командами, чтобы создать пустой файл, инициализировать его для подкачки, а затем добавить в пул подкачки:
# dd if=/dev/zero of=swap_file bs=1024k count=num_mb
# mkswap
# swapon
Здесь параметр
Чтобы удалить раздел или файл подкачки из активного пула ядра, используйте команду swapoff.
4.3.3. Какой объем области подкачки необходим