vtDM=$(ventoy_find_dm_id ${blkdev_num})
echo -n $vtDM > /ventoy/vtDM
-ventoy_create_dev_ventoy_part
+ventoy_create_chromeos_ventoy_part 3
mdev -s
vtlog "copy out the e2fsck program ..."
+
+copy_lib() {
+ cp -a /ventoy_rdroot/usr/lib64/$1 /usr/lib64/
+ cp -a /ventoy_rdroot/lib64/$1 /lib64/
+}
+
mkdir /ventoy_rdroot
mkdir -p /lib /lib64 /usr/lib64 /sbin
mount -o ro /dev/ventoy3 /ventoy_rdroot >>$VTLOG 2>&1
cp -a /ventoy_rdroot/sbin/e2fsck /sbin/
-cp -a /ventoy_rdroot/usr/lib64/libext2fs* /usr/lib64/
-cp -a /ventoy_rdroot/usr/lib64/libcom_err* /usr/lib64/
-cp -a /ventoy_rdroot/usr/lib64/libe2p* /usr/lib64/
-cp -a /ventoy_rdroot/lib64/libblk* /lib64/
-cp -a /ventoy_rdroot/lib64/libuuid* /lib64/
-cp -a /ventoy_rdroot/lib64/libdl.* /lib64/
-cp -a /ventoy_rdroot/lib64/libdl-* /lib64/
-cp -a /ventoy_rdroot/lib64/libc.* /lib64/
-cp -a /ventoy_rdroot/lib64/libc-* /lib64/
-cp -a /ventoy_rdroot/lib64/libpthread* /lib64/
-cp -a /ventoy_rdroot/lib64/ld-* /lib64/
+cp -a /ventoy_rdroot/sbin/dmsetup /sbin/
+
+copy_lib libext2fs*
+copy_lib libcom_err*
+copy_lib libe2p*
+copy_lib libblk*
+copy_lib libuuid*
+copy_lib libdl.*
+copy_lib libdl-*
+copy_lib libc.*
+copy_lib libc-*
+copy_lib libpthread*
+copy_lib ld-*
+copy_lib libdevmapper*
+copy_lib libudev*
+copy_lib libm.*
+copy_lib libm-*
+copy_lib librt*
+copy_lib libpopt*
+copy_lib libgpg-error*
+copy_lib libselinux*
+copy_lib libsepol*
+copy_lib libpcre*
+copy_lib libcap*
+copy_lib libdw*
+copy_lib libgcc_s*
+copy_lib libattr*
+copy_lib libelf*
+copy_lib libz.*
+copy_lib libbz2*
+copy_lib libgcrypt*
+copy_lib liblvm*
+
+ln -s /lib64/libdevmapper.so.1.02 /lib64/libdevmapper.so.1.02.1
umount /ventoy_rdroot
vtlog "========================================="
vtlog "===== e2fsck -y -v /dev/ventoy1 ====="
e2fsck -y -v /dev/ventoy1 >>$VTLOG 2>&1
-vtlog "===== e2fsck -y -v /dev/ventoy3 ====="
-e2fsck -y -v /dev/ventoy3 >>$VTLOG 2>&1
+#vtlog "===== e2fsck -y -v /dev/ventoy3 ====="
+#e2fsck -y -v /dev/ventoy3 >>$VTLOG 2>&1
vtlog "===== e2fsck -y -v /dev/ventoy8 ====="
e2fsck -y -v /dev/ventoy8 >>$VTLOG 2>&1
vtlog "========================================="
+/sbin/dmsetup --version >>$VTLOG 2>&1
+veritysetup --version >>$VTLOG 2>&1
+
vtlog "proc devtmpfs ..."
mkdir /newdev
mount -t devtmpfs dev /newdev
cp -a /dev/mapper/ventoy* /newdev/mapper/
cp -a /dev/ventoy* /newdev/
+if [ "$VTOY_VLNK_BOOT" = "01" ]; then
+ vtLine=$($VTOY_PATH/tool/vtoydump -f /ventoy/ventoy_os_param)
+ vtdiskname=${vtLine%%#*}
+fi
vtshortname="${vtdiskname#/dev/}"
mv /newdev/${vtshortname} /newdev/backup_${vtshortname}
fi
done
-cp -a $VTLOG /newdev/ventoy.log
-umount /newdev
+# if grep -q 'DM=' /proc/cmdline; then
+ # vtlog "Boot verified image ..."
+
+ # dmP1=$(sed "s/.*\(0 [0-9]* verity\).*/\1/" /proc/cmdline)
+ # alg=$(sed "s/.*alg=\([^ ]*\).*/\1/" /proc/cmdline)
+ # hexdigest=$(sed "s/.*root_hexdigest=\([0-9a-fA-F][0-9a-fA-F]*\).*/\1/" /proc/cmdline)
+ # salt=$(sed "s/.*salt=\([0-9a-fA-F][0-9a-fA-F]*\).*/\1/" /proc/cmdline)
+ # hashstart=$(sed "s/.*hashstart=\([0-9][0-9]*\).*/\1/" /proc/cmdline)
+
+ #512 to 4096
+ # blocknum=$(expr $hashstart / 8)
+ # hashoffset=$(expr $hashstart \* 512)
+
+ # vtlog "veritysetup create vroot $vt_root_dev $vt_root_dev $hexdigest --data-block-size=4096 --hash-block-size=4096 --data-blocks=$blocknum --hash-offset=$hashoffset --salt=$salt --hash=$alg --no-superblock --format=0"
+ # veritysetup create vroot $vt_root_dev $vt_root_dev $hexdigest --data-block-size=4096 --hash-block-size=4096 --data-blocks=$blocknum --hash-offset=$hashoffset --salt=$salt --hash=$alg --no-superblock --format=0
+ # sleep 1
+ # mdev -s
+
+ # blkdev_num=$(dmsetup ls | grep vroot | sed 's/.*(\([0-9][0-9]*\),[^0-9]*\([0-9][0-9]*\).*/\1:\2/')
+ # vtDM=$(ventoy_find_dm_id ${blkdev_num})
+ # vtlog "blkdev_num=$blkdev_num vtDM=$vtDM"
+
+ # if [ -b /dev/$vtDM ]; then
+ # veritysetup status vroot >> $VTLOG 2>&1
+ # mount -o ro /dev/$vtDM /ventoy_rdroot
+ # else
+ # mount -o ro $vt_root_dev /ventoy_rdroot
+ # fi
+# else
+ # vtlog "Boot normal image ..."
+ # mount -o ro $vt_root_dev /ventoy_rdroot
+# fi
+
+vtlog "Boot normal image ..."
mount -o ro $vt_root_dev /ventoy_rdroot
+
+cp -a $VTLOG /newdev/ventoy.log
+umount /newdev
mount -t devtmpfs dev /ventoy_rdroot/dev
PATH=$VTPATH_OLD