cramfs

Un article de Wikipédia, l'encyclopédie libre.
Aller à : navigation, rechercher

CramFs (Compressed ROM/RAM File System) est un système de fichiers compressé en lecture seule sous Linux ; il a été conçu pour la simplicité et pour tenir le moins de place possible en mémoire vive (RAM). Il est notamment utilisé pour l'informatique embarquée.

Contrairement à une image compressée d'un système de fichiers conventionnel, il n'y a pas besoin de commencer par décompresser le fichier. Pour cette raison, ce système de fichiers est utilisé dans les distributions Linux :

Le type de compression est zlib (voir RFC 1950).

Historique[modifier | modifier le code]

CRAMFS est utilisé pour initrd par le noyau Linux depuis la version de développement 2.5.46 du noyau. Désormais (depuis Linux 2.6.13) l'initrd est plutôt au format initramfs, c'est-à-dire sous forme d'archive cpio compressée.

Utilitaires[modifier | modifier le code]

cramfsswap[modifier | modifier le code]

Un système de fichiers CramFs généré pour un processeur little endian ne fonctionnera pas sur un ordinateur big endian. Pour pallier ce problème, l'utilitaire cramfsswap permet de basculer le système de fichiers généré d'un mode à l'autre.

mkcramfs[modifier | modifier le code]

mkcramfs formate une Partition de disque dur au format CramFs.

Limitations techniques[modifier | modifier le code]

  • La taille des fichiers est limitée à 16 Mo.
  • La taille maximum du système de fichiers est 256 Mo.
  • L'Identifiant de groupe (GID) est tronqué : seuls les 8 bits de poids faibles sont conservés. Cela peut poser des problèmes de sécurité.
  • Les liens physiques sont supportés, mais le compteur de lien sera toujours à 1.
  • Il n'y a pas de répertoire "." (soi-même) ou ".." (le père). NB : il est inutile d'utiliser l'option -noleaf de la commande find.

Comparatif[modifier | modifier le code]

Exemple d'autres systèmes de fichiers compressés sous Linux en lecture seule : SquashFS, isoFS. Le driver cloop (Compressed LOOPback device) de Knoppix permet de décompresser le contenu d'un LiveCD.

Voir aussi[modifier | modifier le code]