
У меня был ноутбук с двойной загрузкой (Windows/Linux) и SSD на 500 ГБ, и я заменил SSD на SSD на 1 ТБ, выполнив описанную ниже процедуру. После перезагрузки он загружается прямо в Windows, без меню grub. Почему это произошло и как восстановить меню grub?
Вот что я сделал:
- Загрузите ноутбук с загрузочной флешки (с Linux Mint)
- Используйте dd для копирования всего SSD-накопителя объемом 500 ГБ на сетевой диск.
- Выключите ноутбук и замените SSD на SSD объемом 1 ГБ.
- Загрузитесь снова с помощью Live Bootstick и используйте dd, чтобы скопировать файл с сетевого диска обратно на SSD.
- Перезагрузка без живого загрузчика
Я знаю, что из-за этого половина моего нового 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 с помощью следующих команд (из live bootstick). Эти команды помогли восстановить grub после более раннего обновления Windows, и они отработали без ошибок, но на этот раз не восстановили 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?
Вот некоторые сведения об оборудовании:
Ноутбук: Dell XPS 15 (9550)
Старый SSD: PM951 NVMe SAMSUNG 512 ГБ
Новый SSD: Kingston Technology KC2500 M.2 1000 ГБ PCI Express 3.0 3D TLC NVMe
Ссылка на Pastebin:http://paste.ubuntu.com/p/DkMGvNXdYq/