Разметка жёсткого диска при установке linux
Менеджер томов и статическая разбивка
Менеджер томов (LVM2) — прослойка между файловой системой и железом. Он позволяет менять размер разделов, создавать и удалять разделы. Я скептически отношусь к нему и использую только статическую разметку диска. В защиту своей точки зрения могу привести несколько доводов против использования LVM:
- У меня не возникает потребности менять размеры разделов каждый день.
- Лишняя прослойка сказывается на скорости обращения к диску.
- Мне хватает статической разметки.
Последние версии соляриса (а теперь linux-а и BSD) позволяют устанавливать систему на разделы с ZFS. С помощью ZFS можно менять размеры разделов и делать снапшоты.
Зачем же может потребоваться делить диск на разделы?
- Чтобы защитить данные.
- Использовать разные файловые системы.
- Иметь возможность отмонтировать раздел.
- Использовать различные параметры монтирования для разных разделов(ro, nodev, nosuid, noexec)
- Размещать их на разных жестких дисках.
/ — Корень
Этот раздел должен присутствовать обязательно.
При отсутствии других разделов на нём будут храниться все системные и пользовательские файлы. Это надо учитывать при определении его размера. Обычно производитель дистрибутива даёт рекомендации о минимальном размере корневого раздела.
Swap
Файл подкачки или своп нужен для размещения страниц памяти, которые в данный момент не используются. Своп можно сделать как отдельным разделом так и положить в файл на любой раздел(файл под своп можно создать с помощью утилиты dd). Первый вариант, конечно предпочтительней.
Рекомендуемый размер свопа равен удвоенному размеру оперативной памяти. В своп складывается информация из оперативной памяти при переходе в спящий режим.
Если вы не используете спящий режим, не запускаете тяжёлых приложений и у вас много оперативной памяти, можно уменьшить размер свопа или вообще отключить его.
Boot
Этот раздел помещается в начало диска. Причём его можно вообще не монтировать при загрузке или монтировать с опцией ro.
Размер ядра ~1.5-2M, так что 15-20M под этот раздел будет достаточно.
В качестве файловой системы рекомендуется ставить ext2.
Home
Раздел с домашними директориями пользователей /home можно выделить из соображений безопасности(монтировать его с опциями noexec, nosuid, nodev) или для увеличения надёжности системы.
Также можно использовать один раздел /home для нескольких операционных систем на одной машине.
Размер этого раздела определяется в соответствии с потребностями пользователей.
Var
На серверах (почтовых, вэб, кэширующих прокси) этот раздел может забиваться большим количеством мелких файлов. В таком случае вполне разумно отформатировать его в raiserfs.
А, например на машине с gentoo при компиляции OpenOffice-а требуется до пяти гигабайт свободного места в /var/tmp.
Размер этого раздела будет зависеть от выполняемой системой задачи.
Opt
При использовании стороннего софта, требующего много места на диске, можно вынести /opt на отдельный раздел и ставить этот софт в него. Это также повышает надёжность системы(поломка этой софтины никак не скажется на основной системе).
Usr
Здесь хранятся файлы пользователей, документация, разные иконки и прочее барахло. Есть любители отделить и этот раздел.
Tmpfs
Информацию в разделах /tmp /var/tmp /var/lock не обязательно хранить на диске.
В них разделах находятся временные файлы. При монтировании их в tmpfs всё содержимое будет размещено в памяти или в свопе. Дополнительно можно для этих разделов указать опции монтирования: noexec, nodev, nosuid, что повысит безопасность системы.
Другие разделы
Можно создать раздел с информацией не относящейся к основной системе или примонтировать раздел с другого жёсткого диска. Пример: /mnt/pron или /mnt/anime.
Fstab
Информация о файловых системах, точках монтирования и опциях содержится в файле /etс/fstab, или /etc/vfstab в солярисе.
подробнее об опциях монтирования можно узнать из справки man mount
о формате файла — man fstab.
Утилиты
Разметку диска обычно проводят при установке системы с помощью программы установщика.
Если при установке было оставлено неразмеченное место или возникла необходимость поменять разметку можно воспользоваться следующими утилитами:
- fdisk
- cfdisk
- format — в солярисе
- parted
Заключение
Несколько способов разметки диска:
Для десктопа:
swap 2 x ram_size
/ 10G
/home - всё оставшееся место
/boot 20M (noauto,noatime)
swap 2 x ram_size
/ 10G
/home по усмотрению (noatime,noexec,nodev)
/tmp, /var/tmp, /var/lock - в tmpfs (noexec,nodev)
Для сервера:
/ 10G
swap 2 x ram_size
/var 10G