# Monter, démonter et extraire les iso sans root

**URL:** <https://www.debian-fr.org/t/monter-demonter-et-extraire-les-iso-sans-root/54442>\
**Category:** Trucs et Astuces\
**Created:** [Février 21, 2016, 1:05 UTC](https://www.debian-fr.org/t/monter-demonter-et-extraire-les-iso-sans-root/54442 "2016-02-21T13:05:12Z")\
**Posts on this page:** 14\
**Page:** 1

<div class="post-metadata">

**Author:** ![Flo1](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/f/a4c791/32.png) [@Flo1](https://www.debian-fr.org/u/Flo1)\
**Post date:** [Février 21, 2016, 1:05 UTC](https://www.debian-fr.org/t/monter-demonter-et-extraire-les-iso-sans-root/54442/1 "2016-02-21T13:05:12Z")

</div>

Salut tout le monde 🙂

Bon voilà, j’ai eu du mal à trouver alors je partage au cas où ça intéresserait quelqu’un :

Donc je cherchais comment ouvrir mes images iso simplement avec Thunar sans avoir à taper de mdp.

Commencez par installer le paquet fuseiso.

Ajouter cette action personalisée dans Thunar pour monter :

```auto

```

à utiliser pour autres fichiers \*.iso

et celle-ci pour démonter :

```auto

```

pour les répertoires uniquement

Maintenant faites un clic droit sur une image \*.iso et choisissez l’action de montage. Cela créer un dossier image si votre image s’appelle image.iso dans le même dossier que l’image avec le contenu de l’image dedans.

Pour fermer le dossier, clic droit dessus et sélectionnez l’action de démontage.

Voici le script d’extraction :

[code]#!/bin/sh

# 

# Script permettant d’extraire les image \*.iso données en argument.

for var in “$@”; do  
TEMP=$(mktemp -d)  
DIR=${var%???}  
fuseiso -p “$var” “$TEMP” # Montage de l’image  
cp -R “$TEMP” “$DIR” # copie du volume  
fusermount -u “$TEMP” # Démontage de l’image  
chmod u+rw -R “$DIR” # Changement des permissions  
done  
[/code]

avec dans Thunar `/chemin/vers/le/script %F`

Flo

---

<div class="post-metadata">

**Author:** ![ricardo](https://www.debian-fr.org/user_avatar/www.debian-fr.org/ricardo/32/3864_2.png) [@ricardo](https://www.debian-fr.org/u/ricardo)\
**Post date:** [Février 21, 2016, 1:05 UTC](https://www.debian-fr.org/t/monter-demonter-et-extraire-les-iso-sans-root/54442/2 "2016-02-21T13:05:13Z")

</div>

Ça peut servir ![:023](https://www.debian-fr.org/uploads/default/original/1X/3c587556c0cc11389317c03a60788d77ceebd307.gif "OK")

---

<div class="post-metadata">

**Author:** ![Flo1](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/f/a4c791/32.png) [@Flo1](https://www.debian-fr.org/u/Flo1)\
**Post date:** [Février 21, 2016, 1:05 UTC](https://www.debian-fr.org/t/monter-demonter-et-extraire-les-iso-sans-root/54442/3 "2016-02-21T13:05:15Z")

</div>

En fait, c’est plus pratique d’en faire un script :

[code]#!/bin/sh

# 

# Script permettant d’extraire les image \*.iso données en argument.

for var in “$@”; do  
fuseiso -p $var .temp # Montage de l’image  
cp -R .temp “$(basename $var .iso)/” # copie du contenu du volume  
fusermount -u .temp # Démontage de l’image  
chmod u+rw -R “$(basename $var .iso)/” # Changement des permissions  
done[/code]  
(Ne pas oublier de le rendre executable)

Il fonctionne bien, mais quand j’essaie d’en faire une action personnalisée : script %N ou script %F il ne se passe rien.

Flo

---

<div class="post-metadata">

**Author:** ![MisterFreez](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/m/bb73d2/32.png) [@MisterFreez](https://www.debian-fr.org/u/MisterFreez)\
**Post date:** [Février 21, 2016, 1:05 UTC](https://www.debian-fr.org/t/monter-demonter-et-extraire-les-iso-sans-root/54442/4 "2016-02-21T13:05:15Z")

</div>

> [@](#):
>
> Il fonctionne bien, mais quand j’essaie d’en faire une action personnalisée : script %N ou script %F il ne se passe rien.

Tu es sûr qu’il s’exécute dans le même répertoire que .temp depuis thunar ? Tu peu donner un chemin exclusif avec un ~ pour être sûr qu’il le trouve.

Une solution plus propre c’est de commencer avec (avant la boucle) :

```auto

```

pui d’utiliser $tempdir à la place de .temp et éventuellement à la fin (après la boucle) de faire un

```auto

```

---

<div class="post-metadata">

**Author:** ![Flo1](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/f/a4c791/32.png) [@Flo1](https://www.debian-fr.org/u/Flo1)\
**Post date:** [Février 21, 2016, 1:05 UTC](https://www.debian-fr.org/t/monter-demonter-et-extraire-les-iso-sans-root/54442/5 "2016-02-21T13:05:18Z")

</div>

J’ai bidouillé le script pour être sur de ne pas avoir de souci avec les chemins :

[code]#!/bin/sh

# 

# Script permettant d’extraire les image \*.iso données en argument.

for var in “$@”; do  
TEMP="$var"-temp # dossier temporaire  
DIR=${var%???} # dossier de destination  
fuseiso -p “$var” “$TEMP” # Montage de l’image  
cp -R “$TEMP” “$DIR” # copie du volume  
fusermount -u “$TEMP” # Démontage de l’image  
chmod u+rw -R “$DIR” # Changement des permissions  
done  
[/code]

Mais ça ne fonctionne toujours pas avec Thunar.

Flo

---

<div class="post-metadata">

**Author:** ![Flo1](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/f/a4c791/32.png) [@Flo1](https://www.debian-fr.org/u/Flo1)\
**Post date:** [Février 21, 2016, 1:05 UTC](https://www.debian-fr.org/t/monter-demonter-et-extraire-les-iso-sans-root/54442/6 "2016-02-21T13:05:18Z")

</div>

Problème résolu, en fait, Thunar a besoin du chemin complet du script c’est tout ^^.

Flo

---

<div class="post-metadata">

**Author:** ![ricardo](https://www.debian-fr.org/user_avatar/www.debian-fr.org/ricardo/32/3864_2.png) [@ricardo](https://www.debian-fr.org/u/ricardo)\
**Post date:** [Février 21, 2016, 1:05 UTC](https://www.debian-fr.org/t/monter-demonter-et-extraire-les-iso-sans-root/54442/7 "2016-02-21T13:05:19Z")

</div>

Quand script ne fonctionne pas, c’est la première chose à vérifier.

---

<div class="post-metadata">

**Author:** ![Mimoza](https://www.debian-fr.org/user_avatar/www.debian-fr.org/mimoza/32/3858_2.png) [@Mimoza](https://www.debian-fr.org/u/Mimoza)\
**Post date:** [Février 21, 2016, 1:05 UTC](https://www.debian-fr.org/t/monter-demonter-et-extraire-les-iso-sans-root/54442/8 "2016-02-21T13:05:57Z")

</div>

Petit remarque sur le script.  
Quand tu monte l’ISO, ne faudrait il pas le faire dans le répertoire “/mnt” qui est rpévu pour les montages temporaires ? Enfin, juste histoire d’être plus propre 😃

---

<div class="post-metadata">

**Author:** ![Keldath](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/k/f17d59/32.png) [@Keldath](https://www.debian-fr.org/u/Keldath)\
**Post date:** [Février 21, 2016, 1:05 UTC](https://www.debian-fr.org/t/monter-demonter-et-extraire-les-iso-sans-root/54442/9 "2016-02-21T13:05:59Z")

</div>

Salut,

[quote=“Mimoza”]Petit remarque sur le script.  
Quand tu monte l’ISO, ne faudrait il pas le faire dans le répertoire “/mnt” qui est rpévu pour les montages temporaires ? Enfin, juste histoire d’être plus propre 😃[/quote]

Je ne pense pas, étant donné que par défaut, un utilisateur n’a pas les droits d’écriture dans /mnt (hum, ce n’est pas plutôt /media qui est utilisé pour les montages temporaires ?), et que le but de [FUSE](http://fr.wikipedia.org/wiki/Filesystem_in_Userspace) est de justement monter des systèmes de fichiers en espace utilisateur.  
Par contre, j’aimerai bien savoir s’il existe un emplacement recommandé (dans $HOME) pour de tels montages. Je crois que GVFS le fait dans un dossier caché… peut-être ~/.local/[…].

---

<div class="post-metadata">

**Author:** ![Mimoza](https://www.debian-fr.org/user_avatar/www.debian-fr.org/mimoza/32/3858_2.png) [@Mimoza](https://www.debian-fr.org/u/Mimoza)\
**Post date:** [Février 21, 2016, 1:05 UTC](https://www.debian-fr.org/t/monter-demonter-et-extraire-les-iso-sans-root/54442/10 "2016-02-21T13:05:59Z")

</div>

[Le wiki](https://www.isalo.org/wiki.debian-fr/index.php?title=Le_partitionnement) (voir l’organisation des répertoires)

[quote]/media Points de montage pour les supports amovibles  
/mnt Point de montage pour les montages temporaires [/quote]

Et il est vrai que les utilisateurs “normaux” n’ont pas le droit en écriture dans ce répertoire … ![:whistle:](https://www.debian-fr.org/uploads/default/original/1X/899b2c331f8cc02517f77948602974610a95f952.gif "Whistle")

---

<div class="post-metadata">

**Author:** ![MisterFreez](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/m/bb73d2/32.png) [@MisterFreez](https://www.debian-fr.org/u/MisterFreez)\
**Post date:** [Février 21, 2016, 1:06 UTC](https://www.debian-fr.org/t/monter-demonter-et-extraire-les-iso-sans-root/54442/11 "2016-02-21T13:06:00Z")

</div>

Vous voyez les limites de POSIX ? 🙂 C’est du desktop donc c’est pas dans HFS qu’on trouvera notre réponse.  
Freedesktop est là pour nous sauver grâce à XDG [standards.freedesktop.org/basedi … atest.html](http://standards.freedesktop.org/basedir-spec/basedir-spec-latest.html)  
Je pense que le mieux c’est d’utiliser $XDG\_RUNTIME\_DIR et :

> [@](#):
>
> If $XDG\_RUNTIME\_DIR is not set applications should fall back to a replacement directory with similar capabilities and print a warning message. Applications should use this directory for communication and synchronization purposes and should not place larger files in it, since it might reside in runtime memory and cannot necessarily be swapped out to disk.

Pas forcément pratique, mais sinon tu peut utiliser $XDG\_DATA\_HOME (avec $HOME/.local/share si la variable XDG n’est pas définie).

---

<div class="post-metadata">

**Author:** ![Keldath](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/k/f17d59/32.png) [@Keldath](https://www.debian-fr.org/u/Keldath)\
**Post date:** [Février 21, 2016, 1:06 UTC](https://www.debian-fr.org/t/monter-demonter-et-extraire-les-iso-sans-root/54442/12 "2016-02-21T13:06:07Z")

</div>

Salut,

Je ne sais pas, je ne trouve pas cela adapté non plus de placer un point de montage dans $XDG\_RUNTIME\_DIR (qui tient le rôle de /tmp si je comprend bien), étant donné qu’un point de montage est de nature persistant, et subsiste après la fermeture du processus ayant effectué le montage.  
Idem pour $XDG\_DATA\_\*, je me pose la question "est-ce qu’il est adapté de monter un système de fichiers dans ~/.local/share:/usr/local/share:/usr/share ? À mon sens il semble que non.  
Le plus propre ne serait pas de créer un dossier $HOME/media ou $HOME/mnt (tout comme on crée souvent - enfin je pense - $HOME/bin) ?

PS : pour info, c’est pour le développement d’un petit frontal graphique facilitant l’utilisation de plusieurs utilitaires CLI tel que SSHFS, CurlFTPFS, FuseISO… il est déjà conforme XDG, sauf concernant l’emplacement des points de montage où la question restait entière.

---

<div class="post-metadata">

**Author:** ![MisterFreez](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/m/bb73d2/32.png) [@MisterFreez](https://www.debian-fr.org/u/MisterFreez)\
**Post date:** [Février 21, 2016, 1:06 UTC](https://www.debian-fr.org/t/monter-demonter-et-extraire-les-iso-sans-root/54442/13 "2016-02-21T13:06:07Z")

</div>

> [@](#):
>
> Idem pour $XDG\_DATA\_\*, je me pose la question "est-ce qu’il est adapté de monter un système de fichiers dans ~/.local/share:/usr/local/share:/usr/share ? À mon sens il semble que non.

Pourquoi ?

---

<div class="post-metadata">

**Author:** ![Keldath](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/k/f17d59/32.png) [@Keldath](https://www.debian-fr.org/u/Keldath)\
**Post date:** [Février 21, 2016, 1:06 UTC](https://www.debian-fr.org/t/monter-demonter-et-extraire-les-iso-sans-root/54442/14 "2016-02-21T13:06:07Z")

</div>

> [@](#):
>
> Pourquoi ?

Je peux me tromper, mais c’est adapté pour mettre des icônes, de la documentation, ou tout autres données (fichiers Glade etc) dîtes “statiques” livrées de base avec le programme et variant peu dans le temps (ce qui n’est pas le cas d’un montage FUSE), non ?

EDIT : en regardant le $HOME/.local/share/ de ma machine, j’y vois beaucoup de logs, des plugins téléchargés pour certaines applis, des fichiers \*.desktop… Étant sur Ubuntu là, la chose qui se rapprocherait le plus serait UbuntuOne avec son système de fichiers virtuel qui semblerait être géré là dedans, mais n’utilisant pas ce programme je ne peux pas tester pour confirmer.

EDIT2 : et concernant GVFS, il effectue ses montages dans $HOME/.gvfs/. Chacun fait sa tambouille 🙂
