Использование mdadm - массив RAID1 не зеркалирует другой диск

Использование mdadm - массив RAID1 не зеркалирует другой диск

В настоящее время я создаю сервер nextcloud на Ubuntu 20.04. У меня есть один диск для ОС, чтобы запустить его на жестком диске 320 ГБ. И я хочу, чтобы каталог данных был в массиве raid1, потому что если один диск выйдет из строя, у нас все еще будет другой диск с данными. Поэтому я получил 2 жестких диска по 500 ГБ в массиве raid1 на /dev/md0.

Когда я бегу:cat /proc/mdstat

Personalities : [raid1] [linear] [multipath] [raid0] [raid6] [raid5] [raid4] [raid10]
md0 : active raid1 sdb[0] sdc[1]
      488254464 blocks super 1.2 [2/2] [UU]
      bitmap: 0/4 pages [0KB], 65536KB chunk

unused devices: <none>

он говорит, что он активен, когда я запускаю: sudo mdadm --detail /dev/md0

/dev/md0:
           Version : 1.2
     Creation Time : Fri Aug 14 16:50:18 2020
        Raid Level : raid1
        Array Size : 488254464 (465.64 GiB 499.97 GB)
     Used Dev Size : 488254464 (465.64 GiB 499.97 GB)
      Raid Devices : 2
     Total Devices : 2
       Persistence : Superblock is persistent

     Intent Bitmap : Internal

       Update Time : Sat Aug 15 14:50:13 2020
             State : clean
    Active Devices : 2
   Working Devices : 2
    Failed Devices : 0
     Spare Devices : 0

Consistency Policy : bitmap

              Name : nextcloudserver:0  (local to host nextcloudserver)
              UUID : e525d3e8:2d738f44:59d495fa:2fdcce41
            Events : 9032

    Number   Major   Minor   RaidDevice State
       0       8       16        0      active sync   /dev/sdb
       1       8       32        1      active sync   /dev/sdc

он говорит, что состояние чистое. Разве он не должен быть повторно синхронизирован?

Sudo mdadm --detail /dev/md0

mdadm: No md superblock detected on /dev/md0.

Я что-то пропустил?

Итак, /dev/md0 смонтирован на /mnt/raid1. Я создал текстовый файл в /mnt/raid1. Когда я выключаю ПК, подключаю один жесткий диск в массиве raid1 и загружаю ПК. Я не могу найти текстовый файл, который я создал в /mnt/raid1.

А если я запускаю cat /proc/mdstat, то он говорит, что статус неактивен

Так что может ли кто-нибудь помочь мне с зеркалированием дисков. Так что если один из них выйдет из строя, nextcloud все равно будет иметь дату на другом диске.

Любая помощь будет оценена по достоинству, спасибо заранее

Вот инструкция, которой я следовал: (https://www.linuxbabe.com/linux-server/linux-software-raid-1-setup)

У меня все работает до шага 5. После отключения одного из жестких дисков я больше не могу следовать инструкциям.

решение1

Вы можете сделать это принудительно. Думаю, команда была такой:

mdadm --assemble --force /dev/md0 /dev/sdb /dev/sdc

Однако люди создают разделы, а затем создают на них массив md0, поэтому команда будет выглядеть так:

mdadm --assemble --force /dev/md0 /dev/sdb1 /dev/sdc1

(Я не понял, но вы, возможно, создали его на сырых дисках...)

который предоставит вам ваши файлы.

Суть в том, что диск показывается неактивным, когда вы принудительно его устанавливаете, он будет отображаться дегрегадированным. Обычно, когда массив неактивен, вы должны использовать , mdadm --scan --detailчтобы выяснить, что происходит. Если диск вышел из строя, вы должны использовать , --failчтобы отобразить его как неисправный. А затем с помощью sgdiskкопирования таблицы gpt рабочего диска на новый диск и изменения uuid новых дисков и перестройки массива.

Но вы всегда можете принудительно создать массив на одном диске.

Большой проблемой здесь будет использование raid1 вместо надлежащего ежедневного резервного копирования. Raid предназначен для бесперебойной работы, и когда диск выходит из строя, /proc/mdstatэто отображается, и вы можете продолжить работу, даже если --failдиск и повторно синхронизируется, и он автоматически восстанавливается без остановки работы...

Проверь это:

https://www.thomas-krenn.com/en/wiki/Mdadm_recovery_and_resync

решение2

Ваш вывод cat /proc/mdstatпоказывает правильно функционирующий массив RAID 1.

md0 : active raid1 sdb[0] sdc[1]
      488254464 blocks super 1.2 [2/2] [UU]
      bitmap: 0/4 pages [0KB], 65536KB chunk

Здесь activeозначает, что он включен, с двумя дисками. Все, что вы пишете в md0, будет зеркалировано на оба диска.

В вашем mdadm --detailвыводе cleanозначает, что MD считает, что оба диска синхронизированы. Оба /proc/mdstatи mdadm --detailэто было бы показано resyncпосле того, как вы создали массив, пока он синхронизировал два диска, если только вы не использовали --assume-cleanв командной строке для mdadm create.

Последующие проблемы, я полагаю, все из-за того, что RAID-массив не запускается во время загрузки, и не монтируется созданная вами файловая система во время загрузки. Например, в вашем выводе ниже массив явно не запущен.

sudo mdadm --detail /dev/md0
mdadm: No md superblock detected on /dev/md0.

Если после запуска ваш массив не работает, вы можете собрать его вручную следующим образом:

mdadm --assemble /dev/md0 /dev/sdb /dev/sdc

Затем смонтируйте файловую систему.

mount /dev/md0 /mnt/raid1

Чтобы массив автоматически запускался при загрузке, нужно настроить in /etc/mdadm.conf. Самый простой способ — просто отправлять вывод mdadm --detail --scanтуда, когда массив работает.

mdadm --detail --scan >> /etc/mdadm.conf

Чтобы смонтировать файловую систему при загрузке, добавьте ее в /etc/fstab. Следуйте инструкциям там или сделайте ее похожей на одну из других записей.

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

решение3

Попробуйте так:

  1. Запустить убунту
  2. Запустите терминал и напишите
  • Sudo пароль root
  • mdadm –create /dev/md0 -- level=1 --raid-devices=2 /dev/sda1 отсутствует
  • mdadm –create /dev/md1 -- level=1 --raid-devices=2 /dev/sdb1 отсутствует
  1. Установите linux. Выбор 1 raid. Если вы получите ошибку в середине процесса, то напишите в терминале следующее:

Ls -l /dev/sd*

mdadm --create --verbose /dev/md0 --level=1 --raid-devices=2 /dev/sda1 /dev/sdb1

Важно: DEV — это USB-ключ.

дф -х

mount --bind /dev /target/dev mount --bind /sys /target/sys mount --bind /proc /target/proc cp /etc/resolv.conf /target/etc/resolv.conf chroot /target/ apt install mdadm grub-install /dev/sda exit then joust restart Linux.

Если вы хотите добавить диск в ту же группу (md0), то используйте эту команду:

sudo mdadm --add /dev/md0 /dev/sdc2

решение4

[РЕШЕНО]

Итак, когда я отключил один диск. Я хотел увидеть данные на другом диске. Я отключил один жесткий диск, запустил cat /proc/mdstat, он сказал, что он активен.

тогда я попробовал

sudo mdadm -S /dev/md0 чтобы остановить это

затем

sudo mdadm -A /dev/md0 чтобы активировать его

и снова монтируем файловую систему sudo mount /dev/md0 /mnt/raid1

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