- Deleting All Partitions From the Command Line
- 9 Answers 9
- Как удалить раздел диска в Linux
- Удалить раздел в Linux
- Шаг 1. Составьте список схемы разделов
- Шаг 2: Выберите диск
- Шаг 3: удалить разделы
- Шаг 4: проверьте удаление раздела
- Шаг 5. Сохраните изменения и выйдите
- Как удалить раздел в Linux
- Как удалить разделы на диске Linux
- 1. Графический интерфейс
- 2. Псевдографический интерфейс
- 3. Командная строка
- Выводы
Deleting All Partitions From the Command Line
How do you delete all partitions on a device from the command line on Linux (specifically Ubuntu)? I tried looking at fdisk, but it presents an interactive prompt. I’m looking for a single command, which I can give a device path (e.g. /dev/sda) and it’ll delete the ext4, linux-swap, and whatever other partitions it finds. Essentially, this would be the same thing as if I were to open GParted, and manually select and delete all partitions. This seems fairly simple, but unfortunately, I haven’t been able to find anything through Google.
9 Answers 9
dd if=/dev/zero of=/dev/sda bs=512 count=1 conv=notrunc
This will not delete the partitions. By deleting the partitions he meant to preserve the MBR and just empty the partition table.
No, this appears to do exactly what I need. I don’t really care if the data is still there. GParted shows that the partitions are gone after running this, and that’s what I wanted.
To be fair, he said delete the partitions, not the partition table or data, so it wasn’t really clear. But I think we knew he just wanted the parts not to register, which makes this the correct answer. To delete the data would be uneccesary. IF you want to zero it, thats a different story, that’s deleting the data too.
The wipefs program lets you easily delete the partition-table signature:
wipefs can erase filesystem, raid or partition-table signatures (magic strings) from the specified device to make the signatures invisible for libblkid.
wipefs does not erase the filesystem itself nor any other data from the device. When used without any options, wipefs lists all visible filesystems and the offsets of their basic signatures.
wipefs calls the BLKRRPART ioctl when it has erased a partition-table signature to inform the kernel about the change.
Quick and Dirty: use gparted to delete the partitions, or if you’re in a hurry:
dd if=/dev/zero of=/dev/[disk device] bs=512 count=1
This will zap the MBR of the drive (Data is still intact).
dd if=/dev/zero of=/dev/[disk device]
to wipe the whole drive (write a single pass of zeros over everything. Not «secure» but usually good enough), or use a «disk shredder» tool for a secure wipe.
Not secure because it’s possible that the disk’s contents could be partially recovered by someone with physical access to it. A secure wipe writes multiple passes of random data over the whole disk.
Use improved non-interactive version of fdisk, which is sfdisk
To erase partition table use this command:
Note: no confirmation will be thrown, the partitions will be deleted instantly and forever!
I think it’s worth making it clear that after running this command there won’t be any confirmation prompts whatsoever, the partition will be deleted instantly.
See man sfdisk , which is a non-interactive variant of fdisk. Other than that, you can delete the whole partition table with dd, as pk wrote.
You should be able to use parted for this aswell, although that may involve some scripting to loop through the partitions.
It may be worth to mention that e.g. parted /dev/mmcblk0 —script mklabel gpt deletes all existing partitions. For me it was parted /dev/mmcblk0 —script mklabel msdos
If we’re talking about MBR-style partitions.
dd if=/dev/zero of=/dev/[disk device] bs=1 count=64 seek=446 conv=notrunc
This standard command copies bytes from a source and writes them to a destination. It’s the simplest flexible tool for this job.
Here, we specify that we’re reading from /dev/zero , which is a special device which emits NUL bytes—zeros.
Here, we specify which device we’re writing to.
dd thinks in terms of blocks. The default block size may be 512 bytes, 1024 bytes or 4096 bytes, depending on your system. However, we need to address things more precisely than that, so we tell dd to use a block size of 1 byte.
Here, we tell dd to write 64 blocks (or bytes, because of our bs=1 parameter), since the primary partition table consists of 4 16-byte partition entries, for a total of 64 bytes.
The primary partition table within the MBR (so, not talking about GPT here) is located 446 bytes in, so we instruct dd to seek 446 bytes in before writing.
Extended partitions are generally created by using a primary partition slot to point at the extended partition table, so if we erase the 4 primary partitions, we effectively wipe the extended partition table as well; the OS won’t be able to find it, so it won’t be able to read and interpret it. (If you want to wipe the extended partition table, you’ll need to know more about the operating system; different operating systems do extended partitions in different ways.)
I wanted to do the same thing (except in Slackware 14.2) but found I could not effect most of the solutions proposed here, with the most elaborate and well-documented solution creating new problems for making replacement partitions. That deleted the partition but some partitioning software apparently found the partition backups automatically.
I found f3probe (http://oss.digirati.com.br/f3) solved the problem of deleting all the partitions, quickly and easily, working with large capacity drives, and created exactly 1 partition spanning the whole drive, which was easy to delete.
It was also easy, from there to create new partitions, in a straight-forward way.
f3probe --destructive --time-ops /dev/sdb # Now we know only 1 partition exists on /dev/sdb # which is /dev/sdb1 # # Unmount that partition umount /dev/sdb1 # # Delete that single partition parted /dev/sdb rm 1 # # Now you can create new partitions # i.e. parted /dev/sdb mkpart primary fat32 1049K 15.8G # # Update /etc/fstab before rebooting.
Как удалить раздел диска в Linux
Пользователи Linux создают разделы для эффективной организации своих данных. Разделы Linux могут быть удалены так же просто, как и созданы, чтобы переформатировать устройство хранения и освободить место для хранения.
Удалить раздел в Linux
Для удаления раздела в Linux необходимо выбрать диск, содержащий раздел, и использовать утилиту командной строки fdisk для его удаления.
Примечание. Утилита командной строки fdisk — это текстовый манипулятор таблицы разделов. Она используется для разделения и перераспределения устройств хранения.
Шаг 1. Составьте список схемы разделов
Перед удалением раздела выполните следующую команду, чтобы просмотреть схему разделов.
В нашем случае терминал распечатывает информацию о двух дисках: /dev/sda и /dev/sdb . Диск /dev/sda содержит операционную систему, поэтому его разделы удалять не следует.
На диске /dev/sdb есть раздел /dev/sdb1 , который мы собираемся удалить.
Примечание. Число 1 в /dev/sdb1 указывает номер раздела. Запишите номер раздела, который вы собираетесь удалить.
Шаг 2: Выберите диск
Выберите диск, содержащий раздел, который вы собираетесь удалить.
Общие имена дисков в Linux включают:
Тип диска | Имена дисков | Обычно используемые имена дисков |
IDE | /dev/hd[a-h] | /dev/hda, /dev/hdb |
SCSI | /dev/sd[a-p] | /dev/sda, /dev/sdb |
ESDI | /dev/ed[a-d] | /dev/eda |
XT | /dev/xd[ab] | /dev/xda |
Чтобы выбрать диск, выполните следующую команду:
Шаг 3: удалить разделы
Перед удалением раздела сделайте резервную копию своих данных. Все данные автоматически удаляются при удалении раздела.
Чтобы удалить раздел, выполните команду d в утилите командной строки fdisk .
Раздел выбирается автоматически, если на диске нет других разделов. Если диск содержит несколько разделов, выберите раздел, введя его номер.
Терминал распечатает сообщение, подтверждающее, что раздел удален.
Примечание. Если вы хотите удалить несколько разделов, повторите этот шаг столько раз, сколько необходимо.
Шаг 4: проверьте удаление раздела
Перезагрузите таблицу разделов, чтобы убедиться, что раздел был удален. Для этого запустите команду p .
Терминал выведет структуру разделов диска, выбранного на шаге 2.
Шаг 5. Сохраните изменения и выйдите
Запустите команду w , чтобы записать и сохранить изменения, внесенные на диск.
Как удалить раздел в Linux
Если вы работаете с дисками в Linux, то у вас время от времени возникает необходимость создавать таблицы разделов, создавать и форматировать новые разделы, а также удалять разделы. Это может понадобится для установки ещё одной системы, или просто перераспределения свободного места между разделами.
Удалить раздел в Linux можно как в графическом интерфейсе, так и в командной строке. Причем, в командной строке для этого есть несколько утилит. Есть да утилита с псевдографическим интерфейсом. В этой статье мы рассмотрим как выполняется удаление разделов Linux разными способами.
Как удалить разделы на диске Linux
1. Графический интерфейс
В графическом интерфейсе чаще всего для управления дисками и разделами используется программа Gparted. Обычно она уже предустановлена в большинстве дистрибутивов. Если же в вашем дистрибутиве её нет, то программу достаточно просто установить. Для этого в Ubuntu или Debian выполните такую команду:
Для Fedora команда будет выглядеть вот так:
В Arch Linux тоже будет отличаться только пакетный менеджер:
Запустить программу можно из главного меню:
Далее в правом верхнем углу программы выберите диск, на котором вы хотите удалить раздел. В данном случае будет использоваться /dev/sdb:
Если раздел сейчас смонтирован в системе, то удалить его вы не сможете. На это указывает ключ возле диска. Сначала необходимо его размонтировать. Для этого откройте контекстное меню и выберите Отмонтировать:
Далее можно удалить раздел. Для этого в том же контекстном меню выберите Удалить. Теперь этот пункт будет активным:
Раздел удалён в интерфейсе программы, но изменения ещё не применены к системе. Для того чтобы их применить кликните по зелёной галочке или откройте меню Правка и выберите Применить все изменения:
Далее применение изменений надо подтвердить. Если не возникло никаких ошибок, дальше пойдёт процесс удаления раздела, а потом вы сможете пользоваться появившемся свободным местом по своему усмотрению:
Теперь вы знаете удалить разделы на диске Linux в графическом интерфейсе.
2. Псевдографический интерфейс
Если вам нужно удалить раздел Linux в терминале, но у вас нет доступа к графическому интерфейсу и вы не хотите пользоваться утилитами командной строки, можно воспользоваться утилитой с псевдографическим интерфейсом — cfdisk. Если она ещё не установлена в вашей системе её можно установить так:
Для других дистрибутивов будет отличаться только пакетный менеджер. Перед запуском утилиты надо определиться на каком диске нужно удалять раздел. Для этого можно воспользоваться командой lsblk:
Например, можно удалить тот же /dev/sdb1. Обратите внимание, что если этот раздел диска примонтирован к системе, то его сначала надо отмонтировать. Для этого выполните:
Теперь запустите утилиту и передайте ей в параметре имя диска, на котором расположен этот раздел. Команду надо выполнять от имени суперпользователя:
В окне утилита отобразит список доступных разделов на выбранном диске:
В низу окна программы есть кнопки, которыми вы можете пользоваться для удаления и создания разделов. Перемещаться по ним можно с помощью кнопок со стрелками вправо и влево, а по разделам диска — стрелками вверх и вниз. Выберите нужный раздел, а затем кнопку Удалить и нажмите Enter:
Утилита сообщает, что раздел удалён, но как и в случае с Gparted изменения надо записать на диск, для этого нажмите кнопку Запись:
Затем введите слово yes, для того чтобы подтвердить изменения:
Теперь вы можете использовать полученное свободное пространство. Для того чтобы закрыть программу используйте кнопку Выход. Благодаря cfdisk удалить разделы жесткого диска linux в терминале не так уже и сложно.
3. Командная строка
Если два предыдущих варианта вам не подходят, можете воспользоваться утилитой fdisk. У неё нет никакого интерфейса и вам придется делать всё вручную. Сначала посмотрите список дисков:
Далее можно запускать программу. Программе необходимо передать путь к диску (не разделу), на котором надо удалить раздел и запустить её надо от имени суперпользователя. Например:
Утилита работает в интерактивном режиме и имеет свой интерпретатор команд. Для вывода доступных команд нажмите m и Enter:
Для того чтобы посмотреть список разделов на выбранном диске выполните команду p:
Для удаления раздела необходимо выполнить команду d. Обратите внимание на номера разделов в списке после sdb. Команда спросит номер раздела, который вы хотите удалить и именно этот номер надо указать. Например 1:
Все изменения выполнены только в памяти программы. Для того чтобы записать их на диск и удалить разделы fdisk linux необходимо использовать команду w:
После этого можно пользоваться свободным пространством. Более подробно об утилите fdisk можно почитать в этой статье.
Выводы
В этой небольшой статье мы разобрали как удалить раздел в Linux несколькими способами. Как видите, есть простые способы, есть более сложные, но во всём можно разобраться. А какой программой пользуетесь вы для удаления разделов? Напишите в комментариях!
Обнаружили ошибку в тексте? Сообщите мне об этом. Выделите текст с ошибкой и нажмите Ctrl+Enter.