
Я пытаюсь перейти на свой новый 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
. Я действительно не хотел идти по этому пути, но в итоге это сработало.