AUFS - каскадно-объединённое монтирование для файловых систем Linux

Данная статья - очень краткая попытка объяснить на примерах основные принципы работы AUFS. Это очень важно для понимания работы Puppy и других AUFS дистрибутивов. Желающим разобраться глубже рекомендуется этот материал.

Теория

AUFS позволяет собрать итоговую файловую систему как слоеный пирог.

  • В качестве слоя может быть squashfs модуль, файл с файловой системой внутри (например, сохраненка), раздел файловой системы, RAM_drive
  • Любой из перечисленных объектов может быть в любое время подключен выше (файлы «слоя» заместят повторяющиеся файлы «пирога») или ниже
  • Количество возможных слоев выбирается при компиляции ядра. Дефолтное значение 128. Увеличение может привести к замедлению работы
  • Возможно и отключение слоя (если его файлы не заняты)
  • Как правило, во всех системах (Puppy), использующих AUFS, в самый верхний слой подключается «сохраненка». Слой допускающий не только чтение но и запись и сохраняющий изменения после рестарта. В качестве «сохраненки» можно использовать RAM_drive, но тогда изменения пропадут после рестарта

Практика

"Тени" .wh..wh.

При frugal установке встречаются файлы .wh..wh.aufs .wh..wh.plnk .wh..wh.orph

Не торопитесь их удалить. Эти файлы - «внутренности» aufs.

Пример:

  • Есть файл file.
  • Изменяем его. Измененный появляется в /initrd/pup_rw. В базовом .sfs он НЕ изменится
  • Удаляем. В /initrd/pup_rw появляется .wh.file. В базовом .sfs он НЕ удалится. В файле сохранения (мой-save.3fs) появится .wh.1 (после перезагрузки)
  • Удаляем в /initrd/pup_rw .wh.file - файл file появляется

"Хвосты" при отключении модуля

«Сохраненка» всегда присутствует в самом верхнем слое AUFS хотя бы в виде RAM диска. Cистема работает следующим образом:

  • При изменении файла одного из слоев , измененный файл находится в «сохраненке» (см. пример выше)
  • При отключении этого слоя, файл в сохраненке остается
  • При подключении другого слоя с таким же файлом - этот файл не появится в итоговой системе, т.к. сохраненка в самом верхнем слое.

Следить за «хвостами» тяжело. Поэтому не рекомендуется отключение слоев. Особенно средних. Оптимально перезагрузить систему с требующимся порядком слоев

Готовые примеры использования

Полезные ссылки

Печать/экспорт