記錄一下可行的辦法
為了避免插拔硬盤
理論上 linux 通用
安裝環境:
雙硬盤 nvme + nvme
雙系統 windows10 + ubuntu 20.04
主板 微星 x570
已有條件:
在 nvme0 硬盤上已安裝 win10, efi
要在添加的第二塊硬盤上 nvme1 上安裝 ubuntu 20
目標:把 ubuntu20 的efi分區安置在 第二硬盤 nvme1 上,來保證兩個系統 啟動相互獨立
用到的軟件:
diskgenius free edition
大體思路:
1、安裝 linux 到 第二硬盤,留出 efi 分區
此時 包含 啟動信息會安裝在 第一塊硬盤的 efi 分區中,和 win 共存
此時重啟系統,bios 無法發現第二硬盤有 相關 的 UEFI 信息
實際 此時 第二硬盤的 efi 分區為空,並沒有什么信息
嘗試在第二硬盤的 efi 分區 放入 第一硬盤的 efi 分區的內容,bios 能否識別 第二硬盤的 UEFI信息 ?
-可以
2、在 win10系統下,用 diskgenius 打開,復制 第一硬盤的 efi 分區中的 boot 和 ubuntu 文件夾
在 第二硬盤 的 efi 分區中,建立 EFI 文件夾,粘貼 boot ubuntu 文件 到 剛剛建立的文件夾中
此時重啟系統,在 bios 中應該可以看到 硬盤二 現在有一個 UEFI 選項,但應該無法正常啟動
會進入 grub 推測是 grub 信息有誤
3、啟動到 linux 系統中,用 硬盤管理工具 掛載 第二硬盤的 efi 分區,修改 EFI/ubuntu/grub.cfg
第一行 search.fs_uuid 9db7e619-b1c2-4ae5-a939-9179f0c9fc43 root
把黑體部分的文字 替換成 / 掛載點對應 UUID
/ 分區的 UUID 可以通過 ubuntu 中的 磁盤工具查看
4、此時重啟,可選在 第二硬盤的 UEFI 信息,可正常進入 ubuntu
5、刪除第一硬盤 efi 分區中 ubuntu的信息
win10 下 打開 diskgenious,刪除 第一硬盤efi 分區中的 boot 和 ubuntu 文件夾
只保留 Microsoft 文件夾即可
6、結束,算是曲線救國
解決方案應該還不完善
因為 ubuntu20 中的 /boot/efi 實際帶入的還是 硬盤一對應的 efi
7、修改 /etc/fstab 把 /boot/efi 對應的分區修改為 第二硬盤 的 efi 分區即可
sudo blkd 查詢各個硬盤分區 對應的 UUID