Логотип BootFix и Splash на Ubuntu 16.04.2 LTS

Щелкните правой кнопкой мыши по сгустку> настройки> измените значок ... kde "that" customizable

0
задан 10 May 2017 в 11:44

2 ответа

Ваша первая проблема, скорее всего, вызвана тем, что современные компьютеры на базе EFI хранят информацию об загрузчике в NVRAM. Таким образом, когда вы зеркалируете рабочую установку на новый компьютер, если вы явно не добавляете запись NVRAM, компьютер не будет знать, как загрузиться. Возможны несколько возможных решений:

Создать правильную загрузочную запись. Если вы используете целевой компьютер для зеркалирования диска, вы можете явно создать загрузочную запись с помощью efibootmgr. Скорее всего, efibootmgr -c -l \\EFI\\ubuntu\\shimx64.efi -L ubuntu выполнит трюк, хотя вам может потребоваться добавить опции -d и / или -p, в зависимости от того, как выкладывается ваш диск. (Подробнее о его параметрах см. На странице man для efibootmgr.) Это, скорее всего, лучшее решение, если вы используете целевую систему для зеркального отображения; но если вы вытаскиваете диск из целевой системы и используете другой компьютер для зеркалирования диска, это решение не будет работать, если вы не захотите выполнить некоторую работу по очистке на целевых компьютерах с помощью аварийного диска. Это решение также требует, чтобы системный раздел EFI (ESP) отражался вместе со всем остальным. Используйте резервное имя файла. Вместо загрузки EFI/ubuntu/shimx64.efi, который, в свою очередь, запускает EFI/ubuntu/grubx64.efi в ESP, вы можете скопировать эти файлы, чтобы система использовала резервное имя файла EFI/BOOT/bootx64.efi в ESP. То есть вы сделали бы что-то вроде sudo cp -a /boot/efi/EFI/ubuntu /boot/efi/EFI/BOOT, а затем sudo mv /boot/efi/EFI/BOOT/shimx64.efi /boot/efi/EFI/BOOT/bootx64.efi. (Это было бы из рабочей, загруженной установки, вам пришлось бы корректировать путь, если бы вы вносили эти изменения в какое-то аварийное окружение.) EFIs пытаются загрузиться с использованием резервного имени файла, если нет явной записи NVRAM (созданной efibootmgr), поэтому для этого нужно запустить клонированные системы. Проблема в том, что обновления GRUB не будут установлены надлежащим образом без дополнительных шагов. Установка в BIOS / CSM / устаревший режим. Вместо установки в режиме EFI / UEFI, вы можете установить его в BIOS / CSM / устаревший режим. Когда целевые компьютеры перенастроены для поддержки этого режима загрузки, они затем должны загружаться, не требуя записей NVRAM, чтобы указывать на правильный загрузчик. Такой подход может потребовать более возиться с настройками прошивки на целевых компьютерах, поэтому, возможно, это не стоит проблем.

Вы также можете выполнить комбинацию первых двух подходов, то есть скопировать Shim / GRUB в резервное имя файла для первой загрузки, но настроить компьютер на запуск сценария для добавления записи NVRAM в загрузчик EFI/ubuntu/shimx64.efi при первом запуске.

0
ответ дан 18 July 2018 в 13:32

Ваша первая проблема, скорее всего, вызвана тем, что современные компьютеры на базе EFI хранят информацию об загрузчике в NVRAM. Таким образом, когда вы зеркалируете рабочую установку на новый компьютер, если вы явно не добавляете запись NVRAM, компьютер не будет знать, как загрузиться. Возможны несколько возможных решений:

Создать правильную загрузочную запись. Если вы используете целевой компьютер для зеркалирования диска, вы можете явно создать загрузочную запись с помощью efibootmgr. Скорее всего, efibootmgr -c -l \\EFI\\ubuntu\\shimx64.efi -L ubuntu выполнит трюк, хотя вам может потребоваться добавить опции -d и / или -p, в зависимости от того, как выкладывается ваш диск. (Подробнее о его параметрах см. На странице man для efibootmgr.) Это, скорее всего, лучшее решение, если вы используете целевую систему для зеркального отображения; но если вы вытаскиваете диск из целевой системы и используете другой компьютер для зеркалирования диска, это решение не будет работать, если вы не захотите выполнить некоторую работу по очистке на целевых компьютерах с помощью аварийного диска. Это решение также требует, чтобы системный раздел EFI (ESP) отражался вместе со всем остальным. Используйте резервное имя файла. Вместо загрузки EFI/ubuntu/shimx64.efi, который, в свою очередь, запускает EFI/ubuntu/grubx64.efi в ESP, вы можете скопировать эти файлы, чтобы система использовала резервное имя файла EFI/BOOT/bootx64.efi в ESP. То есть вы сделали бы что-то вроде sudo cp -a /boot/efi/EFI/ubuntu /boot/efi/EFI/BOOT, а затем sudo mv /boot/efi/EFI/BOOT/shimx64.efi /boot/efi/EFI/BOOT/bootx64.efi. (Это было бы из рабочей, загруженной установки, вам пришлось бы корректировать путь, если бы вы вносили эти изменения в какое-то аварийное окружение.) EFIs пытаются загрузиться с использованием резервного имени файла, если нет явной записи NVRAM (созданной efibootmgr), поэтому для этого нужно запустить клонированные системы. Проблема в том, что обновления GRUB не будут установлены надлежащим образом без дополнительных шагов. Установка в BIOS / CSM / устаревший режим. Вместо установки в режиме EFI / UEFI, вы можете установить его в BIOS / CSM / устаревший режим. Когда целевые компьютеры перенастроены для поддержки этого режима загрузки, они затем должны загружаться, не требуя записей NVRAM, чтобы указывать на правильный загрузчик. Такой подход может потребовать более возиться с настройками прошивки на целевых компьютерах, поэтому, возможно, это не стоит проблем.

Вы также можете выполнить комбинацию первых двух подходов, то есть скопировать Shim / GRUB в резервное имя файла для первой загрузки, но настроить компьютер на запуск сценария для добавления записи NVRAM в загрузчик EFI/ubuntu/shimx64.efi при первом запуске.

0
ответ дан 24 July 2018 в 20:12
  • 1
    Большое спасибо за то, что нашли время, чтобы ответить! Я нашел способ обойти это, добавив в основной HDD файл /etc/initramfs-tools/conf.d/splash (как показано в решении, опубликованном с моим ответом), а затем снова начал клонирование. Логотип загрузки находится прямо здесь! – E. Chatzis 11 May 2017 в 15:54
  • 2
    Я должен сказать, что это замечательный ответ. Могу ли я получить дополнительную информацию о втором варианте? особенно в отношении «Проблема заключается в том, что обновления GRUB не будут надлежащим образом установлены без дополнительных шагов». часть. – E. Chatzis 12 May 2017 в 15:29
  • 3
    Когда Canonical выталкивает обновление GRUB, оно будет загружено и установлено в его обычное место (/boot/efi/EFI/grubx64.efi), но не в резервное место, в которое вы его скопируете. Таким образом, вы пропустите все обновления, которые в конечном итоге будут выпущены. Это может быть не важно; но если есть что-то важное, как ошибка безопасности, которая может вас укусить, вы не захотите принять этот риск. Конечно, вы можете повторно скопировать файлы, но вам нужно либо внимательно следить за обновлениями, либо настраивать скрипт, чтобы сделать это автоматически. – Rod Smith 13 May 2017 в 18:00

Другие вопросы по тегам:

Похожие вопросы: