Мой ноутбук первоначально имел M.2 ssd на 128 ГБ и HDD на 1 ТБ. Система настроена как двойная загрузка с окнами./boot/efi раздел находится на/dev/nvme0m1p1, и исходный корневой раздел находится на/dev/sda3.
Я архивировал изображение оригинала nvme0n1, подкачал nvme0n1 для M.2 ssd. на 1 ТБ и клонировал исходное изображение к новому ssd. Результат состоял в том, что я мог загрузиться или к окнам или к/dev/sd3 версии человечности, после того как клонирование было завершено.
Я затем создал новый ext4 раздел, nvme0n1p6 и клонировал/dev/sda3 раздел к нему. Я действительно забывал изменять раздел UIDD после клонирования и в первый раз, когда я выполнил обновление-grub2. Я впоследствии изменил раздел UIDD, использующий gparted, повторно выполнил обновление-grub2 и проверил, что это нашло изображение на новом UIDD для/dev/nvme0n1p6.
После проведения 6 часов, находя я вставил пробел в UIDD = оператор в/etc/fstab нового изображения, которое я смог загрузить в то новое изображение (мои навыки корректуры могут стоять улучшение). После того как то изображение было загружено, я выполнил обновление-grub2 снова для перемещения выбора для новой человечности к вершине и значению по умолчанию в новом grub.cfg.
Наконец к проблеме: После перезагрузки меню личинки, которое отображено, все еще grub.cfg исходной/dev/sda3/boot/grub папки.
копирование grub.cfg, сгенерированного для/nvme0n1p6 к/sda3, позволяет новому grub.cfg быть отображенным на последующих начальных загрузках.
переименование grub.cfg файла на/sda3 заставляет личинку останавливаться в командной строке на перезагрузке. Выход из командной строки заставляет окна OS загружаться. Я могу исправить проблему с живым образом USB, который разрешает мне восстанавливать допустимый grub.cfg на/sda3.
Я подозреваю, что команда личинки обновления не является единственной командой, которую я должен выполнить. Мое предположение - то, что изображения, сохраненные на/nvme0n1p1, должны быть обновлены. Это выполняется путем выполнения какой-то установки личинки?
Теперь, когда у меня Ubuntu с новым SSD-накопителем M.2, я рассмотрю метод, который я использовал для замены 128 ГБ SSD, содержащего установленный grub загрузчик с двойной загрузкой на nvme0n1p1, на SSD на 1 ТБ в ноутбуке, который имеет один Порт M.2. Для ясности большая часть Windows 10 находится на различных разделах nvme0, а ubuntu изначально находился на разделе жесткого диска на sda3. При загрузке nvme0n1p1 монтируется в / boot / efi.
Сделайте образ nvme0n1 а. Я лично не предпринимал никаких шагов по уменьшению разделов с целью уменьшения размера образа. Если это будет сочтено необходимым, другие лица предоставили инструкции, как это сделать.
б. Записать образ на другой диск, внутренний или внешний. Я использовал:
dd if = / dev / nmve0n1 | gzip -c> pathToOtherDeviceFolder / nvme0n1.img
Параметр -c
заставляет gzip записывать в стандартный вывод, который затем направляется в файл.
Тестовая загрузка с USB-накопителя, содержащего живое изображение, ubuntu live или gparted live. Позже у меня возникли проблемы, потому что я не тестировал живое изображение с внешними мониторами, которые я обычно использую, когда ноутбук отключен от ноутбука.Потребовалось несколько дней, чтобы попытаться выполнить следующие шаги без подключенного внешнего дисплея, поскольку именно отсутствие внешнего дисплея (или Ethernet) препятствовало загрузке живого USB-накопителя, а не результат следующих шагов. Я не помню, как подключал Ethernet для успешной загрузки, но мог бы вместе с внешними дисплеями. В любом случае есть зависимость живых изображений, которую я не понимаю, но могу обойтись. После загрузки убедитесь, что вы можете смонтировать диск, содержащий образ, который хотите переместить.
Выключите питание и замените исходный твердотельный накопитель M.2 на новый.
Переместить изображение на новый nvme0n1
a. Загрузитесь с живого USB-диска. (Вы это уже проверили)
b. смонтируйте диск, содержащий образ, который вы хотите переместить. (Опять же, проверено)
c. переместите изображение на новый nvme0n1. Я использовал:
gunzip -c pathToOtherDeviceFolder / nvme0n1.img | dd of = / dev / nvme0n1
И снова gunzip записывает на стандартный вывод, который передается на dd для записи на новое устройство.
Переместить ubuntu в новый раздел на новом nvme0n1 Здесь я решил перезагрузиться в исходный образ ubuntu на sda3. Это не проблема, потому что новый nvme0n1 является клоном оригинала. Я не знаю ни одной причины, по которой эти шаги нельзя было предпринять, продолжая работать в среде USB live, хотя у меня нет опыта в этом.
а. создайте новый раздел ext4 на nvme0n1 с помощью gparted или другого инструмента. В дальнейшем я буду называть этот раздел nvme0n1p6.
б. клонировать образ ubuntu на / dev / sda3 (в моем случае) на / dev / nvme0n1p6. Я использовал:
dd if = / dev / sda3 of = / dev / nvme0n1p6
c.после клонирования используйте gparted или другой инструмент, чтобы изменить UIDD раздела nvme0n1p6 на уникальный UIDD.
Подготовьте новый на nvme0n1p6 к работе.
а. смонтировать / dev / nvme0n1p6. Я использовал / mnt в качестве точки монтирования.
б. измените / etc / fstab, чтобы смонтировать UIDD для nvme0n1p6 как /.
Обратите внимание, что nvme0n1p1 все еще нужно смонтировать как / boot / efi.
Убедитесь, что измененная запись правильно отформатирована. Дополнительное место после
UIDD =
стоило мне еще нескольких часов размышлений о том, что я сделал не так.
с. Сейчас nvme0n1p6 можно размонтировать, но, кажется, я пропустил этот шаг.
Если все еще выполняется с живого USB-диска, перезагрузитесь в исходный образ ubuntu (мой находится на / dev / sda3).
обновите параметры меню grub:
sudo update-grub2
Следите за исходным образом, Найдены и добавлены образ Windows и новый образ ubuntu на nvme0n1p6.
перезагрузитесь и в меню загрузки grub выберите новый образ ubuntu.
В новом образе запустите:
a. sudo grub-install
Это изменяет файлы grub на / boot / efi (/ dev / nvme0n101), чтобы посмотреть на
/ dev / nvme0n1p6 / boot / grub, а не это место на sda3 для grub
меню, grub.cfg.
б. `sudo update-grub ' Заменит клонированный /boot/grub/grub.cfg новым файлом, в котором новый образ сверху и по умолчанию, а исходный образ на sda3 как альтернативный выбор.
Теперь у вас должна быть возможность загрузиться с любым из трех образов. Обратите внимание, что до тех пор, пока grub-install
не будет запущен на новом образе, исходный образ не может быть удален с машины, поскольку grub не сможет найти свой файл конфигурации меню.
Надеюсь, я не пропустил никаких шагов и не запомнил их неправильно, и что это сработает для вас.
Правовая оговорка: Я могу быть полностью неправым.
От Вашей информации, у Вас, кажется, есть одна установка Windows и одна установка Ubuntu на Вашем жестком диске (/dev/sda3
). Давайте назовем эту установку жесткого диска H. Теперь, необходимо было переместить установку на SSD, и таким образом Вы создали новый раздел SSD и клонировали Вашу установку жесткого диска на том, что раздел SSD (я скорее сделаю новую установку, но это вне темы к Вашему вопросу). Давайте назовем эту установку SSD S.
проблема AFAIK - то, что Вы не устанавливали личинку вообще после завершающейся установки S. Так, установленная личинка в Вашей системе все еще принадлежит установке H [1]. Таким образом это все еще использовало бы эти grub.cfg
существующий в установке H.
, Чтобы заставить личинку использовать grub.cfg
от Вашей установки S, необходимо будет установить личинку от S до раздела EFI.
Начальная загрузка до установки S и выполненный:
$ sudo grub-install dummy
$ sudo update-grub
Сообщенный мне, если я неправильно понял Ваш сценарий, или если Вы сталкиваетесь с ошибками с командами.
<час> Ссылки:
, Как действительно копает загрузчик EFI, находят корректный boot.cfg?