雙重開機筆記型電腦克隆硬碟後如何恢復 grub

雙重開機筆記型電腦克隆硬碟後如何恢復 grub

我有一台配備 500GB SSD 的雙啟動 (Windows/Linux) 筆記型電腦,並使用下面描述的程序將 SSD 更換為 1TB SSD。當我重新啟動時,它直接啟動到 Windows,沒有 grub 選單。為什麼會發生這種情況?

這就是我所做的:

  1. 從即時啟動棒啟動筆記型電腦(運行 Linux Mint)
  2. 使用 dd 將整個 500GB SSD 複製到網路磁碟機
  3. 關閉筆記型電腦並將 SSD 更換為 1GB SSD。
  4. 使用即時啟動棒再次啟動,並使用 dd 將網路磁碟機上的檔案複製回 SSD。
  5. 無需即時啟動棒即可重新啟動

我知道這會使我的新 SSD 的一半未使用;我希望稍後能解決這個問題。

dd 運作正常,或至少我可以從引導棒掛載所有分割區,包括活動分割區。這是以下的輸出fdisk -l

Disk /dev/loop0: 1.8 GiB, 1912557568 bytes, 3735464 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes


GPT PMBR size mismatch (1000215215 != 1953525167) will be corrected by write.
The backup GPT table is not on the end of the device. This problem will be corrected by write.
Disk /dev/nvme0n1: 931.53 GiB, 1000204886016 bytes, 1953525168 sectors
Disk model: KINGSTON SKC2500M81000G                 
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: 282E2059-1738-4156-802F-50E4A4E71652

Device             Start        End   Sectors   Size Type
/dev/nvme0n1p1      2048    1026047   1024000   500M EFI System
/dev/nvme0n1p2   1026048    1288191    262144   128M Microsoft reserved
/dev/nvme0n1p3   1288192  205020339 203732148  97.2G Microsoft basic data
/dev/nvme0n1p4 205021184  206086143   1064960   520M Windows recovery environment
/dev/nvme0n1p5 206088192  214087679   7999488   3.8G Linux swap
/dev/nvme0n1p6 214087680  969730047 755642368 360.3G Linux filesystem
/dev/nvme0n1p7 969730048  970651647    921600   450M Microsoft basic data
/dev/nvme0n1p8 970651648  997961727  27310080    13G Windows recovery environment
/dev/nvme0n1p9 997961728 1000204287   2242560   1.1G Windows recovery environment


Disk /dev/mapper/vg-root: 60 GiB, 64424509440 bytes, 125829120 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes


Disk /dev/mapper/vg-home: 300.32 GiB, 322462285824 bytes, 629809152 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes


Disk /dev/sda: 14.93 GiB, 16008609792 bytes, 31266816 sectors
Disk model: Cruzer Blade    
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x5b137364

Device     Boot   Start      End  Sectors  Size Id Type
/dev/sda1  *          0  3974271  3974272  1.9G  0 Empty
/dev/sda2           632     8567     7936  3.9M ef EFI (FAT-12/16/32)
/dev/sda3       3977216 31266815 27289600   13G 83 Linux

我嘗試使用以下命令(來自即時啟動棒)重新安裝 grub。這些命令有助於在早期的 Windows 更新後恢復 grub,並且在運行時沒有錯誤,但這次沒有恢復 grub。

mount /dev/mapper/vg-root /mnt
mkdir /efi
mount /dev/nvme0n1p1 /efi
grub-install --directory=/mnt/usr/lib/grub/x86_64-efi --boot-directory=/mnt/boot --efi-directory=/efi

問題是否是由新磁碟的 UUID 不同引起的?我可能是錯的,但據我所知,磁碟 UUID 儲存在磁碟本身上,因此應該與其餘資料一起複製。那麼,可能出了什麼問題以及如何重新啟動 grub?

以下是一些硬體詳細資訊:

筆記型電腦:戴爾 XPS 15 (9550)

舊SSD:PM951 NVMe SAMSUNG 512GB

新款固態硬碟:金士頓科技 KC2500 M.2 1000 GB PCI Express 3.0 3D TLC NVMe

貼上連結:http://paste.ubuntu.com/p/DkMGvNXdYq/

相關內容