На жёстком диске любого компьютера хранятся данные, которые используются совершенно по-разному. Одни составляют операционную систему или нужны ей для работы, другие нужны пользователю, он их создаёт сам или откуда-то получает. Некоторые данные нужны временно, например, только на время работы программы, другие предназначены для «вечного» хранения. Есть такие данные, которые может изменить только человек, и такие, которые система сама создаёт или модифицирует в процессе работы. Наконец, есть такие данные, которые могут храниться на одном компьютере, а использоваться на нескольких (например, по локальной сети), и такие, которые предназначены только для данного компьютера.
Надёжность хранения данных и эффективность доступа к ним возрастает, если разделять данные разных типов (различающиеся по характеру использования). Для этого всё доступное пространство на жёстком диске (или дисках) разделяется на независимые области, каждая из которых предназначена для данных определённого типа. Для организации таких областей хорошо подходит технология разделения диска на разделы.
Операционная система рассматривает каждый раздел как отдельный жёсткий диск, так что изменение содержимого одного раздела никак не сказывается на других. Одна из выгод такого подхода: в случае физического сбоя повреждения данных будут локализованы внутри того раздела, где произошёл сбой, и не затронут других разделов. Разделы открывают также путь для оптимизации скорости доступа: чтение и запись для большинства дисков выше в середине и ниже к концу и началу диска. В самой быстрой области можно расположить раздел с данными, для которых важна скорость доступа.
Разделение диска на разделы необходимо в том случае, если на одном физическом устройстве должны быть установлены несколько операционных систем. Каждой операционной системе потребуется выделить не менее одного раздела.
Минимальное количество разделов, которые необходимы Linux для работы — два. Первый — для корневой файловой системы, второй — для области подкачки.
Область подкачки (swap space) — это пространство на диске, используемое системой для организации виртуальной памяти. Если какая-то область оперативной памяти долгое время не используется, её содержимое записывается на диск, в область подкачки — тем самым освобождается место в физической памяти для других процессов. Когда же эта область памяти потребуется вновь, ядро подкачает её с диска и разместит в оперативной памяти.
Благодаря этому вполне может сложиться ситуация, когда используется больше оперативной памяти, чем её есть в действительности: если не вся заказанная память используется одновременно, что позволяет системе откачивать некоторые области. В Linux принято размещать область подкачки на отдельном разделе, что позволяет увеличить скорость доступа к данным и уменьшить риск повреждения ценных данных на основных разделах.
С корневой файловой системы начинает расти всё дерево файлов Linux. Точкой монтирования для корневой файловой системы служит «/
» — корневой каталог. Можно поместить все данные (включая пользовательские файлы) на один раздел — это как раз тот случай, когда для Linux потребуется всего два раздела. Для повышения эффективности и надёжности некоторые ветви дерева файлов можно выносить на другие разделы. Поскольку для файловой системы Linux не важно, каким образом части дерева каталогов расположены на разделах дисков, у вас есть возможность использовать каждый из имеющихся разделов диска под любой каталог файловой системы. В этом случае раздел с корневым каталогом будет служить точкой монтирования для остальных файловых систем. Ниже перечислены наиболее часто выделяемые разделы.
/home
/usr
/usr
. Преимуществом размещения этого каталога в отдельном разделе является то, что при нормальной работе (кроме установки/удаления пакетов) не требуется в него записывать никаких данных, поэтому этот раздел можно монтировать в режиме «только чтение», в том числе по локальной сети. В этом случае несколько машин могут пользоваться одним сетевым разделом /usr
. Размер этого раздела зависит от количества пакетов, которые будут установлены, он колеблется в пределах от 500 Мб для маленькой установки до нескольких гигабайт для полной установки. Вариант на 2–3 Гб (в зависимости от размера диска) скорее всего подойдёт./var
/tmp
/tmp
очищается при каждой загрузке системы. Поскольку запись в этот каталог осуществляется очень часто, а требования к надёжности очень низкие, то есть большой смысл выделить /tmp
в отдельный раздел. В противном случае он окажется частью раздела «/
», требования к которому по записи и надёжности прямо противоположные (см. ниже). Если на диске достаточно места, то разумно отвести для /tmp
раздел примерно такого же размера, что и swap
./
/usr
, /var
и /home
вынесены на отдельные разделы, то потребность в объёме корневого раздела небольшая, обычно достаточно 300 Мб. Требования: корневой раздел должен быть доступен в процессе загрузки, в процессе работы доступ на запись в этот раздел требуется нечасто, но весьма важна надёжность.