2019-04-12 16:41:09 -04:00
|
|
|
#!/bin/bash
|
|
|
|
|
|
|
|
########################################################
|
|
|
|
# Make a LVM image appear in qvm-block
|
|
|
|
# Create a disposable VM
|
|
|
|
# Attach the image to the newly created disposable VM
|
|
|
|
# Wait until the disposable VM is destroyed
|
|
|
|
# Remove the LVM image from the qvm-block list
|
|
|
|
######################################################
|
|
|
|
|
2019-04-13 02:11:22 -04:00
|
|
|
image=${1?Image file is required, example "/dev/qubes_dom0/vm-debian-9-tmp-root"}
|
2019-04-12 16:41:09 -04:00
|
|
|
dvm=${2?DVM template name is required, example: "fedora-29-dvm"}
|
|
|
|
dev=$(basename $(readlink "$image"))
|
|
|
|
qubesdb-write /qubes-block-devices/$dev/desc "$image"
|
|
|
|
list_before=$(qvm-ls | cut -d " " -f1 | sort)
|
|
|
|
qvm-run -v --dispvm=$dvm --service qubes.StartApp+xterm &
|
|
|
|
sleep 5
|
|
|
|
list_after=$(qvm-ls | cut -d " " -f1 | sort)
|
|
|
|
diff=$(comm -3 <(echo "$list_before") <(echo "$list_after"))
|
|
|
|
qvm-block attach $diff dom0:$dev
|
|
|
|
wait
|
|
|
|
qubesdb-rm /qubes-block-devices/$dev/
|