如何定义 EFI + LVM 的 AutoInstall 分区,并将最小驱动器作为操作系统的目标

如何定义 EFI + LVM 的 AutoInstall 分区,并将最小驱动器作为操作系统的目标

目标:

使用 EFI 和 LVM 将操作系统安装到最小的可用驱动器上

问题:

由于没有创建所需的引导加载程序分区,目前在分区验证的早期会出现致命错误

我一直在仔细研究 AutoInstall 和 Curtin 的文档,并在网络上搜索大量案例,但到目前为止,我还没有成功实现以下分区。

每次尝试时,我都会因为以下错误消息而在构建中遭遇致命失败:

错误信息:

自动安装配置未创建所需的引导加载程序分区

AutoInstall/Curtin 分区代码

  storage:
    config:
      - type: disk                   # Always install OS on our smallest disk
        match:
          size: smallest
        id: os-drive
        ptable: gpt
        wipe: superblock-recursive
        preserve: false
        name: ''
        grub_device: false
      - type: partition             # EFI partition /boot/efi
        number: 1
        id: efi-partition
        device: os-drive
        size: 256M
        flag: boot
        grub_device: true
      - type: format                # EFI partition format rules
        id: efi-format
        volume: efi-partition
        fstype: fat32
        label: ESP
      - path: /boot/efi             # EFI partition mount rules
        device: efi-format
        type: mount
        id: mount-efi
      - type: partition             # BOOT partition /boot
        number: 2
        id: boot-partition
        device: os-drive
        size: 1G
        grub_device: false
      - type: format                # BOOT partition format rules  
        id: boot-format
        volume: boot-partition
        fstype: ext4
        label: BOOT
      - path: /boot                 # BOOT partition mount rules
        device: boot-format
        type: mount
        id: mount-boot
      - type: partition             # LVM partition (PV)
        number: 3
        id: lvm-partition
        device: os-drive
        size: -1
        grub_device: false
      - name: system                # LVM VG (system)
        devices:
        - lvm-partition
        preserve: false
        type: lvm_volgroup
        id: lvm_volgroup-0
      - name: root                  # LVM LV (root)
        volgroup: lvm_volgroup-0
        size: 16G
        wipe: superblock
        preserve: false
        type: lvm_partition
        id: lvm_partition-root
      - fstype: xfs                 # LVM LV root - format rules
        volume: lvm_partition-root
        preserve: false
        type: format
        id: format-root
      - path: /                     # LVM LV root - mount rules
        device: format-root
        type: mount
        id: mount-root
    swap:
      swap: 0
  version: 1

答案1

如果其他人来这里寻找此问题的解决方案,这里就是。

为了通过“需要引导加载程序分区”检查,您的用户数据存储部分中必须存在以下内容之一:

BIOS

  • 类型为“磁盘”的存储定义,其中 grub_device: true

UEFI

  • 类型为“分区”的存储定义,其中 grub_device: true
  • 为上述定义定义的文件系统(通常为 fat32)
  • 上述定义的“mount”类型的定义,路径为“/boot/efi”

相关内容