3

У меня на сервере CentOS 4.x запущен программный рейд. На сервере есть два scsi-диска в лотках горячей замены. mdadm сообщает, что рейд провалился, и поэтому я хотел бы заменить его.

Я изучаю /proc /mdstat, который говорит мне, что на моих двух raid-устройствах есть компоненты на дисках sda и sdb. Это также говорит мне, что SDB является тем, который потерпел неудачу.

Я проверяю /proc /scsi /scsi, который говорит мне, что у меня есть два физических устройства с идентификаторами SCSI 0 0 0 0 и 0-0-1-0.

Поскольку я хочу сделать изменение горячим, я предполагаю, что SDB 0-0-1-0. Поэтому я говорю:

# echo "scsi remove-single-device 0 0 1 0" > /proc/scsi/scsi

... и компьютер barfs, потому что sda был только что удален, оставив систему без действительных дисков.

Теперь, подумав, я попал в этот беспорядок, когда в последний раз выходил из строя диск, это был sda/0-0-0-0, и я сделал это по-старому - остановил компьютер, вынул неисправный диск затем загрузитесь с выжившим в его старом слоте. Это оставило меня с компьютером, который думал, что sda был 0-0-1-0. Затем я получил и вставил, горячий, замена, и добавил это так:

# echo "scsi add-single-device 0 0 0 0" > /proc/scsi/scsi

... который работал, что означало, что я мог применить метку диска, раздел и восстановить мои raid-массивы. Это также означало, что компьютер считает, что SDB 0-0-0-0. Теперь SDB умирает снова (350 дней спустя, но это еще одна проблема), и я все это забыл.

Так. Если предположить, что и моя память, и мои навыки ведения документации не достаточны для напоминания о том, что это произошло, есть ли способ в будущем сравнить имена устройств scsi (0-0- $ n-0) и связать их с именованными устройствами (сд $ х)?

1 ответ1

5

Вы можете посмотреть в /sys/block/sda/device, which will have a symlink starting with scsi_device которая идентифицирует устройство:

$ ls -d /sys/block/sda/device/scsi_device*
/sys/block/sda/device/scsi_device:0:0:0:0

Или вы можете посмотреть в /sys/bus/scsi/devices:

$ ls /sys/bus/scsi/devices/
0:0:0:0  1:0:0:0  2:0:0:0  3:0:0:0  7:0:0:0  8:0:0:0

Каждая запись здесь представляет устройство SCSI. Внутри каждого каталога есть символическая ссылка, начинающаяся с block:, которая идентифицирует соответствующее блочное устройство:

$ ls -d /sys/bus/scsi/devices/0\:0\:0\:0/block*
/sys/bus/scsi/devices/0:0:0:0/block:sda

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .