1

Я использую Raspberry Pi с Raspbian (Linux на основе Debian Wheezy) в качестве NAS (сетевого хранилища) с жестким диском USB, подключенным в качестве единственного USB-устройства.

Проблема, с которой я сталкиваюсь, заключается в том, что внешний жесткий диск USB находится в /dev/sda но самопроизвольно изменяется во время выполнения операционной системы на /dev/sdb без какой-либо причины. Затем при использовании его в /dev/sdb он возвращается к /dev/sda . Это также происходит при копировании большого количества данных, что приводит к ошибкам ввода-вывода. Иногда это занимает часы, но в противном случае это занимает минуты. - Это действительно жутко!

Конечно, я искал Интернет для подсказок, прежде чем просить здесь о помощи. Единственной интересной вещью, которую я нашел, была следующая ссылка: Linux: Запомните путь к USB-устройству - я следовал описанным шагам, и я публикую здесь вывод команд,

Команда 1: udevadm info -q all -p $(udevadm info -q path -n /dev/sda)

Выход 1:

P: /devices/platform/bcm2708_usb/usb1/1-1/1-1.3/1-1.3:1.0/host0/target0:0:0/0:0:0:0/block/sda
N: sda
S: disk/by-id/usb-WDC_WD25_00JS-40NGB2_8DC88D250088-0:0
S: disk/by-path/platform-bcm2708_usb-usb-0:1.3:1.0-scsi-0:0:0:0
E: DEVLINKS=/dev/disk/by-id/usb-WDC_WD25_00JS-40NGB2_8DC88D250088-0:0 /dev/disk/by-path/platform-bcm2708_usb-usb-0:1.3:1.0-scsi-0:0:0:0
E: DEVNAME=/dev/sda
E: DEVPATH=/devices/platform/bcm2708_usb/usb1/1-1/1-1.3/1-1.3:1.0/host0/target0:0:0/0:0:0:0/block/sda
E: DEVTYPE=disk
E: ID_BUS=usb
E: ID_INSTANCE=0:0
E: ID_MODEL=00JS-40NGB2
E: ID_MODEL_ENC=00JS-40NGB2\x20\x20\x20\x20\x20
E: ID_MODEL_ID=2336
E: ID_PART_TABLE_TYPE=dos
E: ID_PATH=platform-bcm2708_usb-usb-0:1.3:1.0-scsi-0:0:0:0
E: ID_PATH_TAG=platform-bcm2708_usb-usb-0_1_3_1_0-scsi-0_0_0_0
E: ID_REVISION=0100
E: ID_SERIAL=WDC_WD25_00JS-40NGB2_8DC88D250088-0:0
E: ID_SERIAL_SHORT=8DC88D250088
E: ID_TYPE=disk
E: ID_USB_DRIVER=usb-storage
E: ID_USB_INTERFACES=:080650:
E: ID_USB_INTERFACE_NUM=00
E: ID_VENDOR=WDC_WD25
E: ID_VENDOR_ENC=WDC\x20WD25
E: ID_VENDOR_ID=152d
E: MAJOR=8
E: MINOR=0
E: SUBSYSTEM=block
E: UDEV_LOG=3
E: UDISKS_ATA_SMART_IS_AVAILABLE=1
E: UDISKS_PARTITION_TABLE=1
E: UDISKS_PARTITION_TABLE_COUNT=1
E: UDISKS_PARTITION_TABLE_SCHEME=mbr
E: UDISKS_PRESENTATION_NOPOLICY=0
E: USEC_INITIALIZED=7853442

Команда 2: udevadm info -q all -p $(udevadm info -q path -n /dev/sdb)

Выход 2:

