Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
5.5 ustanovka i konfigurirovanie Linux.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
100.35 Кб
Скачать

Как разбивать?

Теоретически обязательно требуется два раздела: корневой (/) и раздел подкачки (linux swap). Однако практически их может потребоваться больше - в зависимости от дистрибутива, задач, размера диска, используемых файловых систем. Часто целесообразно выделение небольшого (10-20 Мбайт) раздела под каталог /boot, в котором будут размещены ядро системы и необходимые для его загрузки файлы. Этим достигается надежность системы и повышение ее производительности. Первое - за счет изоляции критически важных для загрузки (и редко изменяемых) компонентов и гарантии размещения ядра системы в пределах первых 1024 цилиндров (ядро иногда не может быть загружено с более дальних областей диска). Производительность возрастает, если сразу за таким разделом (т. е. максимально близко к началу диска) разместить раздел подкачки. Рекомендованный размер последнего для современных ядер равен удвоенному размеру оперативной памяти (но не более 2 Гбайт), минимально возможный - 128 Мбайт.

Ядро Linux не всегда может быть загружено из разделов с журналируемыми файловыми системами, например, ReiserFS. И если предполагается использование последней для корневого раздела, то необходимо выделение раздела под каталог /boot.

Для настольной машины практически обязателен раздел под каталог /home, в котором будут располагаться пользовательские данные - человеческий фактор чаще является причиной краха системы, чем все аппаратные сбои и программные ошибки, вместе взятые. Корневой раздел также требует места - именно в нем окажутся базовые компоненты системы и пользовательские программы. А дискового пространства под это нужно немало - в SB-дистрибутивах возникает необходимость большого свободного пространства для временного хранения архивов исходных кодов, результатов их распаковки и промежуточных продуктов компиляции. Так, для полного развертывания некоторых из них рекомендуется раздел в 8 Гбайт. Это, конечно, крайность, но задействовать под корневой раздел 4-5 Гбайт окажется не лишним в любом случае. Или - выделить из него в самостоятельные разделы каталоги /usr (для штатных пользовательских программ дистрибутива), /usr/local (для программ, самостоятельно собираемых из исходных кодов), /usr/X11 (для программ графического режима). В некоторых случаях создаются разделы для каталогов /tmp и /var, правда, это касается в основном серверов - на настольной машине их выделение нецелесообразно.

Какие создавать разделы, первичные или логические, вопрос спорный. Установщики многих дистрибутивов по умолчанию отдают предпочтение разделам логическим. Мое же глубокое убеждение - если четырех первичных разделов хватает (под корневой каталог, каталоги /boot, /swap и /home, к примеру), то ими лучше и ограничиться. К логическим разделам следует обращаться, только если их требуется больше (например, если уже установлена Windows и хочется оставить место под FreeBSD). И в любом случае корневой раздел должен быть первичным.

Все высказанные соображения относились к ситуации с единственным физическим диском. Если их в машине больше, то возможны варианты. Первый - вынесение на второй диск некоторых разделов, например, под каталог /home или его часть, предназначенную для резервного хранения данных. Кроме того, в этом случае рекомендуется разнесение на разные диски области подкачки путем создания на каждом самостоятельного swap-раздела половинного (но не менее 128 Мбайт каждый) размера. Это способствует повышению производительности за счет распараллеливания обращений к виртуальной памяти. Другой путь - создание программного RAID-массива, логического тома, объединяющего в себе разделы, расположенные на разных дисках. Однако использование их на настольных машинах (не серверах) представляется нецелесообразным.

В заключение напомню, что на стадии создания дисковых разделов мы отнюдь не предопределяем их назначение - раздел под каталог /boot станет таковым только после его монтирования в файловую систему.

Создание и монтирование файловых систем

Создание файловых систем на дисковых разделах (или, в терминах DOS/Windows, форматирование последних) и их монтирование (т. е. обеспечение доступа к ним со стороны ОС и пользователя) - второй этап подготовки диска к инсталляции Linux. Сами по себе эти действия не сложны, однако осознанное их выполнение требует некоторой подготовки.

Устройство файловой системы

Все файлы в Unix физически состоят из двух частей, реально локализованных в различных блоках дискового накопителя, но обязательно находящихся в одном дисковом разделе, первичном или логическом. Первая часть файла - метаданные, которые содержат файловый дескриптор (некое уникальное число), сведения о его атрибутах (принадлежности, правах доступа, времени модификации и т.д.), а также информацию о том, в каких блоках дискового раздела физически размещено содержимое файла. Метаданные каждого файла записаны в специальной области диска, называемой суперблоком, где образуют описатели inodes. Каждому существующему файлу соответствует свой inode, и именно он однозначно идентифицируется файловым дескриптором. Список inodes описателей, соответствующих существующим файлам и свободным блокам дискового раздела определяет границы файловой системы.

Суть процесса создания файловой системы на дисковом разделе состоит в создании на нем суперблока, списка inode и отведении дискового пространства под блоки данных - устройством этих дисковых областей и определяются различия между файловыми системами различных типов. В результате на новом разделе образуется единственный файл - каталог корневого (для данной файловой системы) раздела, впрочем, в некоторых случаях создается еще и каталог /lost+found, предназначенный для хранения нарушенных файлов.

Возникает вопрос, почему такой, казалось бы неотъемлемый, атрибут файла, как его имя, не обнаруживается ни в его метаданных, ни, тем более, среди его данных? В Unix имя являет собой атрибут не файла, но файловой системы. И для хранения имен файлов предназначены файлы особого типа - каталоги, которые представляют собой просто списки файловых дескрипторов идентификаторов и соответствующих им имен файлов. Поэтому идущая от MacOS и активно используемая в Windows метафора каталога как папки с документами в Unix только затемняет суть - здесь это никакое не "вместилище документов", а скорее каталожный ящик в библиотеке.

Несмотря на столь простое устройство, роль каталогов в файловой системе Unix трудно переоценить. Имена файлов, через которые они включаются в файловую систему фигурируют только в составе каталога, к которому файл приписан. Удаление имени файла (или подкаталога) из списка, представляющего собой данные его родительского каталога равносильно тому, что метаданные файла становится недоступными, а приписанные к его inode блоки данных помечаются как свободные. Чтобы сделать файловую систему доступной она со всем ее содержимым (суперблоком, списком inode, блоками данных) должна быть включена в состав какого-либо из существующих каталогов, называемого точкой монтирования. Именно это и составляет суть процесса монтирования. Результат же для монтируемой файловой системы в том, что ее корневой каталог (до сих пор безымянный) получает имя каталога - точки монтирования (mount point), содержимое которого отныне составляет список имен ее файлов и подкаталогов. Обратный процесс - размонтирование, отсоединение от точки монтирования дерева смонтированной файловой системы. Кроме того, в inode ее корневого каталога устанавливается бит чистого размонтирования (clean bit).