Overlay filesystem (Русский)
- Overlayfs позволяет накладывать одно, обычно чтение и запись, дерево каталогов на другое дерево только для чтения. Все изменения переходят на верхний слой с возможностью записи. Этот тип механизма чаще всего используется для live компакт-дисков, но существует множество других применений.
- Реализация отличается от других реализаций "объединенных файловых систем" тем, что после открытия файла все операции идут непосредственно в базовую, нижнюю или верхнюю файловую систему. Это упрощает реализацию и позволяет использовать в этих случаях собственную производительность.
Overlayfs находится в ядре linux с версии 3.18.[1]
Установка
Overlayfs включен в ядре по умолчанию, а модуль overlay
автоматически загружается после ввода команды монтирования.
Использование
Для монтирования overlay используйте следующие опции mount
:
# mount -t overlay overlay -o lowerdir=/lower,upperdir=/upper,workdir=/work /merged
Нижняя директория может фактически быть списком каталогов, разделенных :
, все изменения в каталоге merged
по-прежнему отражаются в upper
.
Пример:
# mount -t overlay overlay -o lowerdir=/lower1:/lower2:/lower3,upperdir=/upper,workdir=/work /merged
Чтобы добавить запись overlayfs в /etc/fstab
, используйте следующий формат:
/etc/fstab
overlay /merged overlay noauto,x-systemd.automount,lowerdir=/lower,upperdir=/upper,workdir=/work 0 0
Параметры монтирования noauto
и x-systemd.automount
необходимы для предотвращения зависания systemd при загрузке, поскольку он не смонтировал overlay. Overlay теперь монтируется всякий раз, когда он получает первый доступ, и запросы буферизуются до тех пор, пока они не будут готовы. Для получения дополнительной информации смотрите Fstab#Автоматическое монтирование с systemd.
Overlay только для чтения
Иногда желательно только создать представление только для чтения о комбинации двух или более каталогов. В этом случае его можно создать более простым способом, так как каталоги upper
и work
не обязательны:
# mount -t overlay overlay -o lowerdir=/lower1:/lower2 /merged
Когда upperdir
не указан, overlay монтируется автоматически как только для чтения.