diff options
author | Thore Sommer <debian@thson.de> | 2021-07-19 11:50:22 +0200 |
---|---|---|
committer | Thore Sommer <debian@thson.de> | 2021-07-19 11:52:09 +0200 |
commit | 1cd901cfa2821b1440179936db2582aa11f6debe (patch) | |
tree | 4c5e998534ff36f12b06e57af201abda6702d3f8 /scripts | |
parent | e02e2df4b9aaa5e227adc2210534fbb081ecbe7a (diff) | |
download | vyos-live-build-1cd901cfa2821b1440179936db2582aa11f6debe.tar.gz vyos-live-build-1cd901cfa2821b1440179936db2582aa11f6debe.zip |
Enable dm-verity support also for ext filesystemsmaster
Those need a block size of 4k to work.
Diffstat (limited to 'scripts')
-rwxr-xr-x | scripts/build/binary_dm-verity | 13 | ||||
-rwxr-xr-x | scripts/build/binary_rootfs | 9 |
2 files changed, 15 insertions, 7 deletions
diff --git a/scripts/build/binary_dm-verity b/scripts/build/binary_dm-verity index fb33c7a5f..c9d899c42 100755 --- a/scripts/build/binary_dm-verity +++ b/scripts/build/binary_dm-verity @@ -28,11 +28,14 @@ fi Echo_message "Begin creating dm-verity hash for rootfs" -if [ "${LB_CHROOT_FILESYSTEM}" != "squashfs" ] -then - Echo_error "dm-verity support is only implemented for squashfs" - exit 1 -fi +case ${LB_CHROOT_FILESYSTEM} in + squashfs|ext2|ext3|ext4) + ;; + *) + Echo_error "dm-verity support is not implemented for ${LB_CHROOT_FILESYSTEM}!" + exit 1 + ;; +esac case "${LB_INITRAMFS}" in diff --git a/scripts/build/binary_rootfs b/scripts/build/binary_rootfs index 802bee9d7..135a2dbc0 100755 --- a/scripts/build/binary_rootfs +++ b/scripts/build/binary_rootfs @@ -111,8 +111,13 @@ case "${LB_CHROOT_FILESYSTEM}" in Chroot chroot "ln -s /proc/mounts/mtab /etc/mtab" FAKE_MTAB=true fi - - Chroot chroot "mkfs.${LB_CHROOT_FILESYSTEM} -F -b 1024 -N ${REAL_INODES} -m 0 filesystem.${LB_CHROOT_FILESYSTEM}" + BLOCK_SIZE=1024 + if [ "${LB_DM_VERITY}" = "true" ] + then + # dm-verity needs a block size of at least 4k + BLOCK_SIZE=4096 + fi + Chroot chroot "mkfs.${LB_CHROOT_FILESYSTEM} -F -b ${BLOCK_SIZE} -N ${REAL_INODES} -m 0 filesystem.${LB_CHROOT_FILESYSTEM}" mkdir -p filesystem.tmp mount -o loop chroot/filesystem.${LB_CHROOT_FILESYSTEM} filesystem.tmp |