Утилита parted. Как удалить все до единого разделы с диска.

Описание.

Parted (сокращение от англ. «partition editor»«редактор разделов») — утилита командной строки в системах Linux для управления разделами дисков. Поддерживает таблицы разделов MBR (Master Boot Record) и GPT (GUID Partition Table).

Запуск.

Например:

$ sudo parted /dev/sda

Ниже приведены основные команды, которые можно использовать в этом режиме.

Внимание! В отличие от fdisk, команды parted применяются немедленно, поэтому будьте осторожны!

Основные внутренние команды.

В интерактивном режиме введите --help, чтобы увидеть полный список команд.

$ sudo parted --help

Ответ:

  • print Выводит таблицу разделов текущего диска.
  • mklabel gpt | msdos Создает метку раздела GPT или MBR на диске. Все существующие разделы будут удалены.
  • mkpart Создает новый раздел. Необходимо указать тип раздела, тип файловой системы, начальное и конечное положение.
  • resizepart Изменяет размер существующего раздела.
  • rm Удаляет раздел с указанным номером.
  • quit Выходит из parted. Поскольку изменения в parted применяются немедленно, использование quit не отменяет изменения!

Примеры использования.

Изучите функциональность команды parted с помощью различных примеров использования.

Внимание! Утилита parted применяет команды немедленно, поэтому используйте его осторожно!

Вывод информации обо всех разделах.

Проверяет информацию о разделах всех дисков, подключенных к системе. Выполняет ту же функцию, что и опция -l в fdisk.

$ sudo parted -l

Создание метки раздела GPT.

Создает метку раздела GPT на новом диске /dev/sdb. Эта команда удаляет все существующие разделы на диске.

$ sudo parted /dev/sdb mklabel gpt

Ответ:

Создание нового раздела (неинтерактивный режим).

Создает первичный раздел размером 10 ГБ с файловой системой ext4 на /dev/sdb. Подходит для использования в скриптах в неинтерактивном режиме.

$ sudo parted -s /dev/sdb mkpart primary ext4 1MiB 10GiB

Удаление раздела.

Удаляет 2-й раздел на диске /dev/sdb с помощью команды rm.

$ sudo parted /dev/sdb rm 2

Советы и меры предосторожности.

Собраны важные моменты, которые следует учитывать при использовании команды parted.

Советы:

  • В отличие от fdisk, parted применяет изменения немедленно после ввода команды, поэтому всегда делайте резервные копии и работайте осторожно. В частности, команда mklabel удаляет все данные на диске.
  • Использование неинтерактивного режима (-s, --script) позволяет создавать скрипты для автоматизации операций с разделами.
  • После создания раздела необходимо отформатировать файловую систему с помощью команды mkfs. (Например: sudo mkfs.ext4 /dev/sdb1)
  • При указании единиц измерения в интерактивном режиме рекомендуется использовать двоичные префиксы, такие как GiB, MiB. GB и MB относятся к десятичной системе и могут вызвать путаницу.

Постановка задачи.

Итак, имеем софт, который сотворил нечто вот такое:

$ sudo fdisk -l /dev/sda

Ответ:

Удалять все это руками — трудоёмко и по времени затратно. Поэтому требуется автоматизация!

Решение задачи.

Здесь нам поможет parted:

$ sudo parted /dev/sda

Теперь выполним последовательность действий:

  1. Вводим команду mklabel.
  2. На вопрос про метку диска просто вводим команду gpt жмем Enter.
  3. На вопрос об уничтожении данных отвечаем командой Yes жмем Enter.
  4. Выходим из утилиты gpt командой guit.

В зависимости от версии утилиты на момент работы с диском последовательность вопросов и действий может быть разная, но всё сводится вот к тому, что на картинке.

Ответ:

Вот и все, диск идеально чист:

$ sudo fdisk -l /dev/sda

Ответ:

Внимание! Не забудьте обновить /etc/fstab.

Иначе после перезагрузки сервер будет ругаться, что есть неподключенные диски!

Как их подключить читайте в этой инструкции.

Ссылка: «Как еще добавить новый диск в формате GPT.»

Оригиналы источников информации.

  1. stableit.ru «Как удалить все до единого разделы с диска в Linux?»
  2. cmdbox.mikihands.com «parted: Дисковый менеджер разделов (MBR & GPT)».