Тип метки диска dos линукс
Оригинал: fdisk – Easy way to manage disk partitions in Linux
Автор: Magesh Maruthamuthu
Дата публикации: 28 января 2019 года
Перевод: А. Кривошей
Дата перевода: ноябрь 2019 г.
Жесткие диски можно разделить на один или несколько логических дисков, называемых разделами. Это разделение описано в таблице разделов (MBR или GPT) в секторе 0 диска.
Linux нужен как минимум один раздел, а именно для его корневой файловой системы, и мы не можем установить Linux на диск без разделов.
После создания раздел должен быть отформатирован в соответствующей файловой системе, прежде чем в него можно будет записывать файлы. Нам понадобится какая-нибудь утилита для выполнения этого действия в Linux.
Для этого в Linux доступно множество утилит. Мы писали о Parted Command в прошлом, и сегодня мы будем обсуждать fdisk. Команда fdisk является одним из лучших инструментов для управления разделами диска в Linux. Она поддерживает диски максимум 2 ТБ, и все предпочитают использовать fdisk.
Эта утилита используется большим количеством администраторов Linux, потому что мы практически не используем более 2 ТБ сегодня из-за LVM и SAN. Она используется в большей части инфраструктуры Linux по всему миру. Тем не менее, если вы хотите создать большие разделы, например, более 2 ТБ, вам нужно использовать команду Parted или команду cfdisk.
Создание разделов диска и файловых систем - одна из рутинных задач администратора Linux. Если вы работаете в большой компании, вам придется выполнять эту задачу несколько раз в день.
Как отформатировать раздел или создать файловую систему на разделе
Файловая система контролирует, как хранятся и извлекаются данные через таблицы inode.
Без файловой системы система не может найти, где хранится информация на разделе. Файловая система может быть создана тремя способами. Здесь я собираюсь создать файловую систему в разделе /dev/sdc1.
Когда вы создаете файловую систему на этом разделе, это даст вам следующие важные вещи.
9. Применение изменений
Все изменения, которые вы сейчас вносили, ещё не записаны на диск. Для их записи надо выполнить команду w:
После записи изменений программа завершится.
Как ядро Linux работает с жесткими дисками?
Как человек, мы можем легко понять разные вещи, но компьютер нуждается в правильном преобразовании имен, чтобы понять все и вся.
В Linux устройства расположены в разделе /dev, и ядро понимает жесткий диск в следующем формате.
/dev/hdX[a-z]: IDE-диск с именем hdX в Linux
/dev/sdX[a-z]: SCSI-диск с именем sdX в Linux
/dev/xdX[a-z]: XT-диск с именем xdX в Linux
/dev/vdX[a-z]: виртуальный жесткий диск с именем vdX в Linux
/dev/fdN: гибкий диск с именем fdN в Linux
/dev/scdN or /dev/srN: CD-ROM с именем /dev/scdN или /dev/srN в Linux
1. Поиск диска
При использовании cfdisk вам всё же придется воспользоваться fdisk для просмотра списка всех доступных дисков в системе. В cfdisk нет возможности выбора диска, поэтому вам надо передать имя устройства диска в системе в параметрах запуска утилиты. Чтобы узнать это имя выполните такую команду:
Утилита выведет все диски и разделы на них, а также их имя и размер. В данном примере будет использоваться не размеченный диск /dev/sdb размером 500 Гб.
Как создать раздел на диске с помощью команды fdisk
Если вы хотите создать новый раздел, выполните следующие действия. В моем случае я собираюсь создать 4 раздела (3 основных и 1 расширенный) на диске /dev/sdc.
Поскольку он принимает значение из таблицы разделов, нажмите Enter для первого сектора. Введите размер, который вы хотите установить для раздела (мы можем добавить размер раздела, используя КБ, МБ, ГБ и ТБ) для последнего сектора.
Например, если вы хотите добавить раздел размером 1 ГБ, последним значением сектора должно быть + 1G. Как только вы создали 3 раздела, fdisk автоматически изменит тип раздела на расширенный по умолчанию. Если вы все еще хотите создать четвертый первичный раздел, тогда нажмите p вместо значения по умолчанию e.
Выводы
В этой статье мы рассмотрели как пользоваться fdisk в Linux, как создавать разделы с помощью этой утилиты, а также как выбрать тип диска. Несмотря на все возможности утилиты намного удобнее пользоваться gparted или же cfdisk если надо разметить диск в терминале. Последнюю мы разберем в одной из следующих статей.
Статья распространяется под лицензией Creative Commons ShareAlike 4.0 при копировании материала ссылка на источник обязательна.
3. Таблица разделов
Если диск полностью пуст и на нём нет никакой таблицы разделов, то программа предложит создать новую таблицу разделов. Для современных систем лучше оставить GPT, но если вы хотите чтобы этот диск могли читать Windows XP и более старые системы, то следует выбрать MBR, здесь она называется DOS:
6. Запись изменений
Все внесенные изменения не запишутся на диск пока вы не нажмете кнопку Запись или Write. Только после её нажатия программа запишет все изменения:
После нажатия кнопки Запись надо подтвердить внесение изменений набрав слово yes. После этого программа сообщит, что всё готово:
После этого можно закрыть программу, нажав кнопку Выход.
Как создать логический раздел с помощью команды fdisk
Выполните ту же процедуру, описанную выше, чтобы создать логический раздел после создания расширенного раздела. Здесь я создал логический раздел размером 1 ГБ с именем /dev/sdc5, вы можете убедиться в этом, проверив значение таблицы разделов.
Как смонтировать раздел в Linux
После того, как вы создали раздел и файловую систему, нам нужно смонтировать раздел для использования.
Для этого нам нужно создать точку монтирования для монтирования раздела. Используйте команду mkdir для создания точки монтирования.
Для временного монтирования используйте приведенную ниже команду. Эта точка монтирования не сохранится после перезагрузки вашей системы.
Для постоянного монтирования добавьте информацию о разделе в файл fstab. Это можно сделать двумя способами: добавить имя устройства или значение UUID.
Постоянное монтирование с использованием имени устройства:
Постоянное монтирование с использованием значения UUID. Чтобы получить UUID раздела, используйте команду blkid.
В Linux существует множество способов разметки диска, создания на нём разделов и просмотра уже существующих. Это утилиты parted и cfdisk в терминале и графическая утилита gparted. Однако сегодня мы поговорим про самую простую утилиту для разметки диска в терминале - fdisk.
Именно она используется чаще всего, если надо посмотреть как диски и разделы доступны на компьютере. Далее рассмотрим основные опции утилиты, её синтаксис, а также примеры использования.
3. Просмотр таблицы разделов
Чтобы посмотреть текущий тип таблицы разделов, а также доступные разделы на диске используйте команду p:
В данном примере на диске уже есть несколько разделов, а таблица разделов используется MBR (dos).
Как создать расширенный раздел диска с помощью команды fdisk
Обратите внимание, что вы должны использовать все оставшееся пространство при создании расширенного раздела, потому что вы затем можете создать в нем несколько логических разделов.
5. Создание разделов
Чтобы создать раздел используйте команду n. Команда спросит какой номер раздела надо присвоить этому разделу, затем спросит сектор начала раздела, эти значения можно оставить по умолчанию, так как утилита предлагает минимальные доступные. Далее надо указать размер раздела. Это можно сделать тремя способами:
- указать количество секторов раздела;
- указать последний сектор раздела;
- указать размер раздела в килобайтах, мегабайтах или гигабайтах, обозначения стандартные K,M,G.
Давайте создадим три раздела разными способами:
Первый раздел создадим с помощью обычных единиц измерения. Перед ними надо ставить плюс, так как это место, которое добавляется к первому сектору раздела.
Во втором способе укажем размер раздела в секторах. Для получения раздела размером 1 гигабайт нам понадобится примерно 2 000 000 секторов. По умолчанию размер сектора 512 байт, поэтому 2 000 000 * 512 получится примерно 1024 000 000 байт:
И в третьем способе с помощью калькулятора добавим к первому сектору раздела те же два миллиона:
На этом создание разделов fdisk завершено. А вот форматирование разделов в fdisk невозможно, для этого придется воспользоваться утилитой mkfs.
4. Создание таблицы разделов
Давайте создадим новую таблицу разделов GPT. Для этого используйте команду g. Для таблицы разделов MBR нам бы понадобилась команда o.
Как вывести список доступных дисков с помощью команды fdisk
Сначала мы должны узнать, какие диски были добавлены в систему, прежде чем выполнять какие-либо действия. Для просмотра списка всех доступных дисков в вашей системе выполните приведенную ниже команду. Она выведет возможные сведения о дисках, такие как имя диска, количество разделов на нем, размер диска, тип метки диска, идентификатор диска, идентификатор раздела и тип раздела.
Что такое fdisk?
fdisk обозначает "fixed disk" или "format disk". Это утилита командной строки, которая позволяет пользователям выполнять различные действия с дисками. Она позволяет нам просматривать, создавать, изменять размеры, удалять, перемещать и копировать разделы.
Она понимает таблицы разделов MBR, Sun, SGI и BSD, не понимает таблицу разделов GUID (GPT) и не предназначена для больших разделов.
fdisk позволяет нам создать максимум четыре основных раздела на диск. Один из них может быть расширенным разделом, и он может содержать несколько логических разделов.
1-4 зарезервировано для четырех основных разделов, а логические разделы начинаются с 5.
Как удалить раздел с помощью команды fdisk
Если раздел больше не используется в системе, мы можем удалить его, используя следующие шаги.
Убедитесь, что вы будете вводить правильный номер раздела, чтобы удалить его. В данном случае я собираюсь удалить раздел /dev/sdc2.
2. Интерактивный режим
Большинство операций fdisk по разметке дисков выполняются в интерактивном режиме. Чтобы запустить fdisk в интерактивном режиме передайте утилите блочное устройство которое надо разметить. В моём примере, это /dev/nvme0n1:
sudo fdisk /dev/nvme0n1
Вам не обязательно возвращаться к этой статье, когда вы захотите снова поработать с программой, посмотреть доступные команды можно выполнив команду m:
Как установить fdisk в Linux
Вам не нужно устанавливать fdisk в системе Linux, потому что он установлен по умолчанию как часть утилит core.
6. Тип раздела
Кроме обычных разделов для пользовательских файлов существуют и другие типы разделов, например раздел EFI, BIOS boot, Windows Recovery, Linux swap, этот тип влияет на назначение раздела, например, раздел EFI не будет использоваться пока для него не будет выбран правильный тип. Чтобы изменить тип раздела используйте команду t:
Для вывода всех доступных типов и их номеров используйте команду L:
Для выхода из списка разделов нажмите q, а затем просто наберите номер нужного типа:
8. Загрузочный раздел
При загрузке компьютера с диска, на котором используется таблица разделов MBR, BIOS ищет раздел, отмеченный как загрузочный и начинает искать загрузчик именно на нём. Чтобы сделать раздел загрузочным если он ещё не загрузочный или наоборот сделать его не загрузочным используйте команду a:
Загрузочность отмечается звездочкой в выводе команды p. В таблице разделов GPT для записи загрузчика используется раздел с типом BIOS boot, а флага загрузочности здесь уже нет.
Как пользоваться cfdisk
Как просмотреть нераспределенное дисковое пространство с помощью команды fdisk
Как описано в предыдущем разделе, мы полностью создали 4 раздела (3 основных и 1 расширенный). Дисковое пространство расширенного раздела будет отображаться как неразмеченное, пока вы не создадите в нем логические разделы.
Используйте приведенную ниже команду для просмотра неразмеченного пространства для диска. В соответствии с приведенным ниже выводом у нас есть 7ГБ неразмеченного диска.
7. Загрузочный раздел
Попытаемся ещё разобраться с вопросом как поставить флаги cfdisk. В таблице разделов GPT нет такого понятия как загрузочный раздел или флаг загрузочного раздела. Здесь подразумевается, что если надо что-то загрузить, то загрузчик должен располагаться на разделе EFI, отформатированном в файловую систему FAT. Однако если вы выбрали таблицу разделов MBR, то такая функция будет доступна. Чтобы сделать раздел загрузочным выберите этот раздел, затем нажмите кнопку Загруз. или Boot:
После этого выбранный раздел будет помечен звездочкой в колонке Загрузочный.
2. Запуск cfdisk
Чтобы запустить программу надо передать ей имя устройства диска, с которым она будет работать. Если этого не сделать будет выбран первый диск в системе, например, /dev/sda. В этом примере надо открыть /dev/sdb:
sudo cfdisk /dev/sdb
Программу надо запускать от имени суперпользователя, так как она будет вносить изменения на жесткий диск.
Примеры использования команды fdisk
1. Список дисков и разделов
Чтобы посмотреть список доступных вам дисков и разделов на них используйте опцию -l:
Утилита покажет все блочные устройства. На снимке есть /dev/sda, это обычный жесткий диск и /dev/nvme0n1 - это M.2 накопитель, а также там есть есть несколько /dev/loop* устройств, созданных ядром, которые лучше не трогать.
5. Настройка раздела
В таблице разделов GPT созданный раздел можно немного настроить. Можно изменить размер раздела с помощью кнопки Размер или выбрать его тип, с помощью кнопки Тип. Для изменения размера нажмите кнопку Размер и введите новый размер раздела:
Например, давайте сделаем раздел размером 300 гигабайт, в результате после раздела появится свободное пространство и вы сможете создать ещё один раздел:
По умолчанию используется тип раздела Файловая система Linux. Это означает, что в будущем раздел может быть отформатирован в Ext4 или любую другую файловую систему. Но, например, для установки загрузчика Grub нужен раздел BIOS boot. Для выбора такого типа раздела нажмите кнопку Тип и выберите BIOS boot:
В меню доступны и другие типы разделов, которые можно использовать при необходимости.
7. Удаление раздела
Чтобы удалить раздел выполните команду d, а затем введите его номер:
Вот так просто выполняется удаление.
Как вывести список определенных разделов диска с помощью команды fdisk
Если вы хотите увидеть определенный диск и его разделы, используйте следующий формат команды:
Опции и синтаксис fdisk
Синтаксис утилиты ничем не отличается от других команд Linux:
$ fdisk опции устройство
Ей надо передать опции, согласно действия, которое вы хотите выполнить, а также раздел диска или устройство к которому эти действия надо применить. Давайте теперь рассмотрим опции fdisk:
- -B, --protect-boot - не стирать первые 512 байт диска чтобы не повредить загрузочную запись;
- -L, --color - настройка цветного вывода, возможные значения auto, never или always;
- -l, --list - вывести все разделы на выбранных устройствах или если устройств не задано, то на всех устройствах;
- -o, --output - указывает какие поля данных надо показывать в выводе программы, доступные поля рассмотрим ниже;
- -u, --units - настраивает формат вывода размера разделов, доступные значения: cylinders, sectors, по умолчанию используется sectors;
- -w, --wipe - режим стирания файловой системы или RAID с диска, возможные значения auto, never или always по умолчанию используется auto;
- -W, --wipe-partition - режим стирания файловой системы или RAID из только что созданного раздела. Возможные значения аналогичны предыдущей опции;
- -h, --help - показать справку по утилите;
- -v, --version - опция выводит версию утилиты.
Опции используются для настройки работы утилиты, мы рассмотрели только самые главные, которые могут вам пригодится, теперь перейдём к командам:
- a - включение или выключения флага boot для раздела;
- d - удалить раздел;
- F - показать свободное место;
- l - вывести список известных типов разделов;
- n - создать новый раздел;
- p - вывести таблицу разделов;
- t - изменение типа раздела;
- i - вывести информацию о разделе;
- I и O - записать или загрузить разметку в файл сценария sfdisk;
- w - записать новую таблицу разделов на диск;
- q - выйти без сохранения;
- g - создать пустую таблицу разделов GPT;
- o - создать пустую таблицу разделов MBR.
Теперь вы знаете основные опции и команды fdisk, давайте рассмотрим использование программы.
Выводы
В этой небольшой статье мы разобрали как пользоваться cfdisk Linux для разметки диска. Её можно использовать как для установки операционной системы, так и для подготовки нового жёсткого диска к работе.
Статья распространяется под лицензией Creative Commons ShareAlike 4.0 при копировании материала ссылка на источник обязательна.
У многих начинающих пользователей линукс возникают сомнения, как правильно разбить жесткий диск. Постараюсь немного облегчить муки выбора нашим коллегам.
У нас в распоряжении есть — физическая разбивка дисков на разделы(fdisk, gparted), соф-RAID (mdadm), менеджер логических дисков (LVM), ширование dm-crypt (остальным не стоит забивать голову).
Пути разбивки дисков неисповедимы, поэтому мы начнем с самого простого.
1. Физическая разбивка дисков
Это самый простой, надежный и совместимый «дедовский» метод. Он позволяет четко очертить границы разделов и их взаимное положение на диске.
При разбивке диска можно учесть его физические особенности и получить некоторый прирост производительности. Дело в том, что ближе к краю диска скорость чтения может быть в несколько раз выше, чем ближе к центру. Соответственно, если расположить например /boot(128 мб), swap (memory * 2 or 2.5), /(root) то мы получаем хорошую скорость загрузки и работы с разделом подкачки. Если есть несколько дисков, то можно расположить swap в начале каждого. Но парится со swap есть смысл, если вы работаете с большими объемами данных — linux не использует swap без крайней нужды. (проверьте free -m). Отказываться от использования swap крайне не рекомендуется, так как linux хорошая система, но чудес не бывает. Открыв файл на 1ГБ можно заблокировать систему намертво без возможности разблокирования.
Разбивка диска на большое количество разделов оправдана только, если это делается для какой-то особой цели. В других случаях — достаточно обойтись простейшим / (root) и swap.
Очень часто пользователи отделяют /home от / (root) — это не имеет никакого практического смысла в однопользовательских системах. Обычно, / (root), /var, /home разделяют на серверах, чтобы пользователи со злым умыслом не заполнили логи или свою домашнюю директорию. Кстати, смонтировать /home с noexec можно и не делая отдельного раздела (man mount).
Если вы пользуетесь парралельно windows то я рекомендую использовать FAT32 для разделов с музыкой/фильмами, к которым вы хотите иметь доступ в обоих системах (и ни в коем случае не делать /home или домашнюю папку в FAT32!!). NTFS хорошо поддерживается, но недостаточно, чтобы ей пользоваться каждый день (чтобы снять unclean shutdown который не дает смонтировать раздел- нужно грузить windows), ошибки в файловой системе могут вызывать подвисания и потерю данных (привет жадному Биллу).
Запомните: черезмерная разбивка — корень всех бед. Разбивать диски «особым» образом нужно только под КОНКРЕТНУЮ задачу.
2. Логическая разбивка дисков
Не бойтесь LVM — он не такой страшный. С его помощью можно переразбивать диски, расширять партиции, добавлять физические устройства и расширяться на них, делать теневое копирование, бекап аналогичный «time machine» появился еще примерно в 2002 году. Не бойтесь, делайте бекап и пользуйтесь гибкостью LVM.
Для работы LVM, MD, DM обязательно нужен физический раздел /boot который позволит загрузчику(grub, Lilo etc) скачать минимальный образ системы (initrd) с необходимыми драйверами и конфигами для старта основной системы.
С логической разбивкой все сложнее. Вложенность разделов может быть произвольная.
Например как делается полное шифрование в ubuntu: /boot DM-CRYPT[LVM[/(root) swap]] — физический раздел /boot, затем физический раздел с dm-crypt, в котором находится LVM в свою очередь в котором два логических раздела /(root) и swap.
С вложенностью шифрования и raid можно играться как угодно.
Пример из жизни параноика:
/boot DM-CRYPT[ LVM[ /root DM-CRYPT-random[/tmp] DM-CRYPT-random[/home] DM-CRYPT-random[/var/log] DM-CRYPT-random[swap] ]]
При каждой загрузке /tmp /home /var/log и swap инициализируются с рандомным ключом. Конечно это ставит жирный крест на hibernate но при каждой загрузке- система абсолютно чистая от логов и временных файлов. Вполне сгодится для студентов или любителей побродить по порносайтам.
3. Советы по оптимизации
/boot можно сделать в файловой системе ext2 — она быстрей, чем ext3 и этого будет достаточно.
На активно использующемся разделе можно отключить access time — флаг noatime. Так часто делают на веб-серверах для уменьшения нагрузки на жесткий диск.
Как показала многолетняя практика, не стоит надеяться на надежность простого либо навороченного решения. Стоит использовать самое удобное и делать регулярный rsync на внешний носитель. В таком случае отпрадают вопросы на счет восстановления данных, которые при любом решении (особенно при шифровании) сильно усложняют жизнь. Например беды на шированной партиции при наличии Luks могут вывести систему из строя без возможности восстановления данных. Шифрованные данные более подвержены сильным повреждениям, чем нешифрованные.
(советуйте, добавлю)
В linux можно сделать абсолютно все, что угодно и это будет работать. Главное, руководствоваться здравым смыслом и не брезговать читать man вместо довольно часто вредных и устаревших howto.
Итак, резюмируем:
Для десктопов и ноутбуков оптимальный метод разбивки — полное отсутствие разбивки.
Для тех, кто не любит бекапиться, использовать «сложные методы» вроде LVM. Может подойти вариант:
swap (memory * 2), / (остальное)
Для юзеров убунты достаточно выбрать: Использовать все свободное место под LVM, тогда у вас останется много возможностей «на вырост».
Если разбивать /, /home то вы рано или поздно столкнетесь с нехваткой места на одном из разделов.
fdisk не понимает GUID Partition Table (GPT), и не предназначен для для работы с крупными разделами. В случае необходимости, вы можете использовать более мощную команду GNU parted(8).
Устройства - это как правило /dev/sda , /dev/sdb и т.п.. Имя устройства относится ко всему диску. Если для обслуживания контроллера не используется библиотека libata (библиоткеув ядра, для обслуживания ATA контроллеров), то существует различие между именами IDE и SCSI дисками. Имена /dev/hd* закреплены за IDE устройствами, и /dev/sd* за SCSI устройствами. Внешние жёсткие диски , обслуживаемые через USB, также имеют имена типа /dev/sd*
Имя раздела состоит из буквенного имени и из номера раздела. Например /dev/sda1,- это первый раздел первого жесткого диска системы.
Диски типа sd могут иметь до 15 разделов. См. также документацию к ядру Linux (файл Documentation/devices.txt ).
- При использовании стиля BSD/SUN , каждый раздел ( спайс ) можно разделить на 8 меток подразделов ( DiskLabels ), один из которых, (третий подраздел) используется для доступа ко всему разделу. Нельзя начинайть раздел, который фактически использует его первый сектор (например, раздел подкачки) с цилиндра 0, так-как это уничтожит метку подраздела. Под своп принято отводить второй подраздел одного из разделов. При этом максимально получается один корневой раздел (занимающий весь первый раздел), один раздел подкачки и 20 подразделов в трёх оставшихся разделах (по семь на каждый). Также возможно разбиение диска, при котором три раздела не используются, а один разбит на подразделы (режим полного диска). Подробнее смотри документацию по FreeBSD.
- При использовании стиля IRIX/SGI первичный раздел может состоять из 16 подразделов, из которых, одиннадцатый представляет весь объем раздела (как третий в стиле BSD ) , а девятый помечен как заголовок томаIRIX/SGI машинах или специализированных для IRIX/SGI дистрибутивах.
- При использованиии стиля DOS , таблицы могут описывать неограниченное количество разделов. В нулевом секторе таблицы есть место для описания 4 разделов (Так называемых первичных разделов). Один из них может быть расширенным разделом, этот раздел можно назвать контейнером, в который можно помещать, "вторичные разделы" (логические диски) - аналогично тому, как в спайс помещаются вторичные разделы (Disklabels) в BSD стиле. В отличии от BSD стиля, где каждый из спайсов может содержать вторичные разделы, в DOS стиле только один (обычно последний) может содержать вторичные разделы. Официально "вторичные разделы" называются логическими дисками , что вносит некоторую путаницу, так-как и раздел, занимающий основной ("первичный") раздел также можно назвать "логическим диском". Описание вторичных разделов представляют из себя связанный список дескрипторов, каждый из которых указывает на начальный сектор следующего раздела.
Если это возможно, fdisk стремится получить геометрию диска автоматически. Это не обязательно реальная физическая геометрия диска (на самом деле, современные диски имеют совсем другие физические параметры, чем те, которые выдаёт BIOS в виде C/H/S), но это логическая геометрия диска, которую использует стиль DOS в описании таблицы разделов диска.
Обычно все идет хорошо, без всяких проблем, если Linux - это единственная операционная система на диске. Однако, если на диске вместе с ним стоит другая операционная система, то часто удобно вначале создать хотя-бы один раздел средствами этой, другой, операционной системы. Когда Linux при загрузке увидит таблицу разделов, то попытается подобрать логическую геометрию раздела так, что она будет совпадать с геометрией, используемой в соседней операционной системе.
Всякий раз, когда выводится таблица разделов, происходит проверка соответствия записей таблицы разделов. Проверяется, идентичность физического и логического начала и конца раздела, и что он начинается и заканчивается на границе цилиндра (за исключением первой раздела).
В некоторых версиях MS-DOS создают первый раздел , начало которого находится не на границе цилиндра, а на втором секторе первого цилиндра. В этом случае начало первого раздела не может совпасть с границей цилиндра, но это обычно не вызывает какие-либо проблемы, если у вас не установлена OS/2.
При обновлении содержания таблицы разделов, перед выходом из fdisk вызываются функции sync() и BLKRRPART ioctl() с целью заново перечитать таблицу разделов на диске.
Раньше, после использования fdisk, было необходимо перезагрузить ОС. Сейчас в этом нет необходимости, напротив, быстрая перезагрузка может привести к потере недописанных данных. Заметим, что и ядро и буфер данных дисковой подсистемы может иметь данные в оперативной памяти.
Команда DOS 6.x format ищет информацию о разделе в первом секторе области данных раздела, и рассматривает эту информацию как более надежную, чем информаци., содержащаюся в таблице разделов.
Команда format (DOS) ожидает что команда fdisk (DOS) очистила первые 512 байт данных области раздела, при изменении размера размера. Команда format будет проверять эту дополнительную информацию, даже если указать флаг /U, - мы считаем что это ошибка в командах DOS format и fdisk.
Суть в том, что если вы используете команды сfdisk или fdisk (Linux), чтобы изменить размер записи в таблице разделов DOS, то вы должны, используя команду dd, обнулить первые 512 байт, прежде чем использовать команду format (DOS) для форматирования раздела.
Например, если вы используете команду сfdisk для создания DOS раздела на /dev/sda1 , то после выполнения fdisk или cfdisk и перезагрузки Linux, с тем чтобы данные в таблице разделов, стали достоверными, надо выполнить команду
" dd if=/dev/zero of=/dev/sda1 bs=512 count=1 "
обнулив первые 512 байт раздела.
БУДЬТЕ КРАЙНЕ ОСТОРОЖНЫМИ при выполнении команды dd , так как небольшая опечатка в команде может привести к потере данных на диске или стиранию таблицы разделов.
Для лучших результатов, всегда используйте "родные" программы соответствующих ОС при работе с их разделами.
Например, для создания раздела DOS, иcпользуйте программу fdisk операционной системы DOS, а для создания разделов для Linux, используйте програмы fdisk, cfdisk, parted и т.п. )
-b sectorsize задаёт размер сектора диска в байтах. Допустимые значения: 512, 1024, 2048, 4096. (последние версии ядра Linux сами определяют размером сектора диска. Используйте этот параметр только на старых ядрах, или в случае, если вы хотите изменить размер определённый ядром).
-h печать подсказки команды и выход.
-c выключение DOS-совместимого режима работы (рекомендуется).
-C cyls задаёт число цилиндров на диске. Не представляю зачем это надо.
-H heads задаёт число головок диска. (конечно, не реальное их число, а число, которое используется в таблице разделов). Разумное значений 255 и 16.
-S sect задаёт число число секторов на дорожку на диске. (не реальное значение, а число, которое используется в таблице раздела) разумные значения 63.
-l выдача списка разделов для указанного устройства. Если не указано ни одного устройства, то выдаётся информация об всех устройствах, указанных в файле /proc/partitions (если он есть)
-u при выдаче списка разделов, размеры указываются в секторах, а не в цилиндрах.
-s partition выдача размера раздела в блоках.
-v выдача версии программы fdisk.
Для входа в интерактивный режим даем команду (например для диска /dev/sdg)
Команда m выдаст все возможные команды интерактивного режима:
Help Работа с разбиением диска в стиле DOS (MBR) Общие Прочие Сохранение и выход Создание новых меток
4. Создание раздела
После того как таблица разделов создана, вам осталось создать сами разделы. Для создания раздела в верхней части окна выберите Свободное пространство, а затем с помощью стрелок вправо и влево, выберите кнопку Новый и нажмите Enter.
Затем введите размер раздела. Его можно указывать в мегабайтах (M), гигабайтах (G), терабайтах (T) или в секторах (S). Эту букву надо прописать после числа, обозначающего размер:
В данном примере создан раздел размером на всё доступное пространство - 465,8 гигабайт. Новый раздел будет выглядеть вот так:
Если была выбрана таблица разделов MBR, то придется ещё выбрать тип раздела Основной (Primary) или Расширенный (Extended). В GPT количество разделов не ограничено, поэтому в таком подходе нет необходимости. В MBR основных разделов может быть только четыре. Чтобы создать больше можно создать один расширенный раздел и в нём уже создавать необходимое количество разделов. Всё это умеет делать cfdisk, но только с таблицей разделов MBR.
Оцените статью:
Об авторе
3 комментария
Можно ли одной командой очистить диск полностью и, если можно, какой?
Банальное удаление: rm -rf
или форматирование: sudo mke2fs -t ext4 -L DATA /dev/sdb1
Если требуется действительно удалить данные с диска (забить диск нулями или случайными данными), а не просто удалить указатели на эти данные в файловой системе, то проще всего использовать nwipe
Утилита cfdisk - это консольная программа для разметки жесткого диска и создания на нём разделов. Она не такая сложная как fdisk или parted, поскольку не требует выполнения каких-либо команд. У неё есть псевдографический интерфейс, похожий на Gparted, только в консоли. Может благодаря этому она и используется для разметки диска во время установки ArchLinux.
В этой небольшой статье мы рассмотрим как пользоваться cfdisk для разметки жесткого диска, а именно создания таблицы разделов, самих разделов и установки флага загрузочный. Устанавливать утилиту не придется, она поставляется по умолчанию в большинстве дистрибутивов.
Как вывести список типов разделов с помощью команды fdisk
Если вы нажмете l в команде fdisk, она покажет вам доступные типы разделов.
Как вывести список доступных действий для команды fdisk?
Если вы нажмете m в команде fdisk, вы увидите доступные действия.
Читайте также: