[RÉSOLU]Lecteur de cartes mémoires visible dans /dev mais inaccessible

Lecteur de cartes mémoires visible dans /dev mais inaccessible [RÉSOLU] - Hardware - Linux et OS Alternatifs

Marsh Posté le 01-02-2007 à 12:39:37    

Bonjour!
 
Je suis sous debian 2.6.19, carte mère Asus P5B-VM (Intel 965G) + Core2Duo, KDE 3.5. Derniers udev + hal.
 
On m'a prêté un lecteur de cartes mémoires pour le tester avant achat.
Il est visible par lsusb: Bus 003 Device 004: ID 058f:6362 Alcor Micro Corp.
 
Dans /dev/disk/by-id, j'ai:  
file:///dev/disk/by-id/usb-Generic_USB_SM_Reader_058F312D81B
file:///dev/disk/by-id/usb-Generic_USB_MS_Reader_058F312D81B
file:///dev/disk/by-id/usb-Generic_USB_SD_Reader_058F312D81B
file:///dev/disk/by-id/usb-Generic_USB_CF_Reader_058F312D81B
 
Si je fais ls /dev/sd* j'ai /dev/sdd /dev/sde /dev/sdf et /dev/sdg qui sont apparus.
 
Mais si j'introduis une carte SDHC rien ne se passe. Le contenu de ls /dev/sd* ne change pas contrairement à certains chez qui /dev/sdd1 apparaît. Donc la commande "mount -t vfat /dev/sd?? /mnt/usb -o umask=0" ne marche pas chez moi, même si j'ai bien créé /mnt/usb, et j'ai essayé toutes les combinaisons /dev/sdd1 /dev/sde1 /dev/sdf1 /dev/sdg1,  /dev/sdd /dev/sde /dev/sdf /dev/sdg.
J'ai aussi essayé de booter avec la carte SD dans le lecteur et dans ce cas il y a blocage au boot: Auto-detecting USB mass-storage devices.
devices #01
Et là rien ne se passe.
 
J'ai passé pas mal de temps sur google et aucune des solutions ne marche chez moi.
Maintenant je sèche.


Message édité par Louvre le 01-02-2007 à 17:02:46
Reply

Marsh Posté le 01-02-2007 à 12:39:37   

Reply

Marsh Posté le 01-02-2007 à 12:57:59    

Il y a du nouveau. Avec la commande "mount -t vfat /dev/sdd /mnt/usb -o umask=0" j'obtiens: mount: /dev/sdd n'est pas un périphérique valide de type bloc
Et ceci que la carte soit insérée ou non. D'après mes recherches via google, le lecteur de cartes SDHC est censé être le premier des quatre, donc /dev/sdd chez moi, /dev/sda /dev/sdb et /dev/sdc étant des disques durs.
Mais quand je monte les trois autres lecteurs de cartes (e, f et g), j'obtiens: mount: Aucun medium trouvé


Message édité par Louvre le 01-02-2007 à 13:07:19
Reply

Marsh Posté le 01-02-2007 à 14:00:37    

Huuuuum
 
Il faut monter la partition, pas le disque dur.
Essayes mount -t vfat /dev/sdd1 /mnt/usb


---------------
Décentralisons Internet-Bépo-Troll Bingo - "Pour adoucir le mélange, pressez trois quartiers d’orange !"
Reply

Marsh Posté le 01-02-2007 à 14:19:53    

Fork Bomb a écrit :

Huuuuum
 
Il faut monter la partition, pas le disque dur.
Essayes mount -t vfat /dev/sdd1 /mnt/usb


 
Oui, c'est ce que j'ai essayé en premier, et j'obtiens: mount: périphérique spécial /dev/sdd1 n'existe pas
J'ai juste vu quelque chose de différent avec /dev/sdd et je l'ai indiqué.
Maintenant je suis en train de lire un article sur les rules dand /etc/udev. Je pense que c'est la bonne solution.

Reply

Marsh Posté le 01-02-2007 à 15:58:19    

La page magique qui donne les bons conseils: http://www.debian-administration.org/articles/126
 
