OverlayFS

From Gentoo Wiki
Jump to:navigation Jump to:search
This page is a translated version of the page OverlayFS and the translation is 46% complete.
Outdated translations are marked like this.
Other languages:

Overlayfs (Overlay Filesystem) est est une tentative dans le noyau de fournir des capacités de système de fichiers unifié OverlayFS diffère des autres implémentations de systèmes de fichiers d'union en ce sens qu'après l'ouverture d'un fichier, toutes les opérations passent directement aux systèmes de fichiers sous-jacents, inférieurs ou supérieurs. Cela simplifie la mise en œuvre et permet des performances natives dans ces cas.[1]

L'option pour activer OverlayFS existe dans les kernel Linux depuis la version 3.18.[2]

Installation

Kernel

KERNEL Activer le support OverlayFS (OVERLAY_FS)
File systems  --->
   [*] Overlay filesystem support

Utilisation

Une fois activé dans le kernel, OverlayFS peut être contrôlé en utilisant la commande mount.

root #mount -t overlay overlay -o lowerdir=lowerdir,upperdir=upperdir,workdir=workdir mountpoint

Example

To mount an overlay filesystem using the following example of a structure on an ext4 base filesystem.

Create the following folder structure:

user $tree test_folder
test_folder
├── low
├── my_overlay
└── up

On the folder low, create a file with a clear and recognizable name. Repeat the step on the folder up to get a structure similar to the following:

user $tree test_folder
test_folder
├── low
│   └── low_file
├── my_overlay
└── up
    └── up_file

Having that tree, the following command will create an overlay structure with the up folder above the low folder and that structure will be on the my_overlay folder.

root #mount -t overlay overlay -o lowerdir=/test_folder/low,upperdir=/test_folder/up,workdir=/test_folder/my_overlay /test_folder/my_overlay/

After inspecting the tree structure of the test_folder, this will be printed:

user $tree test_folder
test_folder
├── low
│   └── low_file
├── my_overlay
│   ├── low_file
│   └── up_file
└── up
    └── up_file

A file can be created using the normal filesystem structure, like the following

root #touch my_overlay/my_overlay_file

and will generate the following tree

user $tree test_folder
test_folder
├── low
│   └── low_file
├── my_overlay
│   ├── low_file
│   ├── my_overlay_file
│   └── up_file
└── up
    ├── my_overlay_file
    └── up_file

The overlay working dir can be unmounted with the umount command

root #umount /test_folder/my_overlay/

After unmounting the overlay folder, a new subfolder will appear on the directory where the operation was conducted

user $tree test_folder
|
test_folder
├── low
│   └── low_file
├── my_overlay
│   └── work
└── up
    ├── my_overlay_file
    └── up_file

That folder will have the following properties

CODE
d--------- 2 root root 4,0K sep  6 09:54 work
Remarque
Plusieurs entrées lowerdir, séparées par des :, peuvent être utilisées. Lorsque c'est le cas, les entrées upperdir et workdir peuvent être omises pour créer un montage en lecture seule.
Important
Lorsque inclus, upperdir et workdir doivent exister dans le même système de fichier.

Voir aussi

  • Aufs — an advanced multi-layered unification filesystem.
  • SquashFS — an open source, read only, extremely compressible filesystem.
  • Wikipedia:UnionFS — Le système de fichier union original.

Ressources externes

References