Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 04/06/2008, à 13:46

Eltche

Udev - disque dur externe non "mounté"

Bonjour,

Voila j'ai un disque dur externe usb. Lorsque je le branche sur mon pc portable, rien ne se passe. Habituellement il doit y avoir une fenêtre qui apparaît pour me demander ce que je veux faire (ouvrir dans une fenêtre, etc...) Mais là rien, alors qu'avec une clé usb cela fonctionne.

La commande dmesg m'indique que tout est OK et que mon périphérique est reconnu comme /dev/sdb. Je peux le monter manuellement avec la commande mount, mais ce n'est pas cela qui m'intéresse.

J'imagine qu'il faut aller voir du coté de Udev (ce que j'ai fais) mais je suis un peu perplexe devant les fichiers. Comment trouver les règles qui s'appliquent lorsque je branche/debranche mon disque dur externe? Comment faire pour qu'une fenêtre apparaisse et me demande quoi faire?

Merci

Hors ligne

#2 Le 04/06/2008, à 13:56

CedrX

Re : Udev - disque dur externe non "mounté"

Essayes déjà de voir si la commande

/usr/sbin/udevmonitor

te donne quelquechose dans une console lorsque tu branches ton disque dur ...

Hors ligne

#3 Le 04/06/2008, à 14:05

Eltche

Re : Udev - disque dur externe non "mounté"

Bonjour cedrX,
Oui j'ai déjà regardé.

$ sudo udevmonitor
[sudo] password for utilisateur:
udevmonitor will print the received events for:
UDEV the event which udev sends out after rule processing
UEVENT the kernel uevent

UEVENT[1212584371.641109] add      /devices/pci0000:00/0000:00:1d.7/usb2/2-1 (usb)
UEVENT[1212584371.641173] add      /class/usb_endpoint/usbdev2.8_ep00 (usb_endpoint)
UEVENT[1212584371.641194] add      /devices/pci0000:00/0000:00:1d.7/usb2/2-1/2-1:1.0 (usb)
UEVENT[1212584371.643733] add      /class/scsi_host/host10 (scsi_host)
UEVENT[1212584371.643776] add      /class/usb_endpoint/usbdev2.8_ep81 (usb_endpoint)
UEVENT[1212584371.643796] add      /class/usb_endpoint/usbdev2.8_ep02 (usb_endpoint)
UEVENT[1212584371.643813] add      /class/usb_device/usbdev2.8 (usb_device)
UDEV  [1212584371.646402] add      /devices/pci0000:00/0000:00:1d.7/usb2/2-1 (usb)
UDEV  [1212584371.648931] add      /class/usb_endpoint/usbdev2.8_ep00 (usb_endpoint)
UDEV  [1212584371.719346] add      /devices/pci0000:00/0000:00:1d.7/usb2/2-1/2-1:1.0 (usb)
UDEV  [1212584371.735344] add      /class/scsi_host/host10 (scsi_host)
UDEV  [1212584371.735383] add      /class/usb_endpoint/usbdev2.8_ep81 (usb_endpoint)
UDEV  [1212584371.735404] add      /class/usb_endpoint/usbdev2.8_ep02 (usb_endpoint)
UDEV  [1212584371.766045] add      /class/usb_device/usbdev2.8 (usb_device)
UEVENT[1212584378.621754] add      /devices/pci0000:00/0000:00:1d.7/usb2/2-1/2-1:1.0/host10/target10:0:0/10:0:0:0 (scsi)
UEVENT[1212584378.621799] add      /class/scsi_disk/10:0:0:0 (scsi_disk)
UDEV  [1212584381.705111] add      /devices/pci0000:00/0000:00:1d.7/usb2/2-1/2-1:1.0/host10/target10:0:0/10:0:0:0 (scsi)
UDEV  [1212584381.705133] add      /class/scsi_disk/10:0:0:0 (scsi_disk)
UEVENT[1212584386.613232] add      /block/sdb (block)
UDEV  [1212584386.613269] add      /class/scsi_device/10:0:0:0 (scsi_device)
UDEV  [1212584386.613294] add      /class/scsi_generic/sg2 (scsi_generic)
UEVENT[1212584386.613314] add      /class/scsi_generic/sg2 (scsi_generic)
UDEV  [1212584386.681979] add      /block/sdb (block)
UDEV  [1212584386.789209] add      /block/sdb/sdb1 (block)

Ce que je comprend c'est que toute la structure est bien créé dans /sys et que udev "fait des chose..."

De même

udevinfo -a -p /sys/block/sdb

Udevinfo starts with the device specified by the devpath and then
walks up the chain of parent devices. It prints for every device
found, all possible attributes in the udev rules key format.
A rule to match, can be composed by the attributes of the device
and the attributes from one single parent device.

  looking at device '/block/sdb':
    KERNEL=="sdb"
    SUBSYSTEM=="block"
    DRIVER==""
    ATTR{capability}=="12"
    ATTR{stat}=="      33       89      394      236        0        0        0        0        0      168      236"
    ATTR{size}=="976773168"
    ATTR{removable}=="0"
    ATTR{range}=="16"
    ATTR{dev}=="8:16"
[...]

Hors ligne

#4 Le 04/06/2008, à 14:08

CedrX

Re : Udev - disque dur externe non "mounté"

Bon ben effectivement ton disque dur est bien détecté.
Et apparement il est vu comme le périphérique /dev/sdb
Que donne la commande

fdisk -l /dev/sdb

Hors ligne

#5 Le 04/06/2008, à 14:16

Eltche

Re : Udev - disque dur externe non "mounté"

Le disque est correctement vu par fdisk

$ fdisk -l /dev/sdb

Disque /dev/sdb: 500.1 Go, 500107862016 octets
255 heads, 63 sectors/track, 60801 cylinders
Units = cylindres of 16065 * 512 = 8225280 bytes
Disk identifier: 0x3b0407cb

Périphérique Amorce    Début         Fin      Blocs    Id  Système
/dev/sdb1   *           1       60801   488384001    7  HPFS/NTFS

Ceci dit je peux le monter manuellement avec mount ou pmount sans aucun souci.

Hors ligne

#6 Le 04/06/2008, à 14:19

CedrX

Re : Udev - disque dur externe non "mounté"

Est ce que ton compte utilisateur fait partie du groupe plugdev ?
Pour cela il suffit de taper la commande id qui devrait te sortir un truc dans le genre

uid=1000(toto) gid=1000(toto) groupes=24(cdrom),29(audio),46(plugdev),108(fuse)

EDIT: (à priori oui puisque tu as une fenêtre qui s'affiche lors de l'insertion de la clef usb mais on sait jamais ...)

Dernière modification par CedrX (Le 04/06/2008, à 14:21)

Hors ligne

#7 Le 04/06/2008, à 14:25

Eltche

Re : Udev - disque dur externe non "mounté"

Oui je fais parti du group plugdev

$ id
uid=1000(utilisateur) gid=1000(utilisateur) groupes=4(adm),20(dialout),24(cdrom),25(floppy),29(audio),30(dip),44(video),46(plugdev),104(scanner),106(fuse),108(lpadmin),109(admin),115(netdev),117(powerdev),1000(utilisateur)

Hors ligne

#8 Le 04/06/2008, à 14:33

CedrX

Re : Udev - disque dur externe non "mounté"

Hmmmm j'avoue que je sèche un peu je vais donc émettre l'hypothèse que c'est le fait que tu aies une partition NTFS sur ton disque qui fait qu'elle n'est pas automatiquement monté.
Je suppose que tu as du fat 32 sur ta clef usb...

Après ça reste qu'une hypothèse ...

Hors ligne

#9 Le 04/06/2008, à 14:43

Eltche

Re : Udev - disque dur externe non "mounté"

Si j'ai bien compris les doc sur Udev, il permet de charger le driver nécessaire au péripherique. Il crée une entrée dans /dev/ suivant les règles contenues dans /etc/udev/rules.d/. Toujours suivant ces mêmes règles,  Udev peut gérer les permissions et les propriétaires et créer un lien symbolique avec un nom spécifique  qui point vers /dev/sdb par ex. Udev peut aussi lancer une application sur un évènement.

Ensuite  HAL entre en action en ecoutant Udev et met ces informations sur le bus D-com à disposition de toutes les applications qui écoute ce bus. Une application peut alors déclencher une action.

Dans mon cas, le périphérique est reconnue. Une entrée est créée dans /dev (/dev/sdb et /dev/sdb1) Mais une fenêtre n'apparait pour me demander d'agir Et le disque dur n'est pas monté dans /media

Il me manque le lien entre Udev et (KDE?/HAL?)  pour monter le disque dans media

En tout cas merci CedrX de t'être penché sur mon problème.

Je continue mes recherche. Si quelqu'un d'autres à des pistes...

Hors ligne

#10 Le 04/06/2008, à 14:56

CedrX

Re : Udev - disque dur externe non "mounté"

Autre piste.
Vérifies que tu as les paquets ntfs-3g et fuse-utils.

Autre chose, tout comme udev, hal a ses propres fichiers de règles.
Peut être devrais tu jeter un oeil au fichier /etc/hal/fdi/policy/15-ntfs-policy.fdi

Hors ligne

#11 Le 04/06/2008, à 15:19

Eltche

Re : Udev - disque dur externe non "mounté"

Incompréhensible. Je viens de récupérer un autre disque USB (en NTFS lui aussi). Et avec lui ça fonctionne !!! J'ai bien ma  fenêtre qui apparaît et qui me demande quoi faire. Si je lui demande d'ouvrir une fenêtre, le disque est correctement monté dans /media et entièrement accessible (r/w). J'ai vu aussi que le montage dans /media est apparue qu'après avoir cliqué sur la fenêtre qui m'est apparue. C'est donc une application KDE qui gère le montage dans /media et non Udev.

Pour les paquet fuse-utils et ntfs-3g,  ils sont déjà bien installé.

Merci pour les info concernant HAL. Je vais aller jeter un coup d'oeil. Ceci dit je pense que la règle générale udev doit être basée sur une information manquante ou différente concernant mon disque dur.

Merci

Hors ligne

#12 Le 04/06/2008, à 15:43

Eltche

Re : Udev - disque dur externe non "mounté"

Pour HAL, j'ai pas grand chose.

Dans le dossier /etc/hal/fdi/ j'ai 2 répertoires vides (information et preprobe) et un répertoire policy qui contient un unique fichier preferences.fdi.
Ce dernier fichier est plutôt court, mais il fait référence à l'automount

[...]
<!--
  The following hints gnome-volume-manager and other programs that honor the
  storage.automount_enabled_hint to not mount non-removable media.
-->

  <device>
    <match key="storage.hotpluggable" bool="false">
      <match key="storage.removable" bool="false">
        <merge key="storage.automount_enabled_hint" type="bool">false</merge>
      </match>
    </match>
  </device>
[...]

J'imagine que c'est ces lignes qui font réagir le bureau (KDE/Gnome) pour lancer l'application qui va s'occuper de monter le péripherique dans /media

Hors ligne

#13 Le 04/06/2008, à 15:51

S2S

Re : Udev - disque dur externe non "mounté"

bonjours,
verifie ton fstab, c'est a la mode en ce moment (entrer eroné)
exemple:
pour un ami tout periph de stockage se montait dans le CD-ROM
une autre personne sur ce forum avait ca avec floppy0

alors au cas ou...


portable: Toshiba Qosmio x500 12Q
fixe: P5N72-T Premium//Core2Quad-Q9550//7950GT//2048DDR2
OS: 10.04 - 10.10 - 11.04, 7
... qui croit tout savoir, n'en saura jamais plus ...

Hors ligne

#14 Le 04/06/2008, à 15:59

Eltche

Re : Udev - disque dur externe non "mounté"

Bonjour S2S,

# /dev/sda6
UUID=641c2ca4-afdd-40de-8fd7-7fb993dd9dad /               ext3    defaults,errors=remount-ro 0
# /dev/sda7
UUID=4d07d95a-9365-4bbe-bb5a-7695c1126052 none            swap    sw              0       0
/dev/scd0       /media/cdrom0   udf,iso9660 user,noauto,exec 0       0

Tout semble correcte. Je n'ai que les partitions de mon disque dur interne (sda6 et sda7) et de mon graveur dvd.

Hors ligne

#15 Le 04/06/2008, à 21:50

Eltche

Re : Udev - disque dur externe non "mounté"

Du plus, mais c'est pas encore ça.

Lorsque je redémarre HAL et que le dd externe est branché une fenêtre apparaît enfin smile

sudo  /etc/init.d/hal restart

Contrepartie: je suis obligé de redémarrer HAL à chaque fois que je branche mon dd externe hmm

CedrX,  j'ai vu qu'il y a aussi des fichiers de configuration de HAL dans /usr/share/hal/fdi/  en plus de ceux dans /etc/hal/fdi/

Par contre je suis un peu court pour comprendre le fonctionnement des fichiers "dfi". Si quelqu'un à des liens ou des explications je suis preneur

Merci

Hors ligne

#16 Le 05/06/2008, à 00:49

S2S

Re : Udev - disque dur externe non "mounté"

une questions bete, si tu le monte manuelement, tu peut l'explorer/ecrire/suprimé ?
si ca coupe a l'ouverture c'est l'alime du boitié hdd (vecu avec un 2.5" auto alimenté)
des truck bete, mais ca coute rien de verifié.


portable: Toshiba Qosmio x500 12Q
fixe: P5N72-T Premium//Core2Quad-Q9550//7950GT//2048DDR2
OS: 10.04 - 10.10 - 11.04, 7
... qui croit tout savoir, n'en saura jamais plus ...

Hors ligne

#17 Le 05/06/2008, à 11:02

Eltche

Re : Udev - disque dur externe non "mounté"

S2S a écrit :

une questions bete, si tu le monte manuelement, tu peut l'explorer/ecrire/suprimé ?

Tout à fait. Je peux le monter avec la commande mount ou avec pmount. Le dd externe est en NTFS. Je peux l'explorer, écrire et supprimer des fichiers et dossiers.

S2S a écrit :

si ca coupe a l'ouverture c'est l'alime du boitié hdd (vecu avec un 2.5" auto alimenté)
des truck bete, mais ca coute rien de verifié.

Non, non j'ai pas détecté de problème d'alimentation. Mon dd externe est alimenté par sa propre alimentation. (c'est un 3.5"). Une fois monté le disque n'a pas de problème.

[Dernière minute...] Je viens de m'apercevoir (après avoir reinstallé hal) que la fenêtre KDE apparaît bien maintenant lorsque je connecte mon dd externe, que celui-ci est monté correctement dans /media. Mais si je le déconnecte et reconnecte. HAL ne veut rien savoir et du coup pas de fenêtre KDE.

Après quelques tests je suis arrivé au fait que KDE accepte d'afficher une fenêtre que si HAL détecte que j'allume l'alimentation de mon disque dur... c'est mieux que rien.

Hors ligne

#18 Le 17/06/2008, à 14:37

Twinuts

Re : Udev - disque dur externe non "mounté"

Hello,

pour ma part j'ai exactement le même problème...
En gros, si je ne mets pas de règle udev pour mon hdd (usb), il est alors monté automatiquement dans /media/xxx.
Cependant pour simplifier le tout et essentiellement pérenniser les montages de ce périphérique, j'ai mis en place cette règle udev :
BUS=="usb", KERNEL=="sd*", ATTRS{serial}=="DEF10B828AC5", NAME="ext_disk%n"

qui est fonctionnelle avec ubuntu 7.10 + montage automatique mais sous hardy il n'y a plus de montage automatique (la règle udev est bien exécuté)...
Actuellement je pense de plus en plus que HAL dans sa config par défaut ne supporte pas les périphériques renommés (ou remaniés) par udev.

-------- Edit
petite évolution (non satisfaisant à mon goût) sur les montages auto...
après plusieurs pages de tutos je me suis rendu compte que le problème n'était pas directement lié à HAL mais plus à l'utilitaire de montage du window manager (exemple gnome-mount pour mon cas)

en effet il ma fallut enlever les références vers mon HDD usb du fstab et forcer gnome-mount à monter le disque dans le répertoire 'external', par le biais de la commande :

gnome-mount --write-settings --device /dev/ext_disk1 --mount-point external

cependant cette solution ne permet pas de définir un point de montage en dehors de /media, ce qui est assez gênant...
--------

Dernière modification par Twinuts (Le 17/06/2008, à 15:55)

Hors ligne

#19 Le 17/06/2008, à 16:17

alexmic

Re : Udev - disque dur externe non "mounté"

Salut,

Un peu de pub, mais bon...

J'avais fait pour apprendre le qt et le python et les GUI une petite appli qui permettait de fabriquer les règles udev... ça peut valoir le coup d'essayer.

http://www.kde-apps.org/content/show.php/kudev?content=49632


@++

Dernière modification par alexmic (Le 17/06/2008, à 16:19)


OMG Lawl pwnd rofl... Plaît-il?

Hors ligne