Merge remote-tracking branch 'origin/pr/220'

* origin/pr/220:
  init/setup-rwdev: don't write a journal in DispVMs
  init/functions: fix DispVM detection
This commit is contained in:
Marek Marczykowski-Górecki 2020-02-17 04:41:34 +01:00
commit 7e9756081b
No known key found for this signature in database
GPG Key ID: 063938BA42CFA724
2 changed files with 12 additions and 2 deletions

View File

@ -66,7 +66,7 @@ is_templatevm() {
}
is_dispvm() {
[ "$(qubes_vm_type)" = "DisposableVM" ]
[ "$(qubesdb-read /type)" = "DispVM" ]
}
is_fully_persistent() {

View File

@ -1,5 +1,9 @@
#!/bin/sh
# Source Qubes library.
# shellcheck source=init/functions
. /usr/lib/qubes/init/functions
set -e
dev=/dev/xvdb
@ -16,7 +20,13 @@ if [ -e "$dev" ] ; then
if cmp --bytes $private_size "$dev" /dev/zero >/dev/null && { blkid -p "$dev" >/dev/null; [ $? -eq 2 ]; }; then
# the device is empty, create filesystem
echo "Virgin boot of the VM: creating private.img filesystem on $dev" >&2
if ! content=$(mkfs.ext4 -m 0 -q "$dev" 2>&1) ; then
# journals are only useful on reboot, so don't write one in a DispVM
if is_dispvm ; then
journal="-O ^has_journal"
else
journal="-O has_journal"
fi
if ! content=$(mkfs.ext4 -m 0 -q "$journal" "$dev" 2>&1) ; then
echo "Virgin boot of the VM: creation of private.img on $dev failed:" >&2
echo "$content" >&2
echo "Virgin boot of the VM: aborting" >&2