Even though squashfs is not writeable, it must be mounted with -o ro in order to be mounted multiple times. This allows, for example, the same snapshot to be mounted simultaneously in multiple catalyst chroots.
Signed-off-by: Matt Turner <[email protected]> --- catalyst/base/stagebase.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/catalyst/base/stagebase.py b/catalyst/base/stagebase.py index 55d1032d..651bf4e4 100644 --- a/catalyst/base/stagebase.py +++ b/catalyst/base/stagebase.py @@ -868,7 +868,9 @@ class StageBase(TargetBase, ClearBase, GenBase): mount += ['-t', 'tmpfs', '-o', 'noexec,nosuid,nodev'] else: source_path = Path(self.mount[x]['source']) - if source_path.suffix != '.sqfs': + if source_path.suffix == '.sqfs': + mount += ['-o', 'ro'] + else: mount.append('--bind') # We may need to create the source of the bind mount. E.g., in the -- 2.26.2
