gladilov.org.ru gladilov.org.ua

Срыв покровов. Продолжение

Продолжение рассказа об особенностях монтирования файловых систем.

В дополнение темы монтирования двух разных ФС в одну точку монтирования имею заявить следующее:

как явствует из манов ([1], [2]), при монтировании файлов используется механизм монтирования через loop-устройство. То есть, сначала устанавливается привязка петлевого устройства /dev/loopX к монтируемому файлу, затем это устройство монтируется на точку монтирования.

Если петлевое устройство явно не указано (как у меня при проведении эксперимента), тогда mount попытается найти свободный loop-device и использовать его. Поэтому, если бы я при монтировании файлов A.img и B.img в одну точку монтирования выполнил команду losetup и cat /etc/mtab, то увидел бы нечто вроде этого: Показать

root@debian:/home/soul# losetup
NAME       SIZELIMIT OFFSET AUTOCLEAR RO BACK-FILE
/dev/loop0         0      0         1  0 /home/soul/A.img
/dev/loop1         0      0         1  0 /home/soul/B.img
root@debian:/home/soul# cat /etc/mtab 
rootfs / rootfs rw 0 0
. . .
/dev/loop0 /mnt/A ext2 rw,relatime 0 0
/dev/loop1 /mnt/A minix rw,relatime 0 0
root@debian:/home/soul#

Как по мне, cамый оптимальный вариант решения (подсмотрен тут) — это создать линейный RAID из двух петлевых устройств, привязанных к своим файлам, и смонтировать его в нужную точку монтирования (требует установленного пакета mdadm): Показать

root@debian:/home/soul# losetup /dev/loop0 A.img
root@debian:/home/soul# losetup /dev/loop1 B.img
root@debian:/home/soul# mdadm --build /dev/md0 --level=linear --raid-devices=2 /dev/loop0 /dev/loop1
root@debian:/home/soul# mount /dev/md0 /mnt
root@debian:/home/soul#

Популярное
Наверх