====== AUFS - каскадно-объединённое монтирование для файловых систем Linux ====== Данная статья - очень краткая попытка объяснить на примерах основные принципы работы AUFS. Это очень важно для понимания работы Puppy и других AUFS дистрибутивов. Желающим разобраться глубже рекомендуется [[arc|этот материал]]. ===== Теория ===== [[wpru>AUFS]] позволяет собрать итоговую файловую систему как слоеный пирог. *В качестве слоя может быть [[wpru>squashfs]] модуль, файл с файловой системой внутри (например, сохраненка), раздел файловой системы, [[wpru>RAM_drive]] *Любой из перечисленных объектов может быть в любое время подключен выше (файлы "слоя" заместят повторяющиеся файлы "пирога") или ниже *Количество возможных слоев выбирается при компиляции ядра. Дефолтное значение 128. Увеличение может привести к замедлению работы *Возможно и отключение слоя (если его файлы не заняты) *Как правило, во всех системах (Puppy), использующих AUFS, в самый верхний слой подключается "сохраненка". Слой допускающий не только чтение но и запись и сохраняющий изменения после рестарта. В качестве "сохраненки" можно использовать [[wpru>RAM_drive]], но тогда изменения пропадут после рестарта ===== Практика ===== ==== "Тени" .wh..wh. ==== При [[full-vs-frugal|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истема работает следующим образом: *При изменении файла одного из слоев , измененный файл находится в "сохраненке" (см. пример выше) *При отключении этого слоя, файл в сохраненке остается *При подключении другого слоя с таким же файлом - этот файл не появится в итоговой системе, т.к. сохраненка в самом верхнем слое. Следить за "хвостами" тяжело. Поэтому не рекомендуется отключение слоев. Особенно средних. Оптимально перезагрузить систему с требующимся порядком слоев ===== Готовые примеры использования ===== *[[http://www.linux-live.org/|linux-live]] *[[http://live.debian.net/|debian]] *[[https://wiki.archlinux.org/index.php/Category:Live_Arch_systems|Live_Arch_systems]] ===== Полезные ссылки ===== *[[http://mtaalamu.ru/blog/admining/923.html|Как сделать бутерброд]] *[[http://www.ashep.org/2010/pyat-luchshix-linux-live-distributivov/#.UVPiHhx5OPI|AUFS дистрибутивы]] *[[http://ru.wikipedia.org/wiki/Live_CD|Live_CD]] *[[http://ru.wikipedia.org/wiki/Live_USB|Live_USB]] //Автор: sfs//