Что такое расширенный раздел и как его создать?
Хотел установить Ubuntu, но из-за того что на винде есть скрытый диск с BitLocker и прочим, я не могу создать второй том для /home. Почитал в интернете про это, услышал про расширенный раздел. Как я понял, это вроде бы тот же обычный раздел, только в нем уже по папкам или как распределены, например, ОС и раздел /home, или я ошибаюсь? И как его создать кстати?
- Вопрос задан более трёх лет назад
- 2637 просмотров
Комментировать
Решения вопроса 1
Saboteur @saboteur_kiev
software engineer
Почитать про MBR и GPT.
В MBR на таблицу разделов выделено всего лишь 4 позиции (16*4 байт.)
Физически нельзя разместить больше разделов в MBR записи.
Но можно сделать один раздел extended, внутри которого можно создать свою таблицу разделов, и соответственно создавать дополнительные подразделы в расширенном разделе, и форматировать уже их. Так можно обойти ограничение в 4 раздела на диске.
Extended может быть только один. После extended нельзя создавать primary.
В GPT таблица разделов хранится иначе. там такого ограничения нет, и расширенный раздел не нужен.
Расширенные разделы (диски с MBR).
Таблица разделов в MBR состоит из 4-х сторок, каждая строка может определить раздел на диске. Если требуется использовать большее число разделов используют создание расширенных разделов. Расширенный раздел ( в строке код типа раздела 05 или 0F см. рис. 1) служит для организации произвольного количества логических дисков. Первый сектор расширенного раздела аналогичен MBR (но загрузчик отсутствует) и содержит расширенную таблицу разделов EPR (Extended Partition Record) той же структуры, но первая строка таблицы задает, вторичный (secondary) раздел, отведенный под очередной логический диск; в нем указывается код раздела с файловой системой. В этом описателе, как обычно, задаются координаты начала и конца раздела с логическим диском (трехмерные и линейные). Если этот логический диск занимает не весь объем расширенного раздела, то второй описатель тоже имеет код 05 или 0F и указывает на положение сектора со следующей расширенной таблицей разделов.
Структура таблицы разделов МВ R
Строка таблицы разделов
Остальные описатели не используются (их коды типа раздела нулевые – нет раздела ). Если свободного места в разделе уже нет, то и второй описатель не используется. В следующей расширенной таблице разделов действуют те же правила. Эта цепочка заканчивается на расширенной таблице, у которой во втором описателе стоит нулевой код раздела. Второй описатель в расширенных таблицах может указывать только на положение следующей расширенной таблицы. Часть пространства расширенного раздела может оставаться не распределенной, в дальнейшем она может быть использована под логические диски. Цепочка расширенных таблиц разделов должна быть непрерывной, неветвящейся (используются только два описателя, и только второй может указывать на следующую таблицу) и не зацикленной (второй описатель не должен ссылаться на ту же таблицу или предыдущую в цепочке). Несоблюдение первых двух условий ведет к потере логических дисков (их система не найдет). Несоблюдение последнего условия может привести к зависанию ОС при загрузке (она зациклится на бесконечном определении повторяющихся логических дисков). Код (05 или 0F) расширенного раздела не несет никакой информации о файловой системе, и данный тип раздела используется как указатель на расширенную таблицу. По расположению на физическом диске расширенные разделы являются вложенными друг в друга: все они располагаются в области, описанной в главной таблице разделов как расширенный раздел. В главной таблице может быть описан лишь один расширенный раздел. Если расширенные разделы имеют код 0Fh, то линейные адреса всех элементов таблиц будут указываться относительно начала физического диска (так поступает утилит а FDISK, и это более естественно, поскольку при этом описатель LBA является эквивалентом описателя CHS). Каждый логический диск из расширенного раздела имеет ту же структуру, что и первичный раздел. Он также начинается с загрузочного сектора (только загрузчик никогда не исполняется), в котором имеется описание структуры логического диска. Операционная система назначает логическим дискам расширенных разделов имена (буквы), остающиеся после дисков первичных разделов. Так, если имеется один жесткий диск и у него есть первичный и вторичный разделы, причем последний разбит на два логических диска, то мы увидим следующее: С: — первичный раздел; D: — первый логический диск расширенного раздела: Е: — второй логический диск расширенного раздела. Теперь если добавить второй жесткий диск (всего с одним первичным разделом), то картина изменится: С: — первичный раздел первого диска (остался на месте); D: — первичный раздел второго диска (новый); Е: — первый логический диск расширенного раздела первого диска (тот, что был D:); F: — второй логический диск расширенного раздела первого диска (тот, что был Е:). Если у нового диска был бы расширенный раздел со своими логическими дисками, то они бы заняли следующие буквы (G:, Н:, . ). О механизме присвоения логических имен следует помнить, устанавливая программы на компьютер, к которому эпизодически подключают дополнительные винчестеры. Незыблемое имя (С:) будет только у первичного раздела винчестера, подключенного ведущим к первому контроллеру HDD .
Основная информация о расширенном разделе [MiniTool Wiki]
Жесткий диск MBR содержит основной раздел , расширенный раздел и логический раздел .
Базовые концепты
Так называемый расширенный раздел, строго говоря, не является настоящим разделом. Это просто указатель, который используется для указания следующего раздела. Следовательно, главному загрузочному сектору нужен не только первичный раздел, но и место для хранения данных расширенного раздела. И данные расширенного раздела могут помочь найти начальную позицию второго раздела. Следовательно, независимо от того, сколько логических дисков установлено на жестком диске, главный загрузочный сектор может найти каждый из них в соответствии с параметрами расширенного раздела.
В Windows активированный основной раздел является загрузочным. Это первый раздел на жестком диске. И этот раздел в большинстве случаев называется диском C. В Linux система может храниться как в основном, так и в логическом разделе. Grub может помочь загрузить компьютер, поскольку он совместим с Windows.
После разделения основного раздела пользователи могут разделить оставшееся пространство на расширенный раздел. Конечно, пользователи могут разделить оставшееся пространство на расширенный раздел. Однако некоторое свободное пространство будет потрачено зря.
Однако расширенный раздел нельзя использовать напрямую.
Жесткий диск MBR поддерживает до 4 основных разделов. Если пользователям нужно больше разделов, им нужна расширенная запись раздела ( EBR ), который хранится в расширенном разделе. Таким образом, пользователи могут разделить расширенный раздел на несколько логических дисков. Но с программное обеспечение раздела диска как и MiniTool Partition Wizard, вам не нужно создавать расширенный раздел, прежде чем вы сможете создать новый логический диск.
Различие разделов
Поскольку основная загрузочная запись может содержать до 4 записей первичного раздела, пользователи могут обратиться к команде раздела FDISK для создания расширенного раздела с несколькими логическими дисками. И информация обо всех логических разделах хранится в расширенном разделе, в то время как информация об основном и расширенном разделах хранится в MBR жесткого диска. Другими словами, основная загрузочная запись содержит информацию только об основном и расширенном разделах, независимо от того, сколько разделов создано на жестком диске.
Структура жёсткого диска
Любой жёсткий диск можно представить как огромный «чистый лист», на который можно записывать данные и откуда потом их можно считать. Чтобы ориентироваться на диске, всё его пространство разбивают на небольшие «клеточки» — сектора. Сектор — это минимальная единица хранения данных на диске, обычно его размер составляет 512 байт. Все сектора на диске нумеруются: каждый из n секторов получает номер от 0 до n–1. Благодаря этому любая информация, записанная на диск, получает точный адрес — номера соответствующих секторов. Так что диск ещё можно представить как очень длинную строчку (ленточку) из секторов. Можете посчитать, сколько секторов на вашем диске размером в N гигабайт.
Разделы
Представлять жёсткий диск как единый «лист» не всегда бывает удобно: иногда полезно «разрезать» его на несколько независимых листов, на каждом из которых можно писать и стирать что угодно, не опасаясь повредить написанное на других листах. Логичнее всего записывать раздельно данные большей и меньшей важности или просто относящиеся к разным вещам.
Конечно, над жёстким диском следует производить не физическое, а логическое разрезание, для этого вводится понятие раздел (partition). Вся последовательность (очень длинная ленточка) секторов разрезается на несколько частей, каждая часть становится отдельным разделом. Фактически, нам не придётся ничего разрезать (да и вряд ли бы это удалось), достаточно объявить, после каких секторов на диске находятся границы разделов.
Таблица разделов
Технически разбиение диска на разделы организовано следующим образом: заранее определённая часть диска отводится под таблицу разделов, в которой и написано, как разбит диск. Стандартная таблица разделов для диска IBM-совместимого компьютера — HDPT (Hard Disk Partition Table) — располагается в конце самого первого сектора диска, после предзагрузчика (Master Boot Record, MBR) и состоит из четырёх записей вида « тип начало конец », по одной на каждый раздел. Начало и конец — это номера тех секторов диска, где начинается и заканчивается раздел. С помощью такой таблицы диск можно поделить на четыре или меньше разделов: если раздела нет, тип устанавливается в 0 .
Однако четырёх разделов редко когда бывает достаточно. Куда же помещать дополнительные поля таблицы разбиения? Создатели IBM PC предложили универсальный способ: один из четырёх основных разделов объявляется расширенным (extended partition); он, как правило, является последним и занимает всё оставшееся пространство диска.
Расширенный раздел можно разбить на подразделы тем же способом, что и весь диск: в самом начале — на этот раз не диска, а самого раздела — заводится таблица разделов, с записями для четырёх разделов, которые снова можно использовать, причём один из подразделов может быть, опять-таки, расширенным, со своими подразделами и т. д.
Разделы, упомянутые в таблице разделов диска, принято называть основными (primary partition), а все подразделы расширенных разделов — дополнительными (secondary partition). Так что основных разделов может быть не более четырёх, а дополнительных — сколько угодно.
Чтобы не усложнять эту схему, при разметке диска соблюдают два правила: во-первых, расширенных разделов в таблице разбиения диска может быть не более одного, а во-вторых, таблица разбиения расширенного раздела может содержать либо одну запись — описание дополнительного раздела, либо две — описание дополнительного раздела и описание вложенного расширенного раздела.
Тип раздела
В таблице разделов для каждого раздела указывается тип, который определяет файловую систему, которая будет содержаться в этом разделе. Каждая операционная система распознаёт определённые типы и не распознаёт другие, и, соответственно, откажется работать с разделом неизвестного типа.
Следует всегда следить за тем, чтобы тип раздела, установленный в таблице разделов, правильно указывал тип файловой системы, фактически содержащейся внутри раздела. На сведения, указанные в таблице разделов, может полагаться не только ядро операционной системы, но и любые утилиты, чьё поведение в случае неверно указанного типа может быть непредсказуемым и повредить данные на диске.
Подробнее о файловых системах см. раздел Типы файловых систем.
Логические тома (LVM)
Работая с разделами, нужно учитывать, что производимые над ними действия связаны непосредственно с разметкой жёсткого диска. С одной стороны, разбиение на разделы — это наиболее традиционный для PC способ логической организации дискового пространства. Однако если в процессе работы появится потребность изменить логику разбиения диска или размеры областей (т. е. когда возникает задача масштабирования), работа с разделами не очень эффективна.
Например, при необходимости создать новый раздел или увеличить размер существующего, можно столкнуться с рядом трудностей, связанных с ограничением количества дополнительных разделов или перераспределением данных. Избежать их очень просто: нужно лишь отказаться от «привязки» данных к определённой области жёсткого диска. В Linux эта возможность реализуется при помощи менеджера логических томов (LVM — Logical Volume Manager). LVM организует дополнительный уровень абстракции между разделами с одной стороны и хранящимися на них данными с другой, выстраивая собственную иерархическую структуру.
Дисковые разделы (в терминологии LVM — физические тома) объединяются в группу томов, внутри которой создаются логические тома. Таким образом, группа томов выстраивает соответствие между физическим и логическим пространством диска.
Технологически это организуется следующим образом. Физические тома разбиваются на отдельные блоки — физические экстенты, которые объединяются в группу томов. Логические тома разбиваются на блоки такого же размера — логические экстенты. В разных группах томов размер экстента может быть различным.
Отношения между логическими и физическими томами представлены в виде отображения логических экстентов в физические. Возможны два способа отображения — линейное и расслоённое (striped). В первом случае логические экстенты располагаются последовательно соответственно физическим, во втором поочерёдно распределяются между несколькими физическими томами.
В свою очередь, между логическим томом и группой томов возникают отношения, аналогичные таковым между разделом и жёстким диском, с отличием в уровне абстракции и, соответственно, колоссальной разнице в гибкости манипуляции. Поскольку раздел — конкретная область физического диска между двумя определёнными секторами, а том — логическая категория, принимаемая для удобства использования дискового пространства, производить манипуляции со вторым значительно проще. Можно свободно перераспределять логические тома внутри группы, изменять их размер, увеличивать размер группы томов за счёт внесения в неё нового раздела (только при линейном отображении) и многое другое.
Дисковые массивы (RAID)
Иногда обычной производительности жёсткого диска может не хватать. В случаях, когда во главу угла ставится скорость работы с данными (скорость записи и чтения) или надёжность их хранения, используется технология RAID (Redundant array of independent disks — избыточный массив независимых дисков). Технология RAID позволяет объединять несколько физических дисковых устройств (жёстких дисков или разделов на них) в дисковый массив. Диски, входящие в массив, управляются централизованно и представлены в системе как одно логическое устройство, подходящее для организации на нём единой файловой системы.
Существует два способа реализации RAID: аппаратный и программный. Аппаратный дисковый массив состоит из нескольких жёстких дисков, управляемых при помощи специальной платы контроллера RAID-массива. Программный RAID в Linux-системах (Linux Software RAID) реализуется при помощи специального драйвера (Multiple Device driver — драйвер MD-устройства). В программный массив организуются дисковые разделы, которые могут занимать как весь диск, так и его часть, а управление осуществляется посредством специальных утилит ( mdadm ).
Программные RAID-массивы, как правило, менее надежды, чем аппаратные, но обеспечивают более высокую скорость работы с данными (производительность процессора и системной шины обычно намного выше, чем у любого дискового контроллера). Также их преимущество по сравнению с аппаратными массивами: независимость от форматов данных на диске и как следствие — большая совместимость с различными типами и размерами дисков и их разделов. Использование программного RAID также позволяет сэкономить на покупке дополнительного оборудования. Однако обратной стороной медали станет увеличение нагрузки на процессор и системную шину, это следует иметь в виду, принимая решение об использовании программного RAID.
Уровни RAID
Существует несколько разновидностей RAID-массивов, так называемых уровней. В Linux поддерживаются следующие уровни программных RAID-массивов.
RAID0
Для создания массива этого уровня понадобится как минимум два диска одинакового размера. Запись осуществляется по принципу чередования: данные делятся на чанки (chunk) — порции данных одинакового размера, и поочерёдно распределяются по всем дискам, входящим в массив. Поскольку запись ведётся на все диски, при отказе одного из них будут утрачены все хранившиеся на массиве данные. Это цена выбора в пользу увеличения скорости работы с данными: запись и чтение на разных дисках происходит параллельно и, соответственно, быстрее.
RAID1
Массивы этого уровня построены по принципу зеркалирования, при котором все данные, записанные на одном диске, дублируются на другом. Для создания такого массива потребуется два или более дисков одинакового размера. Избыточность обеспечивает отказоустойчивость массива: в случае выхода из строя одного из дисков, данные на другом остаются неповреждёнными. Расплата за надёжность — фактическое сокращение дискового пространства вдвое. Скорость чтения и записи остаются на уровне обычного жёсткого диска.
RAID4
В массивах RAID4 реализован принцип чётности, объединяющий технологии чередования и зеркалирования. Один из трёх (или из большего числа) дисков задействуется для хранения информации о чётности в виде суперблоков с контрольными суммами блоков данных, последовательно распределённых на остальных дисках (как в RAID0). Достоинства этого уровня — отказоустойчивость уровня RAID1 при меньшей избыточности (из скольких бы дисков не состоял массив, под контрольную информацию задействуется лишь один из них). При отказе одного из дисков утраченные данные можно будет восстановить из контрольных суперблоков, причём, если в составе массива есть резервный диск, реконструкция данных начнётся автоматически. Очевидным недостатком, однако, является снижение скорости записи, поскольку информацию о чётности приходится высчитывать при каждой новой записи на диск.
RAID5
Этот уровень аналогичен RAID4, за тем исключением, что суперблоки с информацией о чётности располагаются не на отдельном диске, а равномерно распределяются по всем дискам массива вместе с блоками данных. Как результат — повышение скорости работы с данными и высокая отказоустойчивость.
Массивы всех уровней помимо блоков данных и суперблоков с контрольными суммами могут также содержать специальный суперблок (persistent superblock), который располагается в начале всех дисков массива и содержит информацию о конфигурации MD-устройства. Наличие отдельного суперблока позволяет ядру операционной системы получать информацию о конфигурации устройства RAID прямо с дисков, а не из конфигурационного файла, что может быть полезным, если файл по каким-то причинам перестанет быть доступным. Кроме того, наличие отдельного суперблока — необходимое условие автоопределения RAID-устройств при загрузке системы.
Более подробная информация о RAID
Более подробную информацию можно найти в документации и статьях, посвящённых RAID:
- mdadm(8)
- http://opennet.ru/docs/HOWTO/Software-RAID-HOWTO.html
- http://freesource.info/wiki/HCL/XranenieDannyx/SoftwareRAID
- http://ferra.ru/online/storage/26107/
- http://citforum.ru/operating_systems/linux/raid_linux/
- http://www.nber.org/sys-admin/linux-nas-raid.html
- http://pythian.com/blogs/411/aligning-asm-disks-on-linux
- http://linux-ata.org/faq-sata-raid.html