From be31f03edaccc91e2e12086178cd2442c6dfb2d4 Mon Sep 17 00:00:00 2001 From: Lars Wirzenius Date: Wed, 16 Feb 2022 18:52:10 +0200 Subject: fix: don't mount anything on root before debootstrap is run Sponsored-by: author --- v-i | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/v-i b/v-i index 8bdd6dd..c8beaaf 100755 --- a/v-i +++ b/v-i @@ -299,12 +299,6 @@ def vmdb_spec(system, ansible_vars): # ext4 seems like a safe choice. If you wanted another file # system, sorry. mkfs("root", "ext4"), - # Mount the root file system. - mount("root"), - # Mount /boot on top of the root file system. - mount("boot", dirname="/boot", mount_on="root"), - # Mount /boot/efi. - mount("efi", dirname="/boot/efi", mount_on="boot"), ] ) @@ -320,6 +314,8 @@ def vmdb_spec(system, ansible_vars): steps.extend( [ + # Mount the root file system. + mount("root"), # If we have a cached version of the installed system, unpack # it now. Otherwise do nothing. Note that if you make any # changes to the steps marked "unless: rootfs_unpacked", you @@ -345,8 +341,13 @@ def vmdb_spec(system, ansible_vars): # If we didn't unpack an existing cache archive, make one now. # Otherwise, skip this step. cache_rootfs("root"), - # This MUST be after the debootstrap step. virtual_filesystems("root"), + # Mount /boot on top of the root file system. This MUST be done after the + # debootstrap step: otherwise the root file system isn't empty, and then + # debootstrap fails. + mount("boot", dirname="/boot", mount_on="root"), + # Mount /boot/efi. + mount("efi", dirname="/boot/efi", mount_on="boot"), # Create /etc/fstab (and, if LUKS is used, /etc/crypttab). fstab("root"), # These MUST come after the fstab step so that they add the -- cgit v1.2.1