Как преобразовать файловую систему btrfs в режиме raid1 в raid0?

Я установил Ubuntu 11.10 с btrfs в качестве файловой системы / (было немного сложно, я объясню, если это будет интересно людям), чтобы я мог расширить основную файловую систему на второй диск в системе (*).

После установки системы я запустил btrfs device add /dev/sdb1 /, и она добавила новое устройство и расширила файловую систему, и все было хорошо. Но согласно (неправильному) руководству, которое я читал, мне также пришлось запустить btrfs filesystem balance, и это, по-видимому, преобразовало мою файловую систему в режим «raid1», так что все хранилось дважды - один раз на каждом диске, и я могу использовать только 50% из моей общей емкости:

$ btrfs filesystem df /
Data, RAID0: total=78.00GB, used=41.57GB
System, RAID1: total=8.00MB, used=16.00KB
System: total=4.00MB, used=0.00
Metadata, RAID1: total=3.75GB, used=355.06MB

Это хорошая функция, но я хотел использовать raid0 (раздевание). Я пытался удалить новое устройство, чтобы я мог добавить его заново, но когда я пытаюсь это сделать, я получаю сообщение об ошибке, и системный журнал имеет следующее:

btrfs: unable to go below two devices on raid1

Поэтому мой вопрос: как я могу преобразовать мой обратно в raid0, чтобы я мог использовать общее пространство обоих дисков?

(*) Как и в случае с LVM, но с помощью btrfs вы можете разместить несколько «разделов» в одной «файловой системе» и пространстве. распределяется динамически там, где вам это нужно - в отличие от LVM.

6
задан 20 December 2011 в 04:30

2 ответа

btrfs balance start -dconvert=raid0 /

Это все, что вам нужно сделать. Система будет активно перемещать существующие данные в raid0 (чередующиеся, без проверки четности), и любые другие данные будут записываться таким же образом.

METAdata по-прежнему будет записан в двух экземплярах. Если вы хотите прожить EXTRA SUPER опасно, не стесняйтесь также использовать аргумент -mconvert raid0 в вышеупомянутой команде, тогда и данные, и метаданные в массиве в / будут преобразованы в raid0.

0
ответ дан 20 December 2011 в 04:30

Вы прочитали правильное руководство; вам нужно запустить баланс после добавления диска, чтобы перезарядить ваши данные на новом диске. Также бывает, что любые DUP-блоки преобразуются в RAID1, а параметры mkfs по умолчанию используют метаданные RAID1 или DUP в зависимости от того, есть у вас несколько дисков или нет. В настоящее время не поддерживается способ обратного преобразования, но в списке рассылки btrfs есть несколько исправлений, которые в конечном итоге позволят подобные вещи.

0
ответ дан 20 December 2011 в 04:30

Другие вопросы по тегам:

Похожие вопросы: