Создание раздела диска в Linux
В любой операционной системе диск необходимо разбить на разделы, прежде чем его можно будет использовать. Раздел диска — часть долговременной памяти накопителя данных, логически выделенная для удобства работы, и состоящая из смежных блоков. Информация о разделах хранится в таблице разделов. Эта таблица включает информацию о первом и последнем секторах раздела и его типе, а также дополнительные сведения о каждом разделе.
Обычно каждый раздел рассматривается операционной системой как отдельный «диск», даже если все они находятся на одном физическом носителе. В системах Windows им присваиваются такие буквы, как C:
(исторически основной диск) D:
и так далее. В Linux каждый раздел назначается каталогу /dev
, например /dev/sda1
или /dev/sda2
.
В этом уроке вы узнаете, как создавать, удалять, восстанавливать и изменять размер разделов с помощью трех наиболее распространенных утилит (fdisk
, gdisk
и parted
). Как создавать и настраивать раздел подкачки или файл подкачки, которые используются как виртуальная память.
Понимание MBR и GPT
Существует два основных способа хранения информации о разделах на жестких дисках. Первый — MBR ( основная загрузочная запись ), а второй — GPT ( таблица разделов GUID ).
MBR
Это пережиток первых дней MS-DOS (точнее, PC-DOS 2.0 1983 года), который на протяжении десятилетий был стандартной схемой разбиения на ПК. Таблица разделов хранится в первом секторе диска, называемом загрузочным сектором, вместе с загрузчиком, которым в системах Linux обычно является загрузчик GRUB . Но MBR имеет ряд ограничений, которые препятствуют ее использованию в современных системах: невозможность адресации дисков размером более 2 ТБ и возможность создать только 4 первичных раздела на диске.
GUID
Система разделов, которая устраняет многие ограничения MBR. Практических ограничений на размер диска нет, а максимальное количество разделов ограничено только самой операционной системой. Чаще встречается на более современных машинах, использующих UEFI вместо старого BIOS.
При выполнении задач системного администрирования весьма вероятно, что вам будут встречаться обе схемы хранения данных. Поэтому важно знать, как использовать инструменты для создания, удаления или изменения разделов применительно к каждой из них.
Управление разделами MBR с помощью FDISK
Стандартной утилитой для управления разделами MBR в Linux является fdisk
.
Это интерактивная утилита с меню. Чтобы использовать его, введите, fdisk
, а затем имя устройства, соответствующее диску, который вы хотите отредактировать. Например, такая команда
отредактирует таблицу разделов первого подключенного по SATA устройства (sda
) в системе. Имейте в виду, что вам нужно указать устройство, соответствующее физическому диску, а не один из его разделов (например, /dev/sda1
).
Все операции с дисками в этом уроке необходимо выполнять от имени пользователя
root
(системного администратора) или с привилегиями root, используяsudo
.
При вызове fdisk
покажет приветствие, затем предупреждение и будет ждать ваших команд.
Предупреждение важно. Вы можете создавать, редактировать или удалять разделы по своему усмотрению и ничего не будет записано на диск пока вы не используете команду записи w
(write). Таким образом, вы можете «практиковаться» без риска потери данных. Чтобы выйти из fdisk
без сохранения изменений, используйте команду q
(quit).
При этом не следует практиковаться на важном диске, так как всегда есть риск. Вместо этого используйте запасной внешний диск или флэш-накопитель USB.
Печать текущей таблицы разделов
Команда p
(print) используется для печати текущей таблицы разделов. Вывод примерно такой:
Вот значение каждого столбца:
Device
- устройство, назначенное разделу.
Boot
- показывает, является ли раздел «загрузочным» или нет.
Start
- сектор, с которого начинается раздел.
End
- сектор, где заканчивается раздел.
Sectors
- общее количество секторов в разделе. Умножьте его на размер сектора, чтобы получить размер раздела в байтах.
Size
- размер раздела в «удобочитаемом» формате. В приведенном выше примере значения указаны в гигабайтах.
Id
- числовое значение, представляющее тип раздела.
Type
- описание типа раздела.
Для получения аналогичной информации можно выполнить в консоли команду fdisk
с опцией -l:
Первичные и расширенные разделы
На MBR-диске может быть 2 основных типа разделов: основной первичный (primary) и расширенный (extended). Если вы хотите сделать диск «загрузочным», первый раздел должен быть основным. И помните, что в таблице MBR может быть только 4 основных раздела на диске.
Один из способов обойти это ограничение — создать расширенный раздел, который действует как контейнер для логических разделов. У вас может быть, например, основной раздел, дополнительный раздел, занимающий оставшуюся часть дискового пространства, и пять логических разделов внутри него.
В такой операционной системе, как Linux, первичный и расширенный разделы обрабатываются одинаково, поэтому нет никаких «преимуществ» использования одного над другим.
Создание раздела
Чтобы создать раздел, используйте команду n
(new). По умолчанию разделы будут создаваться в начале нераспределенного пространства на диске. Вам будет предложено указать тип раздела (основной или расширенный), первый сектор и последний сектор.
Обычно для первого сектора используют значение по умолчанию, предложенное fdisk
, если только вам не нужно, чтобы раздел начинался с определенного сектора. Вместо указания последнего сектора можно указать размер, за которым следуют буквы K
, M
, G
, T
или P
(Kilo, Mega, Giga, Tera или Peta). Например, если нужно создать раздел размером 1 ГБ, то вместо последнего сектора укажите +1G . Ниже пример создания основного раздела:
Проверка нераспределенного пространства диска
Если вы не знаете сколько свободного места осталось на диске, то можете использовать команду F
(free), чтобы показать нераспределенное пространство, например:
Удаление разделов
Чтобы удалить раздел, используйте команду d
(delete). fdisk
запросит номер раздела, который вы хотите удалить, если количество разделов больше одного. Если на диске всего один раздел, то он будет удален сразу.
Имейте в виду, что в случае удаления расширенного раздела, все логические разделы внутри него также будут удалены.
Учитывайте разрывы нераспределенного пространства
Имейте в виду, что при создании нового раздела с помощью fdisk
максимальный размер будет ограничен максимальным объемом непрерывного свободного пространства на диске. Например, у вас на диске есть следующие разделы:
Затем вы удаляете раздел 2 (/dev/sdd2) и проверяете наличие свободного места:
Суммарно у нас доступно 881 МБ нераспределенного пространства. Но посмотрите, что происходит, когда мы пытаемся создать раздел размером 700 МБ:
"Value out of range" говорит о том, что допустимое значение размера раздела было превышено. Это происходит потому, что самым большим непрерывным нераспределенным пространством на диске является блок размером 512 МБ, который принадлежал разделу 2, а следующее нераспределенное пространство находится после раздела 3 (/dev/sdd3
). Fdisk не может объединить нераспределенные участки. разделенные разделами.
Изменение типа раздела
Иногда вам может понадобиться изменить тип раздела, особенно при работе с дисками, которые будут использоваться в других операционных системах и платформах. Сделать это можно с помощью команды t
(type), за которой следует номер раздела, который вы хотите изменить.
Тип раздела должен быть указан соответствующим шестнадцатеричным кодом. Посмотреть список всех допустимых кодов можно используя команду l
(list).
Не путайте тип раздела с используемой на нем файловой системой. В изначальном замысле между ними существовала непосредственная зависимость, но сегодня это не совсем так. Например, раздел Linux может содержать любую собственную файловую систему Linux, такую как ext4 или ReiserFS .
Разделы Linux имеют тип
83
(Linux). Разделы подкачки бывают типа82
(Linux Swap).
Управление разделами GUID с помощью GDISK
Утилита gdisk
является эквивалентом fdisk
при работе с дисками с разделением GPT.
Интерфейс смоделирован аналогично fdisk
, с интерактивной командной строкой и теми же (или очень похожими) командами.
Печать текущей таблицы разделов
Команда p
используется для печати текущей таблицы разделов. Результат примерно такой:
И сразу же вы можете заметить некоторые особенности:
Каждый диск имеет уникальный идентификатор диска (GUID). Это 128-битное шестнадцатеричное число, назначаемое случайным образом при создании таблицы разделов. Поскольку существует 3.4 × 1038 возможных значений этого числа, вероятность того, что 2 случайных диска имеют один и тот же GUID, довольно мала. GUID можно использовать для определения того, какие файловые системы монтировать во время загрузки и где. Таким образом устраняется необходимость использования для этого пути устройства (например
/dev/sdb
).См . фразу
Partition table holds up to 128 entries
. Правильно, на GPT-диске может быть до 128 разделов. Из-за этого нет необходимости в первичных и расширенных разделах.Свободное место указано в последней строке, поэтому нет необходимости в эквиваленте команды
F
из fdisk.
Создание раздела
Для создания раздела используйте команду n
, как и в fdisk
. Основное отличие заключается в том, что во время создания вы также можете указать тип раздела, помимо номера раздела, первого и последнего сектора (или размера). Разделы GPT поддерживают гораздо больше типов, чем MBR. Вы можете проверить список всех поддерживаемых типов с помощью команды l
.
Удаление раздела
Чтобы удалить раздел, введите команду d
и номер раздела. В отличие fdisk
первый раздел не будет удален автоматически, если он единственный на диске.
На GPT-дисках разделы можно легко переупорядочить или “отсортировать”, чтобы избежать пробелов в последовательной нумерации. Для этого просто используйте команду s
. Например, представьте диск со следующей таблицей разделов:
Если вы удалите второй раздел, таблица станет:
Если вы используете команду s
, она станет:
Обратите внимание, что третий раздел стал вторым.
Забудьте про разрывы нераспределенного пространства
В отличие от MBR-дисков, при создании раздела на GPT-дисках вы можете задавать размер, используя все доступное нераспределенное пространство, независимо от того, где оно находится на диске.
Варианты восстановления
На GPT-дисках хранятся резервные копии заголовка GPT и таблицы разделов, что упрощает восстановление дисков в случае повреждения этих данных. В gdisk
для доступа к функциям восстановления диска используйте команду r
(recovery).
Вы можете восстановить поврежденный главный заголовок GPT или таблицу разделов с помощью команд b
и c
, соответственно. Или используйте главный заголовок и таблицу разделов для восстановления резервной копии с помощью команд d
и e
.
Вы также можете преобразовать MBR в GPT с помощью f
и наоборот g
.
Введите ?
в режиме восстановления, чтобы получить список всех доступных команд восстановления и описания того, что они делают.
Last updated