Provided by:
squashfs-tools_2.2r2-2ubuntu2_i386 
NAME
mksquashfs - Crée ou modifie un système de fichiers compressé Squash
SYNOPSIS
mksquashfs [-version]
mksquashfs source... dest [options] [-e list of exclude dirs/files]
[-ef exclude_file]
DESCRIPTION
Squashfs est un système de fichiers compressé, accessible en lecture
seulement. Utilisez la commande mksquashfs pour créer un nouveau
système de fichiers de ce type ou pour ajouter des données à un système
existant.
Si on ne donne qu’un seul répertoire source (i.e. mksquashfs source
sf_résultant), on obtiendra un système de fichiers constitué du contenu
de ce répertoire source.
Si on fournit plusieurs fichier(s) ou répertoire(s) sources, mksquashfs
créera un seul système de fichiers qui contiendra tous les répertoires
et fichiers source. Le nom de chaque répertoire obtenu sera le nom sans
chemin d’accès de chaque répertoire source ; En cas de noms identiques,
les doublons seront renommés en xxx_1, xxx_2, etc.
L’argument dest peut être soit un fichier classique, soit un
périphérique de type bloc (comme un disque ou une partition). Si le
fichier n’existe pas, il sera créé ; s’il existe déjà et contient un
système de fichiers Squashfs, mksquashfs rajoutera les sources données
à son contenu actuel, sauf si l’option -noappend est précisée.
Il existe un grand nombre d’options qui permettent de contrôler la
compression de mksquashfs. Les valeurs par défaut sont de loin les
optimales et ne devraient être modifiées qu’exceptionnellement !
Les options -noI, -noD et -noF (équivalentes à -noInodeCompression,
-noDataCompression et -noFragmentCompression) peuvent être utilisées
pour obliger mksquashfs à ne pas comprimer respectivement les i-noeuds
et répertoires, les blocs de données et les blocs de données
fragmentés. Si l’on utilise ces trois options, on obtient un système de
fichiers non comprimé.
Par défaut, les fichiers contenus dans le système de fichiers résultat
ont le même propriétaire et groupe que les fichiers sources. Toutefois,
mksquashfs propose certaines options pour modifier ce comportement :
· Les options -all-root et -root-owned (synonymes) forcent tous les
fichiers du système de fichiers Squashfs généré à appartenir à root
(utilisateur et groupe). Elle permet de construire un système de
fichiers appartenant à root sans avoir un accès à ce compte sur la
machine où on le construit.
· L’option -force-uid uid force tous les fichiers du système de
fichiers Squashfs généré à appartenir à l’utilisateur d’identifiant
uid donné. Cet identifiant peut être soit un nom (par exemple root),
soit un nombre.
· L’option -force-gid gid force tous les fichiers du système de
fichiers Squashfs généré à appartenir au groupe d’identifiant gid
donné. Cet identifiant peut être soit un nom (par exemple root),
soit un nombre.
Les options -e et -ef permettent de déclarer des fichiers ou
répertoires à exclure du système de fichiers résultat. L’option -e lit
les fichiers/répertoires à exclure sur la ligne de commande, tandis
que l’option -ef les trouve dans le fichier d’exclusions spécifié
contenant un fichier ou répertoire par ligne. Si le chemin d’un fichier
ou répertoire à exclure est absolu (c’est-à -dire débutant par /, ../ ou
./), il est considéré indépendamment des sources ; en revanche, s’il
est relatif, il s’appliquera pour chaque répertoire source ; par
exemple, mksquashfs /tmp/source1 source2 sf_résultant -e ex1
/tmp/source1/ex2 out/ex3 exclura les fichiers /tmp/source1/ex2,
/tmp/source1/ex1, source2/ex1, /tmp/source1/out/ex3 et source2/out/ex3.
Ces options -e et -ef sont pratiques pour, par exemple, archiver un
système de fichier complet en évitant le répertoire /proc et le système
de fichiers résultat : mksquashfs / /tmp/root.sqsh -e proc
/tmp/root.sqsh
On peut utiliser plusieurs fois l’option -ef dans une même commande, et
on peut également l’utiliser en même temps que l’option -e.
L’option -info affiche les fichiers et répertoires ajoutés au système
de fichiers, avec leur taille originelle et éventuellement le mot
DUPLICATE si un fichier avec un contenu identique y est déjà présent.
Les options -le et -be peuvent servir à forcer mksquashfs à générer un
système de fichiers little endian ou big endian. Par défaut, mksquashfs
génère un système de fichiers avec le boutisme de la machine hôte. Le
pilote Squashfs permettant, par souci de portabilité, de monter les
deux types de systèmes de fichiers (c’est-à -dire qu’il peut monter un
système big endian sur une machine little endian), ces options peuvent
servir à améliorer l’efficacité d’un système de fichiers généré pour
une architecture différente.
OPTIONS
-version
affiche la version, la licence et un message de copyright.
-info affiche les fichiers ajoutés au système de fichiers.
-b taille_bloc
fixe la taille des blocs de données ; elle peut être de 4096,
8192, 16384, 32768 ou 65536 octets. Par défaut, elle vaut 65536
octets.
-2.0 crée un système de fichiers version 2.0.
-noI ou -noInodeCompression
ne comprime pas la table des i-noeuds.
-noD ou -noDataCompression
ne comprime pas les blocs de données.
-noF ou -noFragmentCompression
ne comprime pas les blocs fragmentés.
-no-fragments
n’utilise pas de blocs fragmentés : indique à mksquashfs de ne
pas créer de blocs fragmentés, mais plutôt un système de
fichiers du même genre que ceux des versions 1.x de Squashfs. Ce
sera quand même un système de fichiers Squashfs 2.0 (mais sans
fragments), donc il ne pourra être monté par un système Squashfs
en version 1.x.
-always-use-fragments
utilise des blocs fragmentés pour les fichiers plus gros que la
taille d’un bloc : indique à mksquashfs d’utiliser des blocs
fragmentés quelle que soit la longueur des fichiers. Par défaut,
seuls les petits fichiers (dont la taille est inférieure à celle
d’un bloc) sont assemblés dans des blocs fragmentés. La fin des
fichiers qui remplisse plus d’un bloc ne sont pas, par défaut,
assemblés dans des fragments. Par exemple, un fichier de 100 ko
est découpé en un bloc de 64 ko et un reste de 36 ko, qui par
défaut n’est pas placé dans un bloc fragmenté. Ce choix est fait
pour éviter une perte de performance de 10 à 20% en accès
séquentiel à ce genre de fichiers, car il faudrait sinon
déplacer la tête de lecture d’un disque pour accéder au(x)
bloc(s) entier(s) et un autre pour le fragment (qui ne sera sans
doute pas consécutif). Utilisez cette option pour forcer ces
fins de fichiers à être rassemblées dans les blocs fragmentés ;
cela améliore le taux de compression obtenu mais au dépens de la
vitesse d’accès.
-no-duplicates
ne vérifie pas s’il y a des doublons : indique à mksquashfs de
ne pas vérifier dans les fichiers ajoutés s’il y en a avec des
contenus identiques. Ceci permet une génération/modification du
système de fichiers résultant plus rapide, mais bien sûr le taux
de compression sera nettement moins bon s’il y a beaucoup de
fichiers aux contenus identiques.
-noappend
ne pas ajouter en fin d’un système de fichiers existant.
-keep-as-directory
si un répertoire source est donné, crée un système de fichiers
contenant ce répertoire plutôt que simplement son contenu.
-root-becomes nom
lorsqu’on ajoute des fichiers ou répertoires à un système
existant, le contenu de l’ancien système sera placé dans un
répertoire de nom donné, plutôt que de mélanger les anciens
fichiers et les nouveaux.
-all-root ou -root-owned
tous les fichiers ajoutés au système appartiendront à root.
-force-uid uid
tous les fichiers ajoutés au système appartiendront Ã
l’utilisateur d’identifiant uid (un nom ou un nombre).
-force-gid gid
tous les fichiers ajoutés au système appartiendront au groupe
d’identifiant gid (un nom ou un nombre).
-le crée un système de fichiers au format petit boutiens (little
endian en anglais).
-be crée un système de fichiers au format gros boutiens (big endian
en anglais).
-nopad Ne pas arrondir le système de fichiers au multiple de 4 ko
[supérieur] : cet arrondi, effectué par défaut, permet au
système de fichiers d’être monté par l’interface loopback qui ne
fonctionne qu’avec des fichiers multiples de 4 ko. Si le système
de fichiers est destiné à être écrit sur un périphérique de type
bloc (un disque ou une partition par exemple) ou être placé dans
une image de démarrage, cet arrondi est inutile.
-check_data
positionne un drapeau dans le système de fichiers créé pour plus
de vérifications de ce système lorsqu’il est monté.
-sort ordre
trie les fichiers suivant les priorités décrites dans le fichier
ordre, qui doit contenir un nom de fichier ou répertoire par
ligne avec sa priorité associée (nombre entre -32768 et 32767, 0
par défaut).
-e liste des répertoires/fichiers exclus
liste (en ligne) des fichiers et répertoires à exclure.
-ef fichier_exclus
le fichier fichier_exclus contient la liste des fichiers ou
répertoires à exclure, un par ligne.
EXEMPLES
Pour les exemples suivants, on utilise deux répertoires :
· le répertoire source /home/phillip/test contient fichier1, fichier2
et rep1.
· le répertoire source outils contient outils1, outils2 et outils3.
Exemple1.
mksquashfs /home/phillip/test sf_resultat
va créer un système de fichiers Squashfs contenant dans sa
racine les items fichier1, fichier2 et rep1.
Exemple2.
mksquashfs /home/phillip/test outils sf_resultat
va créer un système de fichiers Squashfs contenant dans sa
racine les répertoires test et outils, correspondant aux
répertoires source /home/phillip/test et outils.
Exemple3.
mksquashfs /home/phillip/test outils test sf_resultat
commande identique à l’exemple précédent, sauf qu’un troisième
répertoire source test a été donné, d’où un conflit avec le
premier répertoire test. Ce troisième répertoire sera donc
renommé test_1.
Donner plusieurs répertoires source permet de générer des
systèmes de fichiers sans préalablement copier tous les fichiers
nécessaires dans un répertoire commun, ce qui simplifie le
processus.
Exemple4.
mksquashfs /home/phillip/test sf_resultat -keep-as-directory
commande identique au premier exemple, sauf que l’option
-keep-as-directory va donner un système de fichiers dont la
racine contiendra un répertoire test, au lieu de n’avoir que son
contenu fichier1, fichier2 et rep1.
AUTEURS
Squashfs a été écrit par Phillip Lougher
<plougher@users.sourceforge.net>, Ã Chepstow, Pays de Galles,
Royaume-Uni. Si vous appréciez ce programme ou rencontrez des problèmes
en l’utilisant, contactez-le, il est intéressé par des retours
d’expérience.
Cette page de manuel a été écrit par Frédéric Boiteux
<fboiteux@calistel.com> pour le système Debian (mais peut être utilisé
par d’autres) à partir du document SquashFS HOWTO de Artemiy I. Pavlov
et du fichier README des sources de SquashFS. Il est permis de copier,
distribuer et/ou modifier ce document en vertu de la licence GPL
version 2 ou postérieure, telle que publiée par la Free Software
Foundation.
Sur les systèmes Debian, le texte complet de la licence GNU GPL
(Licence Public Générale GNU) se trouve dans le fichier
/usr/share/common-licenses/GPL.
Traduction française : Frédéric Boiteux <fboiteux@calistel.com>.
december 20, 2004 MKSQUASHFS(8)