LINUX.ORG.RU
ФорумAdmin

ОС не видит разделы sfdisk при восстановлении raid 1(mdadm)

 , ,


0

1

Добрый день. На сервере вышел из строя ссд диск в софт рейде1(mdadm).

Linux 4.9.0-11-amd64 #1 SMP Debian 4.9.189-3+deb9u1 (2019-09-20) x86_64 GNU/Linux
/dev/nvme1n1 - рабочий
/dev/nvme0n1 - поврежденный
  1. Извлек диск из всех массивов:
mdadm --manage /dev/mdX --fail /dev/nvme0n1
mdadm --manage /dev/mdX --remove /dev/nvme0n1
  1. Поддержка из ДЦ заменила диск по запросу, Debian его увидел.

  2. Создаю разделы на новом диске:

sfdisk -d /dev/nvme1n1 | sfdisk --force /dev/nvme0n1

Ошибок при выполнении нет.

  1. Проверяю таблицы, все ок:

fdisk -l | grep dev

Disk /dev/nvme1n1: 477 GiB, 512110190592 bytes, 1000215216 sectors
/dev/nvme1n1p1          2048   16779263  16777216     8G fd Linux raid autodetect
/dev/nvme1n1p2      16779264   17827839   1048576   512M fd Linux raid autodetect
/dev/nvme1n1p3      17827840 1000213167 982385328 468.4G fd Linux raid autodetect
Disk /dev/nvme0n1: 477 GiB, 512110190592 bytes, 1000215216 sectors
/dev/nvme0n1p1          2048   16779263  16777216     8G fd Linux raid autodetect
/dev/nvme0n1p2      16779264   17827839   1048576   512M fd Linux raid autodetect
/dev/nvme0n1p3      17827840 1000213167 982385328 468.4G fd Linux raid autodetect
Disk /dev/md1: 511 MiB, 535822336 bytes, 1046528 sectors
Disk /dev/md2: 468.3 GiB, 502845997056 bytes, 982121088 sectors
Disk /dev/md0: 8 GiB, 8580497408 bytes, 16758784 sectors

Зеркально как на уцелевшем диске

  1. Добавляю в массив:
mdadm --manage /dev/md0 --add /dev/nvme0n1p1
mdadm: Cannot find /dev/nvme0n1p1: No such file or directory

Проверяю разделы еще раз через fdisk -l они есть,

проверяю через lsblk - видит только диск, без разделов.

NAME        MAJ:MIN RM   SIZE RO TYPE  MOUNTPOINT
nvme1n1     259:0    0   477G  0 disk  
├─nvme1n1p1 259:1    0     8G  0 part  
│ └─md0       9:0    0     8G  0 raid1 [SWAP]
├─nvme1n1p2 259:2    0   512M  0 part  
│ └─md1       9:1    0   511M  0 raid1 /boot
└─nvme1n1p3 259:3    0 468.4G  0 part  
  └─md2       9:2    0 468.3G  0 raid1 /
nvme0n1     259:4    0   477G  0 disk  

Т.е. получается на диске они есть, но ядро их не видит.

Попробовал обновить через partprobe /dev/nvme0n1 - результата нет.

Куда копать подскажите пжл?

В dmesg что-нибудь интерестное есть? Особенно про схему разметки диска. Ядро, вроде, не всегда понимает, что нужно не просто перечитать таблицу разделов, а начать использовать другую (MBR->GPT). Только перезагрузка в этом случае.

mky ★★★★★ ()
Последнее исправление: mky (всего исправлений: 1)
Ответ на: комментарий от mky

Перезагрузка не помогла.

В dmesg вижу следующее похожее на разделы:

[  135.481551]  nvme0n1: p1 p2 p3
[  135.525526]  nvme0n1: p1 p2 p3
[  135.545534]  nvme0n1: p1 p2 p3

Но в дев пусто:

/dev/nvme0n1    /dev/nvme1n1    /dev/nvme1n1p1  /dev/nvme1n1p2  /dev/nvme1n1p3

Может попробовать склонировать через dd, как думаете?

Полный вывод fdisk -l:

Disk /dev/nvme1n1: 477 GiB, 512110190592 bytes, 1000215216 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0xbacfff57

Device         Boot    Start        End   Sectors   Size Id Type
/dev/nvme1n1p1          2048   16779263  16777216     8G fd Linux raid autodetect
/dev/nvme1n1p2      16779264   17827839   1048576   512M fd Linux raid autodetect
/dev/nvme1n1p3      17827840 1000213167 982385328 468.4G fd Linux raid autodetect


Disk /dev/nvme0n1: 477 GiB, 512110190592 bytes, 1000215216 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0xbacfff57

Device         Boot    Start        End   Sectors   Size Id Type
/dev/nvme0n1p1          2048   16779263  16777216     8G fd Linux raid autodetect
/dev/nvme0n1p2      16779264   17827839   1048576   512M fd Linux raid autodetect
/dev/nvme0n1p3      17827840 1000213167 982385328 468.4G fd Linux raid autodetect


Disk /dev/md1: 511 MiB, 535822336 bytes, 1046528 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes


Disk /dev/md2: 468.3 GiB, 502845997056 bytes, 982121088 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes


Disk /dev/md0: 8 GiB, 8580497408 bytes, 16758784 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes

lsblk

NAME        MAJ:MIN RM   SIZE RO TYPE  MOUNTPOINT
nvme1n1     259:0    0   477G  0 disk  
├─nvme1n1p1 259:1    0     8G  0 part  
│ └─md0       9:0    0     8G  0 raid1 [SWAP]
├─nvme1n1p2 259:2    0   512M  0 part  
│ └─md1       9:1    0   511M  0 raid1 /boot
└─nvme1n1p3 259:3    0 468.4G  0 part  
  └─md2       9:2    0 468.3G  0 raid1 /
nvme0n1     259:4    0   477G  0 disk 
dert12 ()