# Extraire le contenu d'une ISO sans droits root avec 7zip

**URL:** <https://www.debian-fr.org/t/extraire-le-contenu-dune-iso-sans-droits-root-avec-7zip/63585>\
**Category:** Trucs et Astuces\
**Created:** [Février 21, 2016, 8:50 UTC](https://www.debian-fr.org/t/extraire-le-contenu-dune-iso-sans-droits-root-avec-7zip/63585 "2016-02-21T20:50:52Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![Knucky](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/k/71e660/32.png) [@Knucky](https://www.debian-fr.org/u/Knucky)\
**Post date:** [Février 21, 2016, 8:50 UTC](https://www.debian-fr.org/t/extraire-le-contenu-dune-iso-sans-droits-root-avec-7zip/63585/1 "2016-02-21T20:50:52Z")

</div>

[size=85](A la demande de [Ricardo](https://www.debian-fr.org/copie-iso-sur-clef-formatee-en-vfat-combien-gb-maxi-t49719-75.html#p496205))[/size]

P7zip (version POSIX de 7zip) est un gestionnaire d’archive qui supporte un grand nombre de format de conteneur d’archives et d’algorithmes de compression : 7z alias lzma, utilisé par défaut, tar, gz, bzip2, rpm, deb, cab de microsoft, rar avec p7zip-rar (paquet non libre), ISO en lecture seule etc…). C’est un logiciel libre.

Sa syntaxe est similaire à celle d’[mono]unrar-nonfree[/mono].

[size=150]Problématique[/size]

Extraire le contenu d’un fichier ISO sous GNU/Linux consiste généralement à monter le fichier ISO et d’en copier le contenu, puis de le démonter. Ce n’est pas toujours la meilleure solution :

[ol]  
[li] Il faut être root pour monter/démonter le fichier ISO[/li]  
[li] Il y a pas mal de choses a taper (flemmard inside !) [/li][/ol]

C’est la que 7zip intervient.

[size=150]Installation[/size]

```auto
# apt-get install p7zip-full
```

Si vous souhaitez ajouter le support RAR (dépôt non-free)

```auto
# apt-get install p7zip-rar
```

Nous utiliserons ici un fichier ISO mais il peut être remplacé par un CAB ou un RAR, sans changement de la ligne de commande.

[mono]7z[/mono] n’appelle pas la fonction sync() du système d’exploitation. Si vous comptez écrire sur une clé USB en plus des commandes nommées ci-dessous il vous faudra appeler [mono]sync[/mono].

[size=150]Extraction complète dans le répertoire en cours[/size]

```auto
$ 7z x fichier.iso 
```

Si vous ecrivez sur de l’USB, une fois que 7z a terminé l’extraction, lancez

```auto
$ sync 
```

[size=150]Extraction complète dans un répertoire donné[/size]  
Il faut utiliser [mono]-o[/mono] pour spécifier un répertoire de sortie.

```auto
$ 7z x fichier.iso -o/repertoire_destination
# !!! il ne faut pas d'espace entre '-o' et le nom du répertoire
# !!! -o doit toujours être positionné après les arguments evoquant des fichiers, en toute dernière position.
```

[size=150]Extraction de certains fichiers/répertoires[/size]  
NB: Les noms de fichier sont relatifs à la racine de l’ISO. Voir plus bas pour lister le contenu d’une ISO.

```auto
# dans le répertoire en cours : 
$ 7z x debian.iso isolinux setup.exe
```

Vous pouvez bien sûr combiner avec [mono]-o[/mono] :

```auto
$ 7z x debian.iso isolinux -o/mnt/cleusb
sync # ne pas oublier sur usb 
```

[size=150]Utilisation de wildcards pour l’extraction[/size]  
Il vous faudra les échapper avec ‘’ ; seuls les caractères spéciaux reconnus par MSDOS sont pris en compte (\* et ?) :

```auto
$ 7z x debian.iso isolinux/\*.cfg setup.exe -o/tmp
```

[size=150]Lister le contenu du fichier ISO[/size]

```auto
$ 7z l fichier.iso
```

La documentation complète de 7zip en anglais se situe dans [mono]/usr/share/doc/p7zip-full/DOCS/MANUAL/index.htm[/mono]

---

<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, 8:51 UTC](https://www.debian-fr.org/t/extraire-le-contenu-dune-iso-sans-droits-root-avec-7zip/63585/2 "2016-02-21T20:51:05Z")

</div>

Merci pour ce tuto qui servira à d’autres comme il m’a servi.  
 ![:023](https://www.debian-fr.org/uploads/default/original/1X/3c587556c0cc11389317c03a60788d77ceebd307.gif "OK")
