En étant root je fais:
# losetup -f
--> /dev/loop4
# losetup --offset 32256 /dev/loop4 /chemin/disque_virtuelt.dat
# mount /dev/loop4 /mnt
Facile.
Sans être root, je n'ai pas trouvé.
Je peux ajouter l'utilisateur au groupe 'disk' mais ça lui ouvre les droits de lecture/écriture sur tous les disques. Pas terrible :-)
J'ai essayé avec PAM sans succès. Je suppose que losetup n'est pas compilé pour utiliser PAM.
Je sèche.
Quelqu'un a une idée pour utiliser des images-disques sans être root ?
# Fuse ? users ?
Posté par Obsidian . Évalué à 2.
Par contre, si tu permettre aux utilisateurs de monter des images prédéfinies, tu peux passer directement l'option loop à mount et donc, à priori, mettre ça dans /etc/fstab. De là, tu ajoutes users pour autoriser n'importe qui à monter/démonter l'image/la partition, et ça devrait faire ce que tu veux.
Bon courage.
[^] # Re: Fuse ? users ?
Posté par Kerro . Évalué à 2.
Si tu veux faire un montage local, vois du côté de fuse
Fuse permet de monter un système de fichiers, ce qui est la partie qui ne pose pas trop de problèmes avec un bête mount associé à PAM ou avec l'entrée qui va bien dans /etc/fstab. Ou même avec fusermount. J'ai déjà ça qui fonctionne sans pépins.
Par contre je n'ai rien trouvé pour associer une image toute bête vers un périphérique du genre /dev/loop. La seule chose préexistante est 'mountlo' mais ça passe par User Mode Linux (grosse artillerie donc) et ce n'est pas standard.
Pour l'instant je me contente de mettre l'utilisateur dans le groupe 'disk'. C'est vraiment gruik.
Un truc tout simple: est-il possible de monter une image de cd-rom sans être root ? Ca donnerait une piste. Je n'ai jamais trouvé mais je cherche peut-être mal.
Sinon le truc ultime pour résoudre peut-être beaucoup d'autres problèmes: un programme qui fasse appel à PAM avant de donner la main à la suite.
exemple: admettons que ce programme soit nommé pampam.
# pampam losetup /dev/loop5 /chemin/fichier.dat
et là, si PAM l'autorise, ça fonctionne.
... je suis certain que ça existe, et même d'une manière tellement bête que je vais râler de ne pas le savoir :-)
[^] # Re: Fuse ? users ?
Posté par Octabrain . Évalué à 2.
Sinon, "alias pampam=sudo"
[^] # Re: Fuse ? users ?
Posté par Kerro . Évalué à 2.
Et sudo donne l'accès TOTAL à losetup et mount, ça enlève beaucoup de l'intérêt de ne pas être carrément root.
# Il y a bien une méthode ...
Posté par LaBienPensanceMaTuer . Évalué à 1.
En gros, tu t'arranges pour faire tes losetup au boot, dans un rc.local par exemple.
Ensuite, tu utilises ce bon vieux fstab et son option users:
The fourth field, (fs_mntops), describes the mount options associated
with the filesystem.
It is formatted as a comma separated list of options. It contains at
least the type of mount plus any additional options appropriate to the
filesystem type. For documentation on the available options for non-
nfs file systems, see mount(8). For documentation on all nfs-specific
options have a look at nfs(5). Common for all types of file system are
the options ``noauto'' (do not mount when "mount -a" is given, e.g., at
boot time), ``user'' (allow a user to mount), and ``owner'' (allow
device owner to mount), and ``comment'' (e.g., for use by fstab-main-
taining programs). The ``owner'' and ``comment'' options are Linux-
specific. For more details, see mount(8).
[^] # Bin non :-)
Posté par Kerro . Évalué à 2.
Les fichiers à monter ne sont pas connus à l'avance.
Une autre méthode est de copier 'losetup' en 'losetup_bis' par exemple, et de le mettre en SUID avec un groupe spécifique. Je vais tester ça. C'est gruik mais moins que ma méthode actuelle.
[^] # J'améliore
Posté par Kerro . Évalué à 2.
SUID n'aide en rien, donc pas bon.
J'ai modifier la règle d'attribution des droits sur /dev/loop[0-9] dans /etc/udev/ et maintenant c'est mieux. Par propre-propre mais mieux.
Reste qu'un 'wrapper' autour de PAM serait super.
[^] # Re: Il y a bien une méthode ...
Posté par Obsidian . Évalué à 2.
/répertoire/monfichier.iso /mon/pointdemontage auto loop,users 0 0
Par contre, évidemment, cela demande toujours que les images soient connues à l'avance. J'imagine que l'on peut faire facilement un pilote qui se contente de faire le montage, mais je pense que le plus simple reste un script shell dûment privilégié par sudo (il y a moyen d'autoriser, avec ou sans mot de passe, l'accès à un programme unique à certains utilisateurs).
Sinon, si c'est une distrib' à destination du débutant ou du semi-public, les environnements de bureau tels que Gnome proposent déjà le montage automatique en mode graphique ...
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.