восстановление загрузки NVMe-накопителя после копирования gparted

восстановление загрузки NVMe-накопителя после копирования gparted

Я пытаюсь перейти на свой новый NVMe Samsung 950 pro.

chroot /mnt/boot-sav/nvme0n1p3 update-grub
grub-probe: error: cannot find a GRUB drive for /dev/sda1.  Check your device.map.

Процесс:

  • Скопировано/вставлено через Gparted (последний gparted live-cd)
  • Запустил boot-repair (с рабочим столом Ubuntu 15.10)
  • не удалось наupdate-grub

http://paste.ubuntu.com/13244403/

Старый диск имел:

  • sda1 fat32 EFI
  • sda2 нтфс
  • нераспределенный (пришлось немного уменьшить размер для нового диска)
  • sda3 ext4
  • sda4 linux-своп

Моя первая догадка — я больше не использую sdустройство nvmс префиксом.

Любые мысли/помощь приветствуются.

sudo fdisk -l

Device             Start       End   Sectors   Size Type
/dev/nvme0n1p1      2048    206847    204800   100M Microsoft basic data
/dev/nvme0n1p2    206848 487878655 487671808 232.6G Microsoft basic data
/dev/nvme0n1p3 487878656 864057343 376178688 179.4G Linux filesystem
/dev/nvme0n1p4 864057344 897484799  33427456    16G Linux swap

Device     Boot   Start     End Sectors  Size Id Type
/dev/sda1  *          0 2301535 2301536  1.1G  0 Empty
/dev/sda2       2279532 2284075    4544  2.2M  c W95 FAT32 (LBA)

Обновление 14.11.15

Это последняя попытка:

sudo mount /dev/nvme0n1p3 /mnt
sudo mount /dev/nvme0n1p1 /mnt/boot/efi

for i in /dev /dev/pts /proc /sys /run; do sudo mount -B $i /mnt$i; done

sudo cp --remove-destination /etc/resolv.conf /mnt/etc/resolv.conf

sudo chroot /mnt
grub-install --efi-directory=/boot/efi --target=x86_64-efi --uefi-secure-boot 

Полученные результаты:

Installation finished. No error reported.

$ update-grub
grub-probe: error: cannot find a GRUB drive for /dev/sda1.  Check your device.map.

Когда я смотрю, /boot/grubя делаюНЕТесть device.map. Я читал, что он мне не нужен для grub2, но я его сгенерировал, запустил update-grubи столкнулся с тем же сообщением, что и выше.

Я пытаюсь перезагрузиться в любом случае, и мой EFI показывает только Windows Boot Managerкак загрузочный элемент, для которого он попадает на экран восстановления Windows. Раздел Ubuntu не указан как загрузочный диск в EFI.

решение1

sudo fdisk -l

затем посмотрите, на каком разделе у вас установлен Ubuntu (тип файла ext4), затем:

sudo mount -t ext4 /dev/sda6 /mnt 

(признаюсь, что sda6 — это мой раздел Ubuntu)

а потом

sudo grub-install --root-directory=/mnt /dev/sda

это переустановит grub и увидит все остальные имеющиеся у вас ОС, а также организует их все.

решение2

Это определенно должно сработать.

Device             Start       End   Sectors   Size Type
/dev/nvme0n1p1      2048    206847    204800   100M Microsoft basic data
/dev/nvme0n1p2    206848 487878655 487671808 232.6G Microsoft basic data
/dev/nvme0n1p3 487878656 864057343 376178688 179.4G Linux filesystem
/dev/nvme0n1p4 864057344 897484799  33427456    16G Linux swap

Здесь я не вижу ни раздела EFI, ни отдельного загрузочного раздела.

Копирование каталога EFI в корень не сработает. Вам нужен отдельный раздел типа fat32, около 100 МБ для хранения каталога EFI.

Поэтому мой совет — сжать /dev/nvme0n1p2 справа, чтобы освободить место для раздела efi.

Затем загрузитесь в Ubuntu Live Media.

Смонтировать корневой раздел

sudo mount /dev/nvme0n1pX /mnt/

Смонтировать раздел efi

sudo mount /dev/nvme0n1pX /mnt/boot/efi

; заменятьИксс фактическим идентификатором устройства

Chroot и переустановка Grub

sudo chroot /mnt
grub-install

решение3

Спасибо всем за помощь. Я оказался на этом пути, потому что Clonezilla не распознавала его nvmeдолжным образом. Я усердно пытался заставить все это работать, но ни одна из попыток не сработала. В конце концов, я прибегнул к использованию, ddчтобы получить свой клон, и в итоге это сработало dd if=/dev/sdX of=/dev/sdY bs=512 count=1 conv=noerror,sync. Я действительно не хотел идти по этому пути, но в итоге это сработало.

Связанный контент