%20%E8%A4%87%E8%A3%BD%E5%88%B0%E5%8F%A6%E4%B8%80%E5%80%8B%20SSD%EF%BC%8C%E9%99%A4%E9%9D%9E%E9%A1%9E%E5%9E%8B%E5%AE%8C%E5%85%A8%E7%9B%B8%E5%90%8C.png)
我安裝了 CentOS 7.9,我想將所有 SSD 內容(包括作業系統)移動到新的/更快的 SSD(兩者都是 M.2 nvme)。
磁碟使用 LVM 設定。我嘗試使用 Macrium Reflect 和其他磁碟克隆工具進行克隆,因為我不想用dd
.但我總是得到相同的結果:系統啟動時下劃線閃爍且無法啟動。我在克隆過程中沒有收到任何錯誤。
我沒有更改 BIOS 中的啟動設置,我假設如果磁碟顯示為 MBR 並且它也克隆到 MBR 中,那麼 BIOS 中的啟動設定應該保持不變。
奇怪的是如果我克隆兩個相同的驅動器似乎可以工作。
那麼問題可能是一些引導設定告訴它引導分割區從哪裡開始或類似的東西嗎?我應該嘗試哪些功能才能使其可啟動?像是對齊分區之類的東西? (克隆前在源上,還是克隆後在目標上?)。
我不認為來源有任何錯誤,我不擅長,但我檢查了它。
我特意將來源分割區建得小一些,以便它適合 ~500GB 大小的大小變化。它從不抱怨分區不適合新驅動器。
答案1
事實證明它所需要的只是一個grub2 安裝以修復啟動。完整命令是這樣的:
grub2-install --directory /usr/lib/grub/i386-pc/ /dev/nvme0n1
我正在為自己編寫這個“傻瓜”修復程序,我知道我會再次遇到這個問題:)
- 從 centos 安裝棒啟動
- 選擇故障排除 > 救援 centos 系統
1) continue
chroot /mnt/sysimage
在已安裝的分割區中充當根用戶(螢幕上建議這樣做)- 嘗試過
grub2-install /dev/nvme0n1
- 抱怨
modinfo.sh
找不到,我應該具體說明--target
或--directory
- 我做了一個
find / -name modinfo.sh
並發現它在/usr/lib/grub/i386-pc/
- 最後安裝了 grub:
grub2-install --directory /usr/lib/grub/i386-pc/ /dev/nvme0n1
起初我以為要安裝的裝置是/boot
(/dev/nvme0n1p1),但它是主/父裝置:/dev/nvme0n
!
如果有人可以評論這i386-pc
部分是否可以?這似乎是一個不尋常的環境。不確定我選對了那部分。