初次安裝 Arch Linux 後雙啟動 Windows 10

初次安裝 Arch Linux 後雙啟動 Windows 10

我最近為自己建立了一個供個人使用的桌面,並最初安裝了 Arch Linux 作為我的主要作業系統(在 NVME 驅動器上),作為一名遊戲玩家,我最終得出結論,我也需要 Windows 灌輸。我將 Windows 10 安裝到 HDD(我的輔助磁碟機)上的 500GB 分割區。

每當我需要使用 Windows 時,我厭倦了在 BIOS 中手動切換啟動順序,我最近也嘗試製作 grub 啟動窗口,這就是我的問題開始的地方。

儘管 os-prober 返回 Windows 啟動管理器位置,但 Grub 僅顯示 arch 的啟動項目。我已經禁用了快速啟動並嘗試為 grub 手動輸入條目,但無論我在運行 install-grub 之前做什麼(甚至依次到 /dev/sda 和 /dev/nvme0n1),它仍然只顯示啟動選項的 Arch。

分區表(fdisk -l 輸出):

磁碟 /dev/nvme0n1:232.9 GiB,250059350016 字節,488397168 個磁區
單位:1 * 512 = 512 位元組的磁區
磁區大小(邏輯/實體):512 位元組/512 位元組的磁區區大小(邏輯/實體):512 位元組/512 位元組的區段
大小(I/O 位元組最小/最佳):512 位元組/ 512 位元組
磁碟標籤類型:gpt
磁碟識別碼:1412B5DB-A22B-4957-B915-EC6B912D8833

裝置起始結束磁區大小類型
/dev/nvme0n1p1 2048 1000201030MFI200300020 EFI203000000020 E
/dev/nvme0n1p2 1003520 34 557948 33554429 16G Linux 交換
/dev/nvme0n1p3 34557952 488397134 453839183 216.4482164504522139183 216.4032125/3020215454521545 磁碟機。


字節,5860533168 扇區
單位:1 * 512 = 512 位元組的扇區
扇區大小(邏輯/物理):512 位元組/4096 位元組
I/O 大小(最小/最佳):4096 位元組 / 4096 位元組
磁碟標籤類型:gpt
磁碟識別碼:BF345208-15FD-454F- 8252-9963AC133C5C

裝置起始結束磁區大小型別
/dev/sda1 2048 34815 32768 16M Microsoft 保留
/dev/sda2 34816 524290047 52 42552322500546250047 52 4255232250054305 4
5336243087 2.5T Linux 檔案系統

BIOS 中有一件奇怪的事情,它指出Windows 啟動項目位於我的NVME 驅動器上,我假設Windows 檢測到該驅動器為ESP 並自動安裝其啟動管理器。

編輯:

所以update-grub是Debian的東西,Arch使用grub-mkconfig,我可以成功運行,以下是部分輸出:

開始 /etc/grub.d/30_os-prober

在/dev/nvme0n1p1@/EFI/Microsoft/Boot/bootmgfw.efi 上找到Windows 啟動管理器menuentry 'Windows 啟動管理器(位於/dev/nvme0n1p1)' --class windows --class >os $menuentry_id_option 'osprober- efi-CAB4 -D072' { insmod part_gpt insmod fat if [ x$feature_platform_search_hint = xy ];然後搜尋 --no-floppy --fs-uuid --set=root CAB4-D072 否則搜尋 --no-floppy --fs-uuid --set=root CAB4-D072 fi chainloader /EFI/Microsoft/Boot/bootmgfw .efi }

結束 /etc/grub.d/30_os-prober

然而,當我從 BIOS 的“arch”或“grub”啟動選項(兩者都在我的 NVME 驅動器上)啟動時,唯一的 grub 條目仍然是 arch。

答案1

如果你還沒嘗試sudo update-grub過的話。

我總是忘記這樣做...;)

答案2

在 Arch 上使用此命令會將 Windows 10 新增至與 Arch 一起的 grub 中。

grub-mkconfig -o /boot/grub/grub.cfg "$@"

相關內容