diff options
Diffstat (limited to 'builder/modules.d/dnbd3-rootfs/scripts/device-add-write-layer.sh')
-rwxr-xr-x | builder/modules.d/dnbd3-rootfs/scripts/device-add-write-layer.sh | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/builder/modules.d/dnbd3-rootfs/scripts/device-add-write-layer.sh b/builder/modules.d/dnbd3-rootfs/scripts/device-add-write-layer.sh new file mode 100755 index 00000000..2e4116a7 --- /dev/null +++ b/builder/modules.d/dnbd3-rootfs/scripts/device-add-write-layer.sh @@ -0,0 +1,26 @@ +#!/usr/bin/env bash +# -*- coding: utf-8 -*- +# region imports +# shellcheck source=./rebash/core.sh +source "/usr/lib/rebash/core.sh" +core.import exceptions +exceptions.activate +# endregion + +combined_device_name="$1" +read_only_device="$2" +writable_device="$3" +persistent="$4" # P or N +chunksize='1' + +partition_size="$(blockdev --getsz "$read_only_device")" +writable_partition_name='root' +modprobe dm_snapshot +dmsetup create "$combined_device_name" --noudevsync --table \ + "0 $partition_size snapshot $read_only_device $writable_device $persistent $chunksize" +dmsetup mknodes --noudevsync "$combined_device_name" + +# region vim modline +# vim: set tabstop=4 shiftwidth=4 expandtab: +# vim: foldmethod=marker foldmarker=region,endregion: +# endregion |