OVH Cloud OVH Cloud

udev et lecteur de cartes

4 réponses
Avatar
Christophe PEREZ
Bonjour,

J'aimerais des avis, voire mêmes des idées d'utilisateurs
expérimentés de udev pour nommer mes périphériques usb créés par udev
pour mon lecteur de cartes.

Je voudrais en effet nommer ces lecteurs (4) de manière fixe pour en
faire un montage automatique (supermount).

Naturellement, ils sont nommés /dev/sdX avec X étant 4 lettres
consécutives, ex : sda, sdb, sdc, sdd
Or, ils n'ont évidemment pas nécessairement ces lettres là si d'autres
périphériques usb connectés avant.
Et comme dans /proc/bus/usb/devices, il ne s'agit que d'un seul
périphérique, je ne peux différencier de VendorId ou ProdId.
Je ne parviens pas à trouver parmis les paramètres %k etc.. ce qui
pourrait me convenir, %n n'étant pas utilisable.

Pour l'instant, j'ai quelque chose du genre :
BUS="usb", KERNEL="sd[a-z]", SYSFS{idProduct}="0710",
SYSFS{idVendor}="05e3", NAME="%k", SYMLINK="lecteur-%k"
mais ça me crée un /dev/lecteur-X, avec X dépendant justement l'ordre
de connexion de mes périphériques usb, et moi, je voudrais quelque chose
de fixe, donc indépendant de cet ordre pour l'indiquer dans mon fstab.

Je suis preneur de la moindre idée.

Merci d'avance.

--
Christophe PEREZ
Écrivez moi sans _faute !

4 réponses

Avatar
Christophe PEREZ
Le Sat, 09 Jul 2005 03:08:54 -0400, Christophe PEREZ a écrit:

Je suis preneur de la moindre idée.


Ben en fait, j'ai posté une fois de plus trop vite.
Je peux en effet utiliser %m qui me donne 16,32,48 et 64
Donc dans mon cas les "symlink" /dev/lecteur-{16,32,48,64}

Ou encore, faire 4 lignes dans ma config udev, chacune testant le
SYSFS{dev}="8:16", "8:32", "8:48" et "8:64" et affecter mes lettres a, b,
c et d, ce qui me donne /dev/lecteur-{a,b,c,d}.

Bon, ça ne dit pas pour autant dans quelle "fente" est introduite la
carte mémoire, mais bon...

Par contre, il me reste un problème plus important, pas lié à udev lui,
c'est que je suis incapable de monter ces lecteurs.
Je mets une carte mémoire dedans, et je fais :
# mount /dev/lecteur-a lect-a
mount: vous devez spécifier le type de système de fichiers

Alors, je tente :
# mount -t vfat /dev/lecteur-a lect-a
mount: type de sys. de fichiers erroné, option erronée, super bloc erroné sur /dev/lecteur-a,
ou trop de systèmes de fichiers montés

Pas bien bon tout ça. Cette même carte mémoire étant lisible par le
biais de la connexion de l'appareil photo numérique lui même, en vfat.

--
Christophe PEREZ
Écrivez moi sans _faute !

Avatar
gadget
Bonjour

Le Sat, 09 Jul 2005 03:30:11 -0400, Christophe PEREZ nous a fait l'honneur
de nous gratifier de la remarque suivante :

Par contre, il me reste un problème plus important, pas lié à udev lui,
c'est que je suis incapable de monter ces lecteurs.
Je mets une carte mémoire dedans, et je fais :
# mount /dev/lecteur-a lect-a
mount: vous devez spécifier le type de système de fichiers

Alors, je tente :
# mount -t vfat /dev/lecteur-a lect-a
mount: type de sys. de fichiers erroné, option erronée, super bloc erroné sur /dev/lecteur-a,
ou trop de systèmes de fichiers montés

Pas bien bon tout ça. Cette même carte mémoire étant lisible par le
biais de la connexion de l'appareil photo numérique lui même, en vfat.


ta carte ne searait-elle pas partitionnée ?
le device à monter dans ce cas plutot /dev/lecteur-a1 ou autre.
que donne la sortie de dmesg apres l'insertion de la carte ?
s'il y a une ligne
sdc: sdc1 sdc2 sdc3
c'est que la carte a 3 partitions.

--
Gadget
(5710)
Le superflu, chose très nécessaire.
-+- Voltaire, Satires -+-

Avatar
Christophe PEREZ
Le Sat, 09 Jul 2005 10:26:41 +0200, gadget a écrit:

ta carte ne searait-elle pas partitionnée ?


Je ne sais pas, mais je ne le pense pas.

le device à monter dans ce cas plutot /dev/lecteur-a1 ou autre.
que donne la sortie de dmesg apres l'insertion de la carte ?


Ben, à l'insertion de la carte, rien.

A la connexion du lecteur, j'ai :
usb 1-1: USB disconnect, address 20
usb 1-1: new full speed USB device using uhci_hcd and address 21
scsi17 : SCSI emulation for USB Mass Storage devices
usb-storage: device found at 21
usb-storage: waiting for device to settle before scanning
Vendor: Generic Model: STORAGE DEVICE Rev: 9144
Type: Direct-Access ANSI SCSI revision: 00
Attached scsi removable disk sdb at scsi17, channel 0, id 0, lun 0
Vendor: Generic Model: STORAGE DEVICE Rev: 9144
Type: Direct-Access ANSI SCSI revision: 00
Attached scsi removable disk sdc at scsi17, channel 0, id 0, lun 1
Vendor: Generic Model: STORAGE DEVICE Rev: 9144
Type: Direct-Access ANSI SCSI revision: 00
Attached scsi removable disk sdd at scsi17, channel 0, id 0, lun 2
Vendor: Generic Model: STORAGE DEVICE Rev: 9144
Type: Direct-Access ANSI SCSI revision: 00
Attached scsi removable disk sde at scsi17, channel 0, id 0, lun 3
usb-storage: device scan complete

Ce qui me crée les fameux /dev/sdX, et les liens symboliques associés
créés par ma règle udev /dev/lecteur-{a,b,c,d}.

s'il y a une ligne
sdc: sdc1 sdc2 sdc3
c'est que la carte a 3 partitions.


Oui, ça je sais bien, c'est bien le principe que j'utilise pour mes clés
usb, mais le lecteur de carte, c'est le premier que je touche, et je ne
connais pas bien le principe.
Peut-être justement aurait-il du me créer un /dev/sdX1 à l'insertion de
la carte si elle est partitionnée, mais ce n'est pas le cas.

J'aimerais bien qu'un utilisateur de lecteur usb de cartes mémoire
m'indique comment ça se passe pour lui dans le principe.

--
Christophe PEREZ
Écrivez moi sans _faute !

Avatar
Christophe PEREZ
Le Sat, 09 Jul 2005 15:57:46 -0400, Christophe PEREZ a écrit:

Peut-être justement aurait-il du me créer un /dev/sdX1 à l'insertion de
la carte si elle est partitionnée, mais ce n'est pas le cas.


Ah ben mince, je découvre que la partition, et donc le /dev/sdX1,
apparaît lorsque je fais un fdisk -l /dev/sdX
Mais comment automatiser ça ?

Ceci dit, il semblerait qu'en connectant le lecteur avec la carte déjà
insérée, le partionnement soit détecté.
Mais, ça ne règle pas vraiment mon problème puisqu'en fait, le
/dev/sdX1 ne génère pas le SYSFS{dev} sur lequel je me basais pour avoir
un "device" de nom fixe.
Je tourne en rond...

--
Christophe PEREZ
Écrivez moi sans _faute !