Доступ к нижнему монтированию оверлейного корня fs
Я использую линукс overlay fs как корневая файловая система, чтобы сохранить реальный корневой раздел только для чтения и записывать изменения в другой fs (например, tmpfs или другой раздел).
Тем не менее, когда корневая файловая система, наконец, на месте (после 'pivot root'), оригинальные монтируются (скажем, в /dev/sda в /mnt/root-write-protected) скрыт в исходном корне (например, init ramdisk), но все еще активно подключен. Тем не менее, он больше не виден внутри корневой файловой системы, и исходное устройство не может быть снова смонтировано в режиме записи, так как mount говорит:
mount: /dev/sda is already mounted
несмотря на отсутствие записи в списке mount или же cat /etc/mtab,
Как я могу получить доступ (например, чтение из, перемонтировать) к этому скрытому монтированию?
2 ответа
До того, как произойдет корень, mount --bind файловая система в место, куда вы сможете добраться.
Например:
- гора
sda2на/mnt/root-write-protected, - Смонтировать накладки на
/mnt/new-root, - Добавленный шаг: Bind
/mnt/root-write-protectedна/mnt/new-root/raw-disk, - Поворот в
/mnt/new-root, - Теперь у вас есть
sda2доступны на/raw-disk,
Поскольку оригинальное крепление «похоронено»pivot_rootилиchange_root, его нельзя перемонтировать как записываемое устройство. Однако этот том можно использовать в качестве исходного файла для шлейфового устройства. Его можно смонтировать как обычно и использовать для доступа на запись. После внесения изменений в это устройство систему следует перезагрузить, так как оверлей не соответствует реальным данным на диске.
Нравиться:
sudo mkdir /mnt/hidden_root
sudo losetup -f /dev/sda2 # change to your overlayed root volume
sudo mount /dev/loop0 /mnt/hidden_root # change loop0 if already used before
# ... do changes to /mnt/hidden_root here ...
sudo reboot
После перезагрузки изменения применяются к живому root.