Как перенести массив RAID 2012 RAID 1 в Linux?

371
jimmy_terra

У меня есть пара дисков RAID 1, которые были созданы под Windows 2012 Server. Произошел сбой диска ОС, и у меня больше нет доступа к лицензионным ключам Windows, которые были у меня при установке (я больше не член MSDN), поэтому я не могу просто переустановить Windows 2012. Диски используются для хранения MP3, JPG и другие документы Windows и доступны через локальную сеть.

Я думаю об установке Linux на диск ОС и, надеюсь, смогу смонтировать зеркальные диски и продолжить использовать их, как раньше, но я не знаю, возможно ли это вообще, и если да, то как это сделать. Я явно не хочу терять содержимое дисков в процессе.

  • Какая ОС Linux наиболее подходит?
  • Какое программное обеспечение RAID я должен использовать?
0
FWIW, в Windows 2012 все еще есть [180-дневная пробная версия] (https://www.microsoft.com/en-US/evalcenter/evaluate-windows-server-2012) (достаточно времени для переноса ваших данных), и если бы вы использовали `diskmgmt.msc` для настройки RAID, то я полагаю, что любая версия Windows вплоть до XP распознает его. grawity 5 лет назад 0
Это вариант, спасибо. Значит ли это, что нет разумного способа просто поменять ОС и оставить диски RAID на месте? jimmy_terra 5 лет назад 0
Точно сказать не могу. Можете ли вы хотя бы подтвердить, что ваш RAID был настроен через LDM (diskmgmt), а не через Storage Spaces? Linux имеет некоторую поддержку для обнаружения разделов LDM, и вы, вероятно, могли бы задействовать RAID-массив, используя dm-raid, но у меня нет инструкций для этого, и я бы не стал поддерживать его для долгосрочного использования. grawity 5 лет назад 0
Парень из [этого ответа] (https://superuser.com/a/625702/8672) утверждает, что сделал это успешно, используя mdadm (хотя все остальные ответы поста были отрицательными). harrymc 5 лет назад 0
RAID был настроен с использованием diskmgmt, да. jimmy_terra 5 лет назад 0

1 ответ на вопрос

1
Attie

Как уже указывалось, вы можете установить Windows и использовать пробный период для извлечения ваших файлов, хотя, если вы все равно планируете использовать Linux, то в этом нет необходимости.


Я только что установил Windows 2012 R2 на виртуальной машине, чтобы воспроизвести эти шаги и выполнить их ... предполагая, что ваше зеркало было создано с использованием динамических дисков, а не дискового пространства.

Я создал зеркальный том на двух динамических дисках и поместил несколько файлов на том. Быстрый поиск показал, что это было бы возможно установить такой объем с ldmtool- но, к счастью, это « просто работает » с Ubuntu 18.04 ( Примечание: без ldmtool, и без функционирующий зеркального отображения, но вы можете получить доступ к данным).

Мои рекомендации:

Установить Linux

Какая ОС Linux наиболее подходит?

Я бы порекомендовал новым пользователям Linux использовать Ubuntu - он очень хорошо поддерживается и имеет большое сообщество ... если вы столкнетесь с проблемами, скорее всего, вы найдете решение довольно быстро. Как « опытный » пользователь, я в первую очередь тоже использую Ubuntu - я рекомендую его для большинства ситуаций.

Ubuntu можно скачать отсюда - перейдите на 18.04, так как это релиз LTS (Long Term Support).

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

Решите, какое хранилище использовать

Какое программное обеспечение RAID я должен использовать?

Для серверной системы, которая содержит важные (критические) файлы, я настоятельно рекомендую современную файловую систему, такую ​​как ZFS или BTRFS. Я писал о ZFS раньше - даже если вы не используете какие-либо « продвинутые » функции, я думаю, что это разумный вариант для рассмотрения.

Если вы планируете использовать ZFS, я бы порекомендовал ~ 1 ГБ ОЗУ на ТБ используемой памяти ... например: для зеркала с жесткими дисками по 2 ТБ, я бы рекомендовал не менее 4 ГБ ОЗУ.

Вы увидите аргументы, что вы « не должны использовать ZFS без ECC RAM », но это в значительной степени пугающе ... ECC RAM никогда не повредит - но если у вас его нет (например: стоимость), то вы все равно лучше отключить использование технологии, такой как ZFS.

Альтернативы включают использование LVM, но я продолжу руководство с ZFS ...

Определить диски

Вам нужно будет определить, на каких дисках находятся ваши данные. Используйте, lsblkчтобы сузить поиск ... здесь, я установил Ubuntu на sda, в то время как sdbи sdcмои « Данные диски». Вы можете видеть, что sda1установлено в /то время как sdb1и sdc1не установлены.

$ lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT loop0 7:0 0 1.6M 1 loop /snap/gnome-calculator/154 loop1 7:1 0 3.3M 1 loop /snap/gnome-system-monitor/36 loop2 7:2 0 21M 1 loop /snap/gnome-logs/25 loop3 7:3 0 86.6M 1 loop /snap/core/4486 loop4 7:4 0 140M 1 loop /snap/gnome-3-26-1604/59 loop5 7:5 0 12.2M 1 loop /snap/gnome-characters/69 sda 8:0 0 10G 0 disk └─sda1 8:1 0 10G 0 part / sdb 8:16 0 5G 0 disk └─sdb1 8:17 0 5G 0 part sdc 8:32 0 5G 0 disk └─sdc1 8:33 0 5G 0 part 

Смонтируйте ваш диск с данными

Раздел NTFS, который был частью зеркального набора, теперь можно монтировать во временном расположении. Используйте -o roдля монтирования только для чтения, предотвращая случайные записи.

$ mkdir /media/old_ntfs $ mount -o ro /dev/sdc1 /media/old_ntfs 

Установка и настройка ZFS

ZFS не устанавливается по умолчанию, поэтому вам нужно установить его.

$ apt install zfsutils-linux 

Существует множество руководств по настройке ZFS, поэтому я собираюсь сделать очень краткое введение здесь ... вы можете исследовать эту ashiftопцию, используя значение 12 для дисков с 4k-секторами - я собираюсь оставить это из

Создать пул из одного диска - tankэто имя пула, -fвынуждающее его перезаписывать существующую файловую систему NTFS ( уничтожая данные на одном из зеркальных дисков ), и вам нужно сделать это как root (например:) sudo:

$ zpool create -f tank /dev/sdb 

С помощью zfs statusвы можете увидеть детали вашего пула ZFS:

$ zpool status pool: tank state: ONLINE scan: none requested config:  NAME STATE READ WRITE CKSUM tank ONLINE 0 0 0 sdb ONLINE 0 0 0 

Теперь zfs listвы можете видеть ваш пул ZFS, смонтированный на /tank:

$ zfs list NAME USED AVAIL REFER MOUNTPOINT tank 84K 4.81G 24K /tank 

Скопируйте файлы

Вы можете изменить разрешения для пула, а затем скопировать файлы, используя инструмент, подобный следующему rsync:

$ chown $(id -u):$(id -g) /tank $ rsync -av /media/old_ntfs/ /tank/ # trailing slashes are important! 

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

Размонтировать старый NTFS

Размонтируйте старую файловую систему NTFS из ее временного местоположения и приведите в порядок:

$ umount /media/old_ntfs $ rm -rf /media/old_ntfs 

Добавьте второй диск в ZPool

Теперь, когда у нас есть файлы в ZFS, мы можем добавить второй диск, чтобы превратить его в зеркало:

$ zpool attach -f tank sdb sdc $ zpool status pool: tank state: ONLINE scan: resilvered 1.00G in 0h0m with 0 errors on Sun Jun 3 11:20:49 2018 config:  NAME STATE READ WRITE CKSUM tank ONLINE 0 0 0 mirror-0 ONLINE 0 0 0 sdb ONLINE 0 0 0 sdc ONLINE 0 0 0 

Это, вероятно, займет некоторое время для вас.

Вау, спасибо за подробный ответ, невероятно полезный. Еще один вопрос, как я могу совместно использовать хранилище RAID с локальной сетью / клиентами Windows для использования? jimmy_terra 5 лет назад 0
Нет проблем. Посмотрите на настройку сервера "_samba_" - вокруг будет много руководств, возможно, даже кучка в сообществе SU. Attie 5 лет назад 0