Внешний usb3.0 диск останавливает mdadm, распознающий внутренний raid при загрузке - proUbuntu
0 голосов
/ 14 декабря 2017

Не уверен, если это связано с аппаратным или программным обеспечением, но я публикую здесь в надежде, что кто-то может указать мне в правильном направлении.

Назначение оборудования: Домашний NAS и хост KVM.

ОС: Ubuntu server 14.04 установлен на внутреннем SSD.

Внутренний Raid: жесткий диск 4 x 2 ТБ, 3,5 "в программном обеспечении mdadm raid 5, отформатированный в ext4.

Сервер также содержит карту PCI-Express USB3.0, к которой подключен портативный накопитель USB2.0 для резервного копирования ценных данных на основе cron. В этой конфигурации 3 года сервер работал нормально, но потом не сломался.

Последние изменения: портативный USB2.0 диск заменен портативным USB3.0 - Seagate Backup Plus Slim 2TB в формате ntfs. Этот диск работает без ошибок при подключении к рабочей станции, и если он подключен к карте USB3.0 на сервере после загрузки, его можно подключить вручную и получить к нему доступ.

Проблема: при загрузке все диски распознаются BIOS. O / S загружается с внутреннего SSD, но зависает после загрузки GRUB, заявляя, что внутренний RAID в / mnt / raidmount (моя точка монтирования) не может быть инициализирован.

дмесг | tail выдает ошибку суперблока в / dev / md0. Однако, когда внешний жесткий диск USB3.0 отключен и сервер перезагружен, все отлично работает, mdadm загружает рейд, и я могу получить доступ ко всем данным на нем без проблем. Это говорит о том, что с RAID нет проблем, но по какой-то причине он не отображается должным образом в ОС, когда подключен диск USB3.0.

Считая, что это может быть проблемой из-за недостаточного электропитания RAID-массива (USB3.0 потребляет больше энергии, чем USB2.0) Я обновил блок питания с 300 Вт до 450 Вт, но проблема сохраняется.

Я не нашел примеров этого в Google, и я застрял в том, что попробовать дальше. Я планирую в конечном итоге обновить серверную ОС до 16.04 и заменить рейд ext4 файловой системой ZFS для лучшего исправления ошибок, но если я не смогу с уверенностью сделать резервную копию содержимого RAID на внешний жесткий диск, я не смогу продолжить.

1 Ответ

0 голосов
/ 22 декабря 2017

Я нашел ответ на свой вопрос. Моя проблема была вызвана двумя причинами:

1. Ubuntu меняет назначение букв дисков при загрузке, когда USB-накопитель подключен

Без подключенного USB-накопителя Ubuntu назначил диски в моей системе следующим образом:

/dev/sda : RAID disk 1
/dev/sdb : RAID disk 2
/dev/sdc : RAID disk 3
/dev/sdd : RAID disk 4
/dev/sde : Operating System disk

С USB-накопителем, подключенным при загрузке, Ubuntu назначил диски следующим образом:

/dev/sda : USB connected drive
/dev/sdb : RAID disk 1
/dev/sdc : RAID disk 2
/dev/sdd : RAID disk 3
/dev/sde : RAID disk 4
/dev/sdf : Operating System disk

2. mdadm.conf специально ссылается на буквы дисков

Мой файл mdadm.conf в /etc/mdadm/mdadm.conf содержал следующую запись:

DEVICE /dev/sd[abcd]

Это вынудило mdadm использовать первые четыре буквы диска для объединения RAID-массива во время загрузки, что не удалось, когда USB-диск был подключен, потому что / dev / sda1 было назначено USB-накопителю довольно чем первый диск в массиве RAID. Поскольку mdadm использует суперблоки на каждом диске для хранения информации о членстве в RAID-массиве, указывать mdadm, какие диски использовать, обычно не нужно - mdadm просто посмотрит все доступные диски и соберет вместе RAID-массив самостоятельно.

Вместо этого мой файл mdadm.conf должен был содержать строку:

DEVICE partitions

Что говорит mdadm сканировать все разделы на всех дисках на наличие суперблоков, которые он использует для идентификации участников RAID. Это более надежно, позволяя Ubuntu назначать буквы дисков так, как считает нужным, и оставляя mdadm выполнять свою работу по объединению RAID-массива без ограничений.

Благодаря этому простому изменению проблема исчезла.

...