UnionFS - UnionFS
| Разработчики) | Сообщество с открытым исходным кодом |
|---|---|
| Полное имя | Файловая система унификации |
| Особенности | |
| Разрешения файловой системы | POSIX |
| Прозрачное сжатие | Нет |
| Прозрачное шифрование | Нет (но может быть предоставлено на уровне блочного устройства) |
| разное | |
| Поддерживаемые операционные системы | Linux , FreeBSD и NetBSD |
Unionfs - это служба файловой системы для Linux , FreeBSD и NetBSD, которая реализует объединенное монтирование для других файловых систем . Он позволяет прозрачно накладывать файлы и каталоги отдельных файловых систем, называемых ветвями, образуя единую согласованную файловую систему. Содержимое каталогов, имеющих одинаковый путь в объединенных ветвях, будет отображаться вместе в одном объединенном каталоге в новой виртуальной файловой системе.
При монтировании ответвлений указывается приоритет одной ветви над другой. Поэтому, когда обе ветки содержат файл с одинаковым именем, одна получает приоритет над другой.
Различные ветви могут быть файловыми системами только для чтения или чтения / записи , так что запись в виртуальную объединенную копию направляется в конкретную реальную файловую систему. Это позволяет файловой системе выглядеть доступной для записи, но без фактического разрешения операций записи для изменения файловой системы, также известной как копирование при записи . Это может быть желательно, когда носитель физически доступен только для чтения, например, в случае Live CD .
Первоначально Unionfs был разработан профессором Эрезом Задоком и его командой из Университета Стоуни-Брук .
Использует
В Knoppix - объединение файловой системы на CD-ROM или DVD и файловой системы, содержащейся в файле образа под названием knoppix.img (knoppix-data.img для Knoppix 7) на записываемом диске (таком как USB-накопитель). ), где записываемый диск имеет приоритет над файловой системой только для чтения. Это позволяет пользователю изменять любой из файлов в системе, при этом новый файл сохраняется в образе и прозрачно используется вместо файла на компакт-диске.
Unionfs также можно использовать для создания единого общего шаблона для нескольких файловых систем или по соображениям безопасности. Иногда его используют в качестве специальной системы моментальных снимков .
Docker использует файловые системы, вдохновленные Unionfs, такие как Aufs , для создания слоев образов Docker. Когда действия выполняются с базовым изображением, создаются и документируются слои, так что каждый слой полностью описывает, как воссоздать действие. Эта стратегия позволяет использовать легкие образы Docker, так как необходимо распространять только обновления уровней (например, по сравнению с полными виртуальными машинами).
UbuntuLTSP , реализация Linux Terminal Server Project для Ubuntu, использует Unionfs при загрузке PXE тонких или толстых клиентов.
Другие реализации
Unionfs для Linux имеет две версии. Версия 1.x - это отдельная версия, которую можно собрать как модуль. Версия 2.x является более новой, переработанной и переработанной.
aufs - альтернативная версия unionfs.
overlayfs, написанный Миклосом Середи, использовался в OpenWRT и рассматривался Ubuntu, и 26 октября 2014 года после многих лет разработки и обсуждения версии ядра 3.18 он был объединен с основным ядром Linux.
unionfs-fuse - это независимый проект, реализованный как программа файловой системы пользовательского пространства , а не модуль ядра или патч. Как и Unionfs, он поддерживает ветви копирования при записи и только для чтения или чтения-записи.
Plan 9 из операционной системы Bell Labs широко использует объединенные монтирования для создания пользовательских пространств имен для каждого пользователя или процессов.
Крепления Union также доступны в BSD по крайней мере с 1995 года.
В GNU Hurd есть реализация Unionfs. По состоянию на январь 2008 года он работает, но обеспечивает точку монтирования только для чтения.
mhddfs работает как Unionfs, но позволяет балансировать файлы по дискам с наибольшим доступным свободным пространством. Он реализован как файловая система пользовательского пространства.
mergerfs - это файловая система union на основе FUSE, которая предлагает несколько политик для доступа и записи файлов, а также другие расширенные функции (xattrs, управление смешанными дисками RO и RW, связывание CoW и т. д.).
Sun Microsystems представила первую реализацию многослойной многоуровневой файловой системы с копированием при записи, белыми окнами (скрытие файлов на нижних уровнях от более высоких уровней) и т. Д. Как Translucent File Service в SunOS 3 примерно в 1986 году.
JailbreakMe 3.0, инструмент для взлома устройств iOS, выпущенный в июле 2011 года, использует методы unionfs для ускорения процесса установки модификации операционной системы.
Смотрите также
Рекомендации
внешние ссылки
- Официальный веб-сайт
- Чарльз П. Райт, Джей Дэйв, Пуджа Гупта, Харикешаван Кришнан, Эрез Задок и Мохаммад Найер Зубайр (2004). «Универсальность и семантика Unix в файловой системе разветвленной унификации» (PDF) . Технический отчет FSL-04-01b . Университет Стоуни-Брук . CS1 maint: использует параметр авторов ( ссылка )
- unionfs-fuse на GitHub - альтернативная реализация Unionfs на основе FUSE
- FunionFS - еще одна реализация Unionfs на основе FUSE
- Новая реализация unionfs для FreeBSD и статус объединения (2007-10-23)
- Об инкрементальной разработке файловой системы
- Unionfs на основе LUFS для Linux (на основе LUFS )
- Руководство по DENX U-Boot и Linux: файловые системы наложения