[Решено]: Как добавить новый диск в RAID-0 массив, не удаляя файлы с исходного? (осторожно, извращения!)

IDE, SATA, SCSI, внешние USB-HDD, SSD, USB-Flash накопители

Модератор: Модераторы разделов

Ответить
Аватара пользователя
aaaaa
Сообщения: 30

[Решено]: Как добавить новый диск в RAID-0 массив, не удаляя файлы с исходного?

Сообщение aaaaa »

Всем привет, такое дело.
Крутятся у меня два WDC на 1 Тб в RAID-0 массиве (чисто для файлов, система на SSD), крутятся уже давно. С недавних пор места стало нехватать, решил докупить ещё один терабайтник и добавить в массив, но вот засада - mdadm не умеет расширять массив на лету без пересборки (то бишь без удаления всех файлов). Удалять файлы я не хочу, а перенести на внешний диск два терабайта нет возможности (можно перенести не более 500 Гб). Долго ломал голову над тем, что же делать и пришёл к такому вот решению, но не знаю, можно так или нет (диск1 и диск2 - в массиве, диск3 - новый):
1. Откусываем от диска3 100 Гб и на оставшихся ~900 создаём раздел, на который переносим файлы с массива, рассовываем их по флешкам и внешним дискам и т. п.;
2. Удаляем пустой массив;
3. Откусываем от диска1 и диска2 тоже 100 Гб и создаём на трёх дисках RAID-0 массив, создаём на нём ФС;
4. Скидываем на него часть файлов с диска3, освобождая 100 Гб;
5. Уменьшаем раздел на диске3 на освобождённые 100 Гб;
6. Снова откусываем от других дисков по 100 Гб и расширяем исходный массив на 300 Гб;
7. Повторять шаги 4-6, пока все диски не заполонит RAID-0 массив.
Собственно, есть ли путь проще? И можно ли расширять массив на свободное место на дисках средствами mdadm?
Спасибо сказали:
Аватара пользователя
aaaaa
Сообщения: 30

Re: [Решено]: Как добавить новый диск в RAID-0 массив, не удаляя файлы с исходного?

Сообщение aaaaa »

Поднял виртуальныю машину с дисками, mdadm сказал, что для этого типа массива операция изменения размера не поддерживается :angry:
Спасибо сказали:
Аватара пользователя
Bizdelnick
Модератор
Сообщения: 20752
Статус: nulla salus bello
ОС: Debian GNU/Linux

Re: [Решено]: Как добавить новый диск в RAID-0 массив, не удаляя файлы с исходного?

Сообщение Bizdelnick »

Простите, а как Вы хотите нарастить RAID0 добавлением диска?
Upd. Впрочем прошу прощения, начиная с mdadm 3.2.1 это вроде бы возможно.
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:
Аватара пользователя
ieleja
Сообщения: 307
ОС: Debian 9, macOS, Windows
Контактная информация:

Re: [Решено]: Как добавить новый диск в RAID-0 массив, не удаляя файлы с исходного?

Сообщение ieleja »

Linux bptu.hosted 4.4.0-36-generic Ubuntu (16.04 LTS) SMP x86_64 GNU/Linux


Код: Выделить всё

mdadm --grow /dev/md0 --level=0 --raid-devices=3 --add /dev/sdd

resize2fs -p /dev/md0
ad infinitum
Спасибо сказали:
Аватара пользователя
aaaaa
Сообщения: 30

Re: [Решено]: Как добавить новый диск в RAID-0 массив, не удаляя файлы с исходного?

Сообщение aaaaa »

ieleja писал(а):
03.09.2016 22:54
Linux bptu.hosted 4.4.0-36-generic Ubuntu (16.04 LTS) SMP x86_64 GNU/Linux


Код: Выделить всё

mdadm --grow /dev/md0 --level=0 --raid-devices=3 --add /dev/sdd

resize2fs -p /dev/md0



Код: Выделить всё

[root@localhost user]# mdadm --grow /dev/md126 --level=0 --raid-devices=3 --add /dev/sdc
mdadm: level of /dev/md126 [b]changed to raid4[/b]
mdadm: added /dev/sdc

Вот вообще не то, что мне нужно.
Как вернуть всё назад? :)
Спасибо сказали:
Аватара пользователя
ieleja
Сообщения: 307
ОС: Debian 9, macOS, Windows
Контактная информация:

Re: [Решено]: Как добавить новый диск в RAID-0 массив, не удаляя файлы с исходного?

Сообщение ieleja »

и через некоторое время:

Код: Выделить всё

mdadm: level of /dev/md126 changed to raid0
ad infinitum
Спасибо сказали:
Аватара пользователя
aaaaa
Сообщения: 30

Re: [Решено]: Как добавить новый диск в RAID-0 массив, не удаляя файлы с исходного?

Сообщение aaaaa »

ieleja писал(а):
04.09.2016 15:10
и через некоторое время:

Код: Выделить всё

mdadm: level of /dev/md126 changed to raid0

Огромное спасибо, действительно, теперь всё нормально :)
Как оказалось, в виртуалке у меня был устаревший пакет mdadm, где такой фичи не было, а в русскоязычную документацию информацию ещё не добавили.
Спасибо сказали:
Ответить