У меня есть куча старых дисков 1T с массивом mdadm на них. Некоторое время они не работали, но вчера я подключил их к серверу, на котором запущена последняя версия Debian Jessie.
В конце концов, я собрал массив, но два диска отказались добавить его заново. Глядя на эти диски, оказалось, что я каким-то образом добавил устройства в массив, а не разделы (Linux RAID autodetect) (sdz, а не sdz1) - я получаю то, что кажется правильным для mdadm -E /dev/sdz
, но если я убегу mdadm -E /dev/sdz1
, Я получил mdadm: cannot open /dev/sdz1: No such device or address
.
Если посмотреть на это дальше, кажется, что разделы для этих двух дисков представляют собой специальные символьные устройства, а не специальные блоки:
root@comp:~# file /dev/sda1 # good drive
/dev/sda1: block special (8/225)
root@comp:~# file /dev/sdz1 # bad drive
/dev/sdz1: character special (8/209)
Даже после обнуления всего плохого диска с помощью dd и воссоздания разделов с помощью fdisk они все равно возвращаются тем же способом! Что тут происходит?
Изменить: вот что ls говорит об этих устройствах:
root@comp:~# ls -l /dev/sdz*
brw-rw---- 1 root disk 65, 0 Feb 1 15:02 /dev/sdz
cr-------- 1 root root 65, 1 Jan 31 18:31 /dev/sdz1
E2: Соответствующие номера из / proc / partitions:
root@comp:~# cat /proc/partitions | egrep 'sdz|sda'
65 0 976762584 sdz
65 32 976762584 sda
65 33 976760832 sda1
Я не понимаю, почему здесь не отображается раздел SDZ.
Удаление / dev / sdz1 (раздел символьного устройства) с помощью rm /dev/sdz1
, а затем позвонив partprobe /dev/sdz
заставил новый раздел отображаться правильно.
У меня нет объяснения, почему это произошло изначально, но это решение сработало для меня.