2

The EFI partition is formatted in ext4 during the setup of debian.

I am trying to preseed the install of debian jessie and I can't get it working since the UEFI partition is formatted in ext4 (got information with blkid).

My preseed for partitionning is the following:

d-i partman-auto/expert_recipe string                        \
 boot-root ::                                               \
         1 1 1 free                                      \
                 $gptonly{ }                             \
                 $primary{ }                             \
                 $bios_boot{ }                           \
                 method{ biosgrub }                      \
         .                                               \
         512 100 512 vfat                                \
                 $gptonly{ }                             \
                 $primary{ }                             \
                 method{ efi }                           \
                 format{ }                               \
                 $lvmignore{ }                           \
                 mountpoint{ /boot/efi }                 \
         .                                               \
         ...
         .

And I get the following error: "Failed to mount vfat filesystem on /boot/efi"

Of course, its an ext4 fs...!

Could anybody help?

3
  • 1
    /boot/efi is meant to be vfat, not ext4! Sep 13, 2015 at 17:02
  • Well, I do know but I can't get it formatted in vfat... I just figured out that the mkfs.vfat is missing in the setup shell from debian. Any idea?
    – Antho
    Sep 13, 2015 at 20:55
  • apt install dosfstools then something like mkfs.vfat -F32 /dev/sda1
    – Tombart
    Oct 23, 2019 at 9:41

1 Answer 1

9

I'm exactly at this point now, recording manual installation from PXE netboot to the UEFI VMWare system to extract right answers for preseed with debconf-get-selections --installer. What I see in the resulting file is:

partman-auto    partman-auto/choose_recipe      select  /lib/partman/recipes-amd64-efi/30atomic
partman-base    partman/default_filesystem      string  ext4

The content of which should give you the hint how to master your receipt:

partman-auto/text/atomic_scheme ::

538 538 1075 free
    $iflabel{ gpt }
    $reusemethod{ }
    method{ efi }
    format{ } .

128 512 256 ext2
    $defaultignore{ }
    method{ format }
    format{ }
    use_filesystem{ }
    filesystem{ ext2 }
    mountpoint{ /boot } .

500 10000 -1 $default_filesystem
    $lvmok{ }
    method{ format }
    format{ }
    use_filesystem{ }
    $default_filesystem{ }
    mountpoint{ / } .

100% 512 200% linux-swap
    $lvmok{ }
    $reusemethod{ }
    method{ swap }
    format{ } .

Based on that and as I'm using partman/early_command to generate appropriate layout for the given machine, I've scripted:

if [ -d "/sys/firmware/efi/" ]; then
    debconf-set "partman-auto/expert_recipe" "$(
        echo -n '600 600 1075 free $iflabel{ gpt } $reusemethod{ } method{ efi } format{ } . '
        echo -n '128 512 256 ext2 $defaultignore{ } method{ format } format{ } use_filesystem{ } filesystem{ ext2 } mountpoint{ /boot } . '
        echo -n '9216 2000 -1 $default_filesystem $lvmok{ } method{ format } format{ } use_filesystem{ } $default_filesystem{ } mountpoint{ / } .'
    )"
fi

And as a result got automagically:

# parted /dev/sda print free
Model: VMware Virtual disk (scsi)
Disk /dev/sda: 10.7GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:

Number  Start   End     Size    File system  Name  Flags
        17.4kB  1049kB  1031kB  Free Space
 1      1049kB  600MB   599MB   fat32              boot, esp
 2      600MB   10.7GB  10.1GB  ext4
        10.7GB  10.7GB  1032kB  Free Space

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .