From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Message-ID: <422415D8.8090600@altlinux.com> Date: Tue, 01 Mar 2005 10:12:24 +0300 From: Anton Farygin User-Agent: Mozilla Thunderbird 1.0 (X11/20050202) X-Accept-Language: en-us, en MIME-Version: 1.0 To: ALT Linux Sisyphus discussion list Content-Type: text/plain; charset=KOI8-R; format=flowed Content-Transfer-Encoding: 8bit Subject: [sisyphus] unionfs =?koi8-r?b?1dDBzCDXIFNpc3lwaHVz?= X-BeenThere: sisyphus@altlinux.ru X-Mailman-Version: 2.1.5 Precedence: list Reply-To: ALT Linux Sisyphus discussion list List-Id: ALT Linux Sisyphus discussion list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 01 Mar 2005 07:12:43 -0000 Archived-At: List-Archive: В Sisyphus попали модули unionfs для ядер std26-*. Как этим пользоваться: 1) поставить нужный пакет 2) в зависимости от задачи - создать unionfs readwrite branch или не создавать 3) смонтировать несколько branch'ей в один Например: имеем подмонтированный NFS как read-only в каталог /build необходимо сделать данные в этом каталоге read-write. Создаем каталог для rw branch: mkdir /tmp/build монтируем: mount -t unionfs -o dirs=/tmp/build=rw:/build=ro null /build Все. Данные в каталоге /build можно изменять (удалять, добавлять). При этом все изменения попадают в каталог /tmp/build/ Еще один пример, более странный ;-) Имеем: смонтированный через NFS (R/O) каталог /build смонтированный через NFS (R/O) каталог /raid Задача: объединить дерево каталогов /build и /raid в /build, одновременно сделав /build как read-write с записью изменений в /tmp/build mkdir /tmp/build mount -t unionfs -o dirs=/tmp/build=rw:/build=ro:/raid=ro null /build А вот более реальный пример: Имеем: кучу жестких дисков, NFS и т.д. задача: выложить объединенную структуру на FTP (R/O) решение: mount -t unionfs -o dirs=/mnt/disk=ro,/mnt/disk1=ro,/mnt/disk2=ro..../mnt/diskN=ro none /var/ftp Из известных ошибок: - невозможность удаления каталогов с ro branch'ем на squashfs - проблемы с переносом (mv) массы симлинков, реально расположенных на r/o branch'е Все остальное вроде как работает. Также в Sisyphus лежат unionfs-utils, предоставляющие возможность на лету добавлять/удалять branch'и, включать/отключать режим отладки. man unionfs, man unionctl, man uniondbg Просьба в случае обнаружения ошибок вешать в нашу bugzilla на пакет unionfs, сопровождая: - testcase на C или shell - логами ядра, от подмонтированного unionfs с опцией debug=19 - информацией о ядре и файловых системах branch'ей Regards, Rider