Page 1 sur 1
[HAL] Comment limiter l'accès à un disque dur externe?
Publié : mar. 01 mai 2007, 17:52
par cassyb
Salut,
J'ai un soucis pour limiter l'accès à un disque dur externe en fat16.
J'utilise HAL, j'ai crée une entrée dans fstab:
Code : Tout sélectionner
/dev/sdf1 /mnt/LACIE vfat user, uid=1001, gid=1001, umask=077, noauto 0 0
mais cette entrée est ignorée.
Hal le monte dans /media/LACIE
une idée?
merci
Cassy.
Publié : mar. 01 mai 2007, 17:55
par vincentxavier
il faut modifier la conf de hal et pas de fstab.
Publié : mar. 01 mai 2007, 18:17
par cassyb
surtout hésite pas à mettre un peu plus d'une ligne dans ton explication

Publié : mar. 01 mai 2007, 18:33
par vincentxavier
Arf, j'ai cru que tu demandais des pistes, pas un comment-faire.
J'ai pas plus d'idée que cela, mais bon je regarderai rapidos.
Code : Tout sélectionner
<match key="volume.[i]name[/i]" string="[i]LACIE[/i]">
<match key="/org/freedesktop/Hal/devices/computer:system.kernel.name" string="Linux">
<append key="volume.mount.[i]point[/i]" type="strlist">utf8</append>
</match>
</match>
Les morceaux en italique correspondent aux parties où j'ai inventé (sans aucune garantie
Les idées viennent de /usr/share/hal/fdi/policy/10osvendor/20-storage-methods.fdi
Ensuite il te faudra jouer avec hal-device pour identifier correctement le disque dur.
Bon courage
Publié : mer. 02 mai 2007, 00:34
par warnaud
c'est pas avec udev qu'on fait ce genre de "blague" ?
Publié : mer. 02 mai 2007, 01:08
par cassyb
merci vincentxavier pour ta piste de 20-storage-methods.fdi
j'ai essayé pas mal de tuto venant du forum de fedora...
dans /usr/share/hal/fdi/policy/10osvendor/20-storage-methods.fdi
je fais une recherche sur vfat
je tombe sur:
Code : Tout sélectionner
<!-- allow these mount options for vfat -->
<match key="volume.fstype" string="vfat">
...
<!-- Mon rajout -->
<match key="volume.uuid" string="6853-5BA9">
<merge key="volume.label" type="string">LACIE</merge>
<merge key="volume.fstype" type="string">vfat</merge>
<merge key="volume.mount.valid_options" type="strlist">umask=077</merge><!-- ou 007 -->
<merge key="volume.mount.valid_options" type="strlist">uid=1001</merge>
<merge key="volume.mount.valid_options" type="strlist">gid=1001</merge>
</match>
</match>
le uuid 6853-5BA9 est trouvé grâce à hal-device-manager (item avancé)
je relance hal mais l'utilisateur lambda pour faire ce qu'il veut.
c'est comme si ça faisait rien.
J'ai aussi testé:
http://forums.fedora-fr.org/viewtopic.p ... 03#p124303
en créant un repertoire 95userpolicy avec dedans LACIE.fdi mais pareil ça fait rien.
si quelqu'un a une idée....
Publié : mer. 02 mai 2007, 09:19
par Cactus
Essaies de virer les espaces entre les options de ta ligne du fstab :
Code : Tout sélectionner
/dev/sdf1 /mnt/LACIE vfat user,uid=1001,gid=1001,umask=077,noauto 0 0
Il faut aussi que le répertoire /mnt/LACIE ait été créé, sinon, il ne pourra pas le monter.
Je n'ai pas touché à udev pour le point de montage, et il se trouve que mes périph se montent sur les 2 : /media et /mnt...
Publié : mer. 02 mai 2007, 10:43
par vincentxavier
tu as essayé la deuxième méthode, celle de créer un fichier supplémentaire ?
Normalement tout est là
L'idée de créer des labels peut aussi être intéressante. mais je ne sais pas si on peut mettre des labels sur du vfat.
/!\ c'est hal+dbus qui s'occupe du montage automatique des périphs amovibles et pas fstab (montage manuel ou au démarage)
N'hésites pas a stopper hal puis redémarrer dbus et démarrer hal (dans cet ordre)
Publié : sam. 05 mai 2007, 15:28
par cassyb
@Cactus: j'ai essayé ta methode...
C'est effectivement un pb d'espace...le truc c'est que plus ersonne peut acceder au disque (même root).

Publié : sam. 05 mai 2007, 15:33
par vincentxavier
Y'a des chances qu'avec des espaces la ligne soit fausse ou incomplète genre un truc uid=' ' qui fait que même l'utilisateur roo (uid=0) ne peut pas y accéder.
Bref, je pense qu'il est plus intéressants de se pencher sur des méthodes moins empiriques !!
Publié : sam. 05 mai 2007, 15:49
par Cactus
cassyb a écrit :@Cactus: j'ai essayé ta methode...
C'est effectivement un pb d'espace...le truc c'est que plus ersonne peut acceder au disque (même root).

Même le root ?????
Vérifies le n° ID de ton user et group (c'est vraiment 1001 ?)
Pour le pb de root, c'est vraiment étrange... regardes si y'a pas un binz avec udev, je ça me surprendrait beaucoup...
EDIT : une idée ! mets : gid='root' par exemple...
