Ошибка при создании файловой системы BTRFS

Ошибка при создании файловой системы BTRFS

Я пытаюсь установить Arch Linux с помощью btrfsфайловой системы. Я нахожусь в начале процесса установки, подготавливая свой диск, и у меня возникла проблема.

Сначала я начинаю очищать все записи GTP и MBR от предыдущих попыток установки, используя:

gdisk /dev/sda

Затем я перехожу в экспертный режим с помощью xкоманды и затем использую ее zдля удаления GTP и/или MBR.

Затем я fdiskсоздаю новый раздел, используя все пространство на диске — а это 119 ГБ.

После создания раздела и его записи я пытаюсь создать файловую систему с помощью:

mkfs.btrfs /dev/sda1

Но я получаю ошибку:

/dev/sda1 appears to contain an existing filesystem (btrfs)

Как это так? Я всего лишь создал раздел, так как же btrfs может уже существовать как тип файловой системы?

решение1

Когда вы создаете раздел, он содержит все, что там было раньше. Например, если вы удалите раздел, содержащий файловую систему, и заново создадите раздел в том же самом месте, не записывая в это пространство между этим, то вы получите файловую систему, которая была там раньше, нетронутой. Если новый раздел начинается в том же месте, что и старый, но больше, вы можете продолжать использовать файловую систему или (если файловая система это поддерживает) расширить ее, чтобы заполнить дополнительное пространство. Если новый раздел меньше, вы можете продолжать использовать файловую систему — но вам нужно сжать ее до нового размера раздела перед удалением старого раздела.

Итак, вот вам файловая система, или, может быть, только начало файловой системы, оставшееся от раздела, который начинался в том же месте. Многие версии отказываются mkfsперезаписывать то, что кажется существующей файловой системой, потому что это часто является признаком того, что вы указали неправильный раздел, и ошибка может быть катастрофической. Если вы хотите перезаписать существующую файловую систему, вам нужно сначала стереть ее часть, достаточно, чтобы сделать ее неузнаваемой. Linux поставляется сwipefsутилита для этого.

wipefs /dev/sda1

Обнуление достаточного количества байтов (скажем, пары мегабайт) в начале раздела, как правило, приводит к тому же эффекту.

решение2

Используя dd, мы можем стереть таблицу разделов. Я помню, как dd работал успешно, но не с функцией gdisk zero. (Убедитесь, что у вас есть резервная копия данных).

# dd if=/dev/zero of=/dev/sda bs=512 count=1024

Связанный контент