Fdisk ne peut pas trouver le stockage USB

Un problème avec le stockage USB dans Linux m'a coûté plus d'un jour: dmesg indique que l'USB est détecté, mais fdisk -l ne peut pas trouver le stockage USB.

Mon noyau est 2.4.32.

L'information sur ce stockage USB peut également être trouvée via 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 montre:

 # 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" ne me donne rien, et "strace fdisk -l / dev / sda" me montre:

 open("/dev/sda", O_RDONLY|O_LARGEFILE) = -1 ENXIO (No such device or address) 

Queue de 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 

Enfin, j'ai résolu ce problème! 😛

Il s'est avéré que je insmod scsi_mod.o et sd_mod.o , mais le noyau avait déjà pris en charge SCSI.

Soupir ~

J'ai également trouvé que scsi_mod devrait être insmod 'ed avant sd_mod, et ehci_hcd.o avant usb-storage.o. Sinon, dmesg dira usb.c: USB device not accepting new address=2 (error=-71) .

"Noyau est 2.4.32" – vraiment? Ne peux-tu pas utiliser quelque chose d'un peu plus moderne?

Avez-vous essayé de regarder "cat / proc / scsi / scsi"? Que diriez-vous de "fdisk -l / dev / sda"?

"Fdisk -l" seul ne tente pas toujours tous les périphériques de type disque dans le système. En lui donnant un périphérique spécifique, il sera forcé à regarder cela et à vous dire sa table de partition.

Regardez de plus près à dmesg lorsque vous insérez le usbstick – ma supposition est que t ne se débrouille pas sur / dev / sda.