Page 1 sur 1

[Montage automatique]Clé USB en multisession

Publié : ven. 12 oct. 2007, 10:51
par Pascal S
Bonjour,
Lorsque 2 utilisateurs ont une session ouverte sur la machine et qu'on insère une clé USB, elle se monte automatiquement, mais les droits d'écriture ne sont pas forcément affectés à l'utilisateur dont la session est active. Est-ce qu'il y a quelque chose à configurer quelque part pour que ça marche, càd pour que les droits soient affectés à l'utilisateur actif ?
Merci !

Publié : ven. 12 oct. 2007, 14:58
par Cactus
ben pour ma part, j'écris explicitement le montage de la clé dans le fstab, avec (entre autres) comme option un umarsk=002. ;)
Tu peux aussi rajouter l'option gid=1000 (= 'users, dont chaque profil fait normalement partie), et ce devrait être bon !

Exemple :

Code : Tout sélectionner

/dev/cle_1Go      /mnt/usb_cle_1Go    vfat rw,users,auto,exec,sync,gid=1000,umask=002 0 0

Publié : ven. 12 oct. 2007, 22:31
par warnaud
Quand tu branches une clef usb elle se monte dans /media/sdXy et si les utilisateurs appartiennent au groupe storage ils peuvent écrire dessus peu importe quel utilisateur. Soit t'es sous KDE/Gnome/Xfce(/e16/e17?) et elle va s'afficher sur le bureau de l'utilisateur actif, soit tu le montes à la main via un utilitaire ou mount/pmount mais dans tous les cas elles sera de base dans /media sauf si tu mets une ligne comme cactus (qui lui la monte dans /mnt/usb_cle_1Go - le répertoire doit exister)

Si ça ne fonctionne pas de base regarde dans 'dmesg' (la commande) les messages d'erreurs.

Publié : sam. 13 oct. 2007, 01:09
par tuxce
tu utilises quel environnement graphique? gnome?

Publié : sam. 13 oct. 2007, 10:36
par Pascal S
Merci pour vos réponses.
- les utilisateurs font bien partie du groupe storage
- je suis sous gnome et dans tous les cas la clé se monte bien et apparait sur le bureau
- un seul utilisateur a les droits d'écriture (et de démontage !) dessus quand les 2 sessions sont ouvertes
- quand une seule session est ouverte, quel que soit l'utilisateur, ça marche
- pas d'erreur flagrante dans dmesg

Si je ne trouve pas mieux, j'adopte la méthode de cactus, même si elle manque un peu de souplesse à mon goût.

Publié : sam. 13 oct. 2007, 10:46
par vincentxavier
Lorsque tu as deux utilisateurs, c'est normal que tu n'as pas de droit de lecture et montage/démontage pour le deuxième utilisateur. En effet, un coup de

Code : Tout sélectionner

mount
te montrerais que la clef a comme propriétaire un seul des deux utilisateurs.

Tu peux utiliser la méthode de cactus, qui effectivement manque de souplesse et d'élégance, ou alors, créer une commande spéciale en utilisant sudo.

Publié : sam. 13 oct. 2007, 12:18
par Pascal S
Exact. Mais ce qui est surtout gênant, c'est que ce n'est (très souvent) pas le bon utilisateur (celui dont la session est active) qui est propriétaire de la clé.
Ce qui est un peu rageant, c'est que sur Ubuntu ça marche out-of-the-box (depuis Dapper ou Edgy il me semble), mais je ne sais pas comment ils ont fait !
Sinon, tu peux me donner un poil plus d'indications sur l'idée de la commande spéciale (via sudo) car là j'avoue ne pas trop voir par quel bout commencer.

Publié : sam. 13 oct. 2007, 12:41
par vincentxavier
ben

Code : Tout sélectionner

sudo umount /dev/sda1
[/code]

Publié : sam. 13 oct. 2007, 13:42
par Pascal S
Ok si c'est juste pour le démontage, j'avais mal compris. Merci !

Publié : sam. 13 oct. 2007, 17:10
par Cactus
Sinon, une autre astuce consiste à éditer la règle udev relative au périph concerné, en rajoutant GROUP=..., MODE=...

Mais je préfère de loin la solution du fstab, qui appelle la clé par le chemin /dev/disk/by-id/...

exemple :

Code : Tout sélectionner

/dev/disk/by-id/usb-Crucial_Gizmo__overdrive_0231002000000000000001E2-0:0-part1      /mnt/cle_2Go     vfat    rw,users,auto,exec,sync,umask=002 0 0
/dev/disk/by-id/usb-Crucial_Gizmo__overdrive_0231002000000000000001E2-0:0-part2      /mnt/cle_2Go_2  auto    rw,users,exec,auto,sync 0 1
EDIT : à adapter avec ton pb de multi users évidemment ! ;)

Publié : sam. 13 oct. 2007, 20:15
par tuxce
la solution du fstab est la plus fiable (j'ai jamais réussi à faire accepter à hal de monter avec l'option users!), sinon, si le démontage n'est pas le plus important, tu peux rajouter un fichier de police hal: /usr/share/hal/fdi/policy/20thirdparty/cle_usb.fdi:

Code : Tout sélectionner

<?xml version="1.0" encoding="UTF-8"?>

<deviceinfo version="0.2">
  <device>
    <match key="volume.fstype" string="vfat">
      <append key="volume.mount.valid_options" type="strlist">gid=</append>
      <append key="volume.mount.valid_options" type="strlist">users</append>
    </match>
  </device>
<deviceinfo>
pour autoriser les options gid et users. (faut redemarrer hal)

puis sous gnome, l'utilisateur (ou alors une config pour tous) peut configurer gnome-mount pour monter le volume avec un gid précis (pour le users, il faudrait que je réessaies...)

Code : Tout sélectionner

gconftool-2 -s /system/storage/default_options/vfat/mount_options -t list --list-type=string [shortname=lower,uid=,gid=100,umask=002,users]
ce qui donne le droit rwx pour le groupe "user".