P: /devices/platform/bcm2708_usb/usb1/1-1/1-1.3/1-1.3:1.0/host2/target2:0:0/2:0:0:0/block/sdb
N: sdb
S: disk/by-id/usb-WDC_WD25_00JS-40NGB2_8DC88D250088-0:0
S: disk/by-path/platform-bcm2708_usb-usb-0:1.3:1.0-scsi-0:0:0:0
E: DEVLINKS=/dev/disk/by-id/usb-WDC_WD25_00JS-40NGB2_8DC88D250088-0:0 /dev/disk/by-path/platform-bcm2708_usb-usb-0:1.3:1.0-scsi-0:0:0:0
E: DEVNAME=/dev/sdb
E: DEVPATH=/devices/platform/bcm2708_usb/usb1/1-1/1-1.3/1-1.3:1.0/host2/target2:0:0/2:0:0:0/block/sdb
E: DEVTYPE=disk
E: ID_BUS=usb
E: ID_INSTANCE=0:0
E: ID_MODEL=00JS-40NGB2
E: ID_MODEL_ENC=00JS-40NGB2\x20\x20\x20\x20\x20
E: ID_MODEL_ID=2336
E: ID_PART_TABLE_TYPE=dos
E: ID_PATH=platform-bcm2708_usb-usb-0:1.3:1.0-scsi-0:0:0:0
E: ID_PATH_TAG=platform-bcm2708_usb-usb-0_1_3_1_0-scsi-0_0_0_0
E: ID_REVISION=0100
E: ID_SERIAL=WDC_WD25_00JS-40NGB2_8DC88D250088-0:0
E: ID_SERIAL_SHORT=8DC88D250088
E: ID_TYPE=disk
E: ID_USB_DRIVER=usb-storage
E: ID_USB_INTERFACES=:080650:
E: ID_USB_INTERFACE_NUM=00
E: ID_VENDOR=WDC_WD25
E: ID_VENDOR_ENC=WDC\x20WD25
E: ID_VENDOR_ID=152d
E: MAJOR=8
E: MINOR=16
E: SUBSYSTEM=block
E: UDEV_LOG=3
E: UDISKS_ATA_SMART_IS_AVAILABLE=1
E: UDISKS_PARTITION_TABLE=1
E: UDISKS_PARTITION_TABLE_COUNT=1
E: UDISKS_PARTITION_TABLE_SCHEME=mbr
E: UDISKS_PRESENTATION_NOPOLICY=0
E: USEC_INITIALIZED=2425648913

Поэтому я попробовал хитрость и добавил строку BUS=="usb", ATTR{serial}=="WDC_WD25_00JS-40NGB2_8DC88D250088-0:0", NAME="sda" в файл /etc/udev/rules.d/10-usb-serial но, к сожалению, это также не решило проблему.

Я не знаю, важно ли это упоминать, но используемое внешнее запоминающее устройство USB состоит из двух идентичных жестких дисков размером 256 ГБ в корпусе с управлением JBOD . Это означает, что он выглядит как один жесткий диск размером 512 ГБ для операционной системы.

И теперь я с нетерпением жду любой помощи и / или предложений. - Заранее спасибо!

2 ответа2

0

Поскольку у меня не было дальнейших идей для решения этой проблемы, я просто использовал другой USB-кабель для подключения внешнего жесткого диска к Raspberry Pi, и теперь он работает должным образом. O_o Кажется, что предыдущий использованный USB-кабель был как-то неисправен.

Очевидно, что внешний жесткий диск ранее потерял связь с Raspberry Pi на короткое время. Операционная система тогда думала, что был подключен другой жесткий диск. В противном случае я не могу представить эту проблему.

Так что этот вопрос официально решен сейчас!

0

Учитывая, что это USB-накопитель, переключение между /dev/sda и /dev/sdb при загрузке не удивительно; это делает это во время обычных сессий, что может привести к подозрению в неправильной конфигурации usb либо на стороне RasPi, либо на самом физическом жестком диске (больше прошивки, которая контролирует 2 жестких диска в корпусе). Тем не менее, проверьте эту ссылку на UUID, это относится к разделам Linux EXT3 и, судя по вашему выводу, у вас есть разделы dos (что более вероятно, разделы FAT32), но вы должны быть в состоянии извлечь UUID с жесткого диска USB с помощью blkid Команда, как указано в статье. Вот несколько ссылок, если у вас возникли проблемы с получением UUID вашего раздела DOS.

ИМХО, если вы используете RasPi в качестве NAS, и USB-накопители не будут перемещены (т.е. USB-накопитель остается подключенным к RasPi 24/7), я бы порекомендовал вытащить жесткие диски из USB-корпуса и напрямую подключив их к RasPi (если вы можете), это позволит избежать проблем с вводом / выводом и увеличит пропускную способность ваших дисков (скорость SATA по сравнению со скоростью USB2).

Надеюсь, что это поможет.

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