fdisk не может найти USB-накопитель
Проблема с USB-накопителем в Linux стоила мне больше одного дня: dmesg
говорит, что USB обнаружен, но fdisk -l
не могу найти USB-накопитель.
Мое ядро 2.4.32.
Информацию об этом USB-накопителе также можно найти через proc
:
# cat /proc/scsi/usb-storage-0/0
Host scsi0: usb-storage
Vendor: USB 2.0
Product: USB Flash Drive
Serial Number: 00000000001485
Protocol: Transparent SCSI
Transport: Bulk
GUID: 048d11670000000000001485
Attached: Yes
lsmod
показывает:
# lsmod | grep usb
usb-storage 27800 0
usbcore 56864 0 [ehci-hcd uhci usb-storage]
scsi_mod 108120 1 [usb-storage]
SCSI
# cat /proc/scsi/scsi
Attached devices:
Host: scsi0 Channel: 00 Id: 00 Lun: 00
Vendor: USB 2.0 Model: USB Flash Drive Rev: 0.00
Type: Direct-Access ANSI SCSI revision: 02
"fdisk -l /dev/sda" мне ничего не дает, а "strace fdisk -l /dev/sda" показывает мне:
open("/dev/sda", O_RDONLY|O_LARGEFILE) = -1 ENXIO (No such device or address)
хвост dmesg
hub.c: new USB device 00:1d.7-2, assigned address 2
usb.c: kmalloc IF af910660, numif 1
usb.c: new device strings: Mfr=1, Product=2, SerialNumber=3
usb.c: USB device number 2 default language ID 0x409
Manufacturer: USB 2.0
Product: USB Flash Drive
SerialNumber: 00000000001485
scsi0 : SCSI emulation for USB Mass Storage devices
Vendor: USB 2.0 Model: USB Flash Drive Rev: 0.00
Type: Direct-Access ANSI SCSI revision: 02
WARNING: USB Mass Storage data integrity not assured
USB Mass Storage device found at 2
usb.c: usb-storage driver claimed interface af910660
usb.c: kusbd: /sbin/hotplug add 2
hub.c: port 3, portstatus 100, change 0, 12 Mb/s
hub.c: port 4, portstatus 100, change 0, 12 Mb/s
hub.c: port 5, portstatus 100, change 0, 12 Mb/s
hub.c: port 6, portstatus 100, change 0, 12 Mb/s
hub.c: port 7, portstatus 100, change 0, 12 Mb/s
hub.c: port 8, portstatus 100, change 0, 12 Mb/s
3 ответа
Наконец-то я решил эту проблему!:-П
Оказалось, что я insmod scsi_mod.o
а также sd_mod.o
, но ядро уже поддерживало SCSI.
вздох ~
Я также обнаружил, что scsi_mod должен быть insmod
редактируется до sd_mod, а ehci_hcd.o до usb-storage.o. Если нет, то dmesg скажет usb.c: USB device not accepting new address=2 (error=-71)
,
Посмотрите внимательнее на dmesg, когда вы вставляете usbstick - я думаю, что t не будет зависеть от /dev/sda.
"ядро 2.4.32" - правда? Разве вы не можете использовать что-то более современное?
Вы пробовали смотреть на "cat /proc/scsi/scsi"? Как насчет "fdisk -l / dev / sda"?
Сам по себе "fdisk -l" не всегда пробует все дисковые устройства в системе. Предоставление ему определенного устройства заставит его посмотреть на это и сообщить вам таблицу разделов.