Различия
Здесь показаны различия между выбранной ревизией и текущей версией данной страницы.
— |
setups:aufs [2016/02/26 17:42] (текущий) |
||
---|---|---|---|
Строка 1: | Строка 1: | ||
+ | ====== 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// |