В настоящее время я создаю сервер 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
Попробуйте так:
- Запустить убунту
- Запустите терминал и напишите
- Sudo пароль root
- mdadm –create /dev/md0 -- level=1 --raid-devices=2 /dev/sda1 отсутствует
- mdadm –create /dev/md1 -- level=1 --raid-devices=2 /dev/sdb1 отсутствует
- Установите 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