Debian

Debian 上 /boot/efi 分區的 RAID 1

  • April 20, 2021

我有一個 CentOS 8 安裝,其中分區和 RAID 1 配置使用 CentOS 安裝程序的自動分區完成。這是輸出lsblk

sda         8:0    0 558.9G  0 disk
├─sda1      8:1    0    50G  0 part
│ └─md127   9:127  0    50G  0 raid1 /
├─sda2      8:2    0    20G  0 part
│ └─md126   9:126  0    20G  0 raid1 [SWAP]
├─sda3      8:3    0     1G  0 part
│ └─md125   9:125  0  1022M  0 raid1 /boot
├─sda4      8:4    0   600M  0 part
│ └─md124   9:124  0   600M  0 raid1 /boot/efi
└─sda5      8:5    0 487.3G  0 part
 └─md123   9:123  0 487.2G  0 raid1 /home
sdb         8:16   0 558.9G  0 disk
├─sdb1      8:17   0    50G  0 part
│ └─md127   9:127  0    50G  0 raid1 /
├─sdb2      8:18   0    20G  0 part
│ └─md126   9:126  0    20G  0 raid1 [SWAP]
├─sdb3      8:19   0     1G  0 part
│ └─md125   9:125  0  1022M  0 raid1 /boot
├─sdb4      8:20   0   600M  0 part
│ └─md124   9:124  0   600M  0 raid1 /boot/efi
└─sdb5      8:21   0 487.3G  0 part
 └─md123   9:123  0 487.2G  0 raid1 /home

如您所見,/boot/efi 分區在 RAID 1 中鏡像為任何其他分區。現在,我在安裝 Debian 時嘗試重新創建相同的設置,但無法繼續。如果我以這種方式設置分區和 RAID 1,我會在 grub 安裝期間從安裝程序中收到失敗消息(沒有其他錯誤消息,只是“某些安裝步驟失敗”一般消息)。

截屏:

錯誤

如果我不鏡像 ESP 分區,錯誤就會消失。

我意識到鏡像 ESP 分區聽起來是不可行的,環顧四周似乎每個人都同意。但是 CentOS 安裝程序設法做到了。

我必須做什麼才能在 Debian 上重新創建相同的設置?

感謝@cas 的評論,我有這個工作。

步驟主要是:

  1. 我已經安裝了 Debian,但沒有為 ESP 分區設置 RAID。在分區期間,我已經創建了兩個相同的分區,標記為 ESP 分區。他們/dev/sda1/dev/sdb1
  2. 我已經複製了/boot/efi其他地方的內容(/boot/eficopy)。
  3. umount /boot/efi
  4. mdadm --create --verbose /dev/md3 --level=1 --raid-devices=2 --metadata=0.90 /dev/sda1 /dev/sdb1. 如果已經是活動的 MD 設備,當然換成/dev/md3別的東西/dev/md3
  5. mkfs.vfat /dev/md3
  6. 在中找到分區的 UUID/dev/disk/by-uuid
  7. 用新的 UUID更改了/boot/efi條目/etc/fstab
  8. mount /boot/efi
  9. /boot/efi將備份中的數據再次復製到

重新啟動工作。

編輯:而不是備份/boot/efi分區,似乎

grub-install --efi-directory=/boot/efi

完成恢復其內容的工作(在上面的步驟 9 中),即使我收到了很多我無法理解的警告。

引用自:https://unix.stackexchange.com/questions/644108