UnionFS (UnionFS)
UnionFS — вспомогательная файловая система для Linux и FreeBSD, производящая каскадно-объединённое монтирование других файловых систем. Это позволяет файлам и каталогам изолированных файловых систем, известных как ветви, прозрачно перекрываться, формируя единую связанную файловую систему. Каталоги, которые имеют тот же путь в объединённых ветвях, будут совместно отображать содержимое в объединённом каталоге новой виртуальной файловой системы.
Когда ветви монтируются, то указывается приоритет одной ветви над другой. Следовательно, когда обе ветви содержат файл с идентичным именем, одна ветвь будет иметь больший приоритет.
Различные ветви могут одновременно находиться в режиме «только чтение» и «чтение-запись», таким образом, запись в объединённую виртуальную файловую систему будет направлена на определённую реальную файловую систему. Это позволяет файловой системе выглядеть изменяемой, но в действительности, не позволяющей производить запись изменений в файловую систему, этот процесс также известен как копирование при записи. Это может потребоваться, когда носитель информации физически допускет только считывание, как в случае с Live CD-дисками.
Использование
[править | править код]В Knoppix можно произвести каскадно-объединённое монтирование файловой системы CD-ROM или DVD-ROM с файловой системой, содержащейся в файле образа knoppix.img, который располагается на записываемом устройстве (таком как USB Flash Drive), где записываемое устройство имеет больший приоритет, чем файловая система СD-ROM. Это позволяет пользователю изменять любые файлы операционной системы, в то время как новый файл хранится в записываемом образе и прозрачно используется вместо того, который находится на CD-ROM.[1]
UnionFS может использоваться при создании шаблона общего назначения для большого числа файловых систем, а также для создания файловых систем в режиме «только чтение» из соображений безопасности. UnionFS иногда используют как решение для создания снимков файловой системы.
Другие реализации
[править | править код]Существует две версии UnionFS для Linux. Версия 1.x является изолированной, которая может быть собрана в виде модуля. Версия 2.x — новее, реконструированная. В январе 2007 UnionFS была включена в ветку Linux -mm, которую поддерживает Эндрю Мортон, означая дальнейшее полное включение в основную ветку ядра Linux. Версия 2.x является мельчайшей реализацией каскадно-объединённого монтирования для Linux, она была тщательно проверена и исследована многими разработчиками ядра, к тому же является самой эффективной.
Aufs — альтернативная версия UnionFS для Linux.
Операционная система Plan 9 широко использует каскадно-объединённое монтирование для построения пользовательского пространства имён на пользователя/процессы. Схожая идея, реализованная как каскадно-объединённое монтирование, была доступна в BSD начиная, как минимум, с 1995 года.[2]
GNU Hurd использует UnionFS.[3] По состоянию на январь 2008 года она работает, но приводит к монтированию файловой системы в режиме «только чтения».
mhddfs работает как UnionFS, но позволяет сбалансировать доступное пространство файловых систем при работе с файлами.
Примечания
[править | править код]- ↑ Persistent disk image section on knoppix wiki Архивная копия от 5 ноября 2008 на Wayback Machine (англ.)
- ↑ USENIX 1995 Technical Conference Proceedings Архивная копия от 6 июня 2008 на Wayback Machine (англ.)
- ↑ Hurd Extras Архивная копия от 23 марта 2009 на Wayback Machine (англ.)
См. также
[править | править код]Ссылки
[править | править код]- Домашняя страница проекта Архивная копия от 1 марта 2009 на Wayback Machine
- Пример использования