Après avoir branché mon lecteur de cartes, j'ai tapé dmesg dans une console root,  
J'ai cherché dans les messages ce qui correspondait:
scsi 12:0:0:0: Direct-Access     Generic  USB SD Reader    1.00 PQ: 0 ANSI: 0
sd 12:0:0:0: Attached scsi removable disk sdd
scsi 12:0:0:1: Direct-Access     Generic  USB CF Reader    1.01 PQ: 0 ANSI: 0
sd 12:0:0:1: Attached scsi removable disk sde
scsi 12:0:0:2: Direct-Access     Generic  USB SM Reader    1.02 PQ: 0 ANSI: 0
sd 12:0:0:2: Attached scsi removable disk sdf
scsi 12:0:0:3: Direct-Access     Generic  USB MS Reader    1.03 PQ: 0 ANSI: 0
sd 12:0:0:3: Attached scsi removable disk sdg
usb-storage: device scan complete
 
Generic => la marque
USB SD Reader => le nom du modèle d'un des 4 lecteurs inclus dans ce lecteur de cartes mémoires multi-formats. Il faut recopier les noms des 4 modèles dans le fichier suivant. On peut aussi trouver les noms des modèles dans /sys/bus/scsi/devices, dans les fichiers model.
sdd => le lecteur de cartes SD est sur /dev/sdd (en fait je ne me rappelle plus si c'était indiqué avant que je créée la règle udev, car le contenu de ce dmesg n'est pas celui obtenu avant la création de cette règle).
 
J'ai créé une nouvelle règle dans /etc/udev/rules.d : local.rules
Dans ce fichier, j'ai écrit ces règles:
 
BUS="scsi", SYSFS{model}=="USB SM Reader", NAME{all_partitions}="card_sm"
BUS="scsi", SYSFS{model}=="USB CF Reader", NAME{all_partitions}="card_cf"
BUS="scsi", SYSFS{model}=="USB SD Reader", NAME{all_partitions}="card_sd"
BUS="scsi", SYSFS{model}=="USB MS Reader", NAME{all_partitions}="card_ms"
 
J'ai sauvegardé ce fichier (au début j'avais oublié! Evidemment ça ne marchait pas!).
 
== et pas = comme indiqué sur le site en haut. Ça a changé depuis un an.
 
J'ai redémarré udev: /etc/init.d/udev restart
J'ai rebranché le lecteur.
J'ai maintenant:
/dev/sdg
/dev/sdf
/dev/sde
/dev/sdd
 
Ce n'est pas ce qui était prévu! Je devais obtenir /dev/card_sm1, /dev/card_cd1, /dev/card/sd1 and /dev/card_ms1
Je reste stoïque et je continue l'air de rien.
Maintenant il faut modifier /etc/fstab
Je rajoute ces lignes:
/dev/sdd1   /media/sd       vfat    rw,user,noauto  0       0
/dev/sde1   /media/cf       vfat    rw,user,noauto  0       0
/dev/sdf1   /media/sm       vfat    rw,user,noauto  0       0
/dev/sdg1   /media/ms       vfat    rw,user,noauto  0       0
 
Je sauvegarde fstab
 
Je créée les dossiers sd, cf, ms et sm dans /media
 
J'introduis la cartounette dans le lecteur...
 
Et rien! Evidemment.
 
Je fais un mount /media/sd comme recommandé sur le site, et rien ne se passe.
Et pourtant ma carte SDHC contient bien des photos lisibles sur mon Canon S3.

Reply

Marsh Posté le 01-02-2007 à 16:53:57    

J'ai essayé différentes versions du fichier de règles udev pour m'arrêter là:
BUS="scsi", KERNEL=="sd*", SYSFS{product}=="USB SM Reader", NAME{all_partitions}="card_sm%n", OPTIONS="all_partitions"
BUS="scsi", KERNEL=="sd*", SYSFS{product}=="USB CF Reader", NAME{all_partitions}="card_cf%n", OPTIONS="all_partitions"
BUS="scsi", KERNEL=="sd*", SYSFS{product}=="USB SD Reader", NAME{all_partitions}="card_sd%n", OPTIONS="all_partitions"
BUS="scsi", KERNEL=="sd*", SYSFS{product}=="USB MS Reader", NAME{all_partitions}="card_ms%n", OPTIONS="all_partitions"
 
Et finalement je me suis aperçu que ça passait, mais avec une carte SD, pas avec une carte SDHC.

Reply

Marsh Posté le 01-04-2007 à 06:37:40    

Chez moi, ça marche aussi sans l'option "all_partitions".
Quand il y a "NAME{all_partitions}", ça doit être redondant.
 
Ce qui m'a eu hier, en upgradant udev, c'est que le fichier principal de règles udev a changé de nom (udev.rules en 50-udev-default.rules) et s'est retrouvé devant mon fichier perso, dont les règles, du coup, étaient ignorées.


---------------
Legalize it @HFR
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed