Debian 12.7, установленный на USB-ключе, работает на процессоре Intel, но не работает на AMD: grub никогда не загружается.

Вопрос или проблема

Я установил Debian 12 (amd64 архитектура, так как использовал debian-12.7.0-amd64-DVD-1.iso) на USB-накопитель, используя компьютер с процессором Intel (Core i7 3770K). Я настроил “BIOS” на UEFI-only.

Я могу загрузить Debian на этой системе без проблем: я вижу GRUB, там есть тайм-аут перед запуском Debian, а затем система загружается.

Но когда я подключаю этот USB-накопитель к компьютеру с процессором AMD (Ryzen 7 5800X), он никогда не загружается: я могу выбрать этот экземпляр Debian из меню загрузки, но когда я нажимаю Enter, он возвращается на этот экран. После 2 попыток он показывает только черный экран. Он никогда не доходит до экрана GRUB.

Обе системы настроены на UEFI-only и безопасная загрузка отключена.

Не хватает ли некоторых драйверов? Насколько мне известно, Debian (и Linux) являются переносимыми: мы можем переместить хранилище с системой Linux на другой компьютер и загрузить его без каких-либо проблем, при условии, что у них одна архитектура.

Тест с процессором Intel

Меню загрузки:

вставьте описание изображения здесь

Хранилище и разделы:

root@serveur:~# fdisk -l
Диск /dev/sda: 7.46 GiB, 8014528512 байт, 15653376 секторов
Модель диска: Freecom Databar 
Единицы: сектора по 1 * 512 = 512 байт
Размер сектора (логический/физический): 512 байт / 512 байт
Размер I/O (минимальный/оптимальный): 512 байт / 512 байт
Тип метки диска: gpt
Идентификатор диска: F3F8597A-E3A9-4340-B561-976463C941D7

Устройство       Начало      Конец  Секторы  Размер Тип
/dev/sda1     2048  1050623  1048576  512M EFI Система
/dev/sda2  1050624 13941248 12890625  6.1G Linux файловая система

root@serveur:~# df -h
Файловая система      Размер  Использовано Доступно Использование% Смонтировано на
udev            7.6G     0  7.6G   0% /dev
tmpfs           1.6G  724K  1.6G   1% /run
/dev/sda2       6.0G  2.0G  3.7G  35% /
tmpfs           7.6G     0  7.6G   0% /dev/shm
tmpfs           5.0M     0  5.0M   0% /run/lock
/dev/sda1       511M  5.9M  506M   2% /boot/efi
tmpfs           1.6G     0  1.6G   0% /run/user/1000

root@serveur:~# ls -lh /boot/efi/EFI/debian/
всего 5.9M
-rwx------ 1 root root  108 Oct 16 21:58 BOOTX64.CSV
-rwx------ 1 root root  86K Oct 16 21:58 fbx64.efi
-rwx------ 1 root root  126 Oct 16 21:58 grub.cfg
-rwx------ 1 root root 4.1M Oct 16 21:58 grubx64.efi
-rwx------ 1 root root 831K Oct 16 21:58 mmx64.efi
-rwx------ 1 root root 938K Oct 16 21:58 shimx64.efi

root@serveur:~# efibootmgr -v 
BootCurrent: 0000
Timeout: 1 секунда
BootOrder: 0000
Boot0000* debian    HD(1,GPT,84ba4a07-f69b-4768-a2c6-841363bcaa45,0x800,0x100000)/File(\EFI\debian\shimx64.efi)

root@serveur:~$ cat /etc/fstab
[…]
# <файловая система> <точка монтирования>   <тип>  <опции>       <dump>  <pass>
# / была на /dev/sdb2 во время установки
UUID=ce54e770-e3ba-44a0-8dd1-5b9308e18eac /               ext4    errors=remount-ro 0       1
# /boot/efi была на /dev/sdb1 во время установки
UUID=B2A6-2FC0  /boot/efi       vfat    umask=0077      0       1

root@serveur:~# lsblk -o name,mountpoint,label,size,uuid 
NAME   MOUNTPOINT LABEL  SIZE UUID
sda                      7,5G 
├─sda1 /boot/efi  BOOT   512M B2A6-2FC0
└─sda2 /                 6,1G ce54e770-e3ba-44a0-8dd1-5b9308e18eac

Проверьте, используется ли режим UEFI:

root@serveur:~# ls -lh /sys/firmware/efi
всего 0
-r--r--r--  1 root root 4.0K Oct 18 19:25 config_table
drwxr-xr-x  2 root root    0 Aug 25 19:35 efivars
-r--r--r--  1 root root 4.0K Oct 18 19:25 fw_platform_size
-r--r--r--  1 root root 4.0K Oct 18 19:25 fw_vendor
drwxr-xr-x  2 root root    0 Oct 18 19:25 mok-variables
-r--r--r--  1 root root 4.0K Oct 18 19:25 runtime
drwxr-xr-x 16 root root    0 Oct 18 19:25 runtime-map
-r--------  1 root root 4.0K Oct 18 19:25 systab

Тест с процессором AMD

Меню загрузки:

вставьте описание изображения здесь

По какой-то причине запись Debian начинается с UEFI: .

Выбор выделенного не работает: он возвращается на этот экран.

Но есть что-то интересное: я запустил sudo update-grub со своей основной установки (Ubuntu 24.04, установленной на этом компьютере, как показано выше, она находится на NVMe SSD):

$ sudo update-grub
Чтение файла `/etc/default/grub'
Генерация файла конфигурации grub ...
Найдена linux-образ: /boot/vmlinuz-6.8.0-47-generic
Найден initrd-образ: /boot/initrd.img-6.8.0-47-generic
Найдена linux-образ: /boot/vmlinuz-6.8.0-45-generic
Найден initrd-образ: /boot/initrd.img-6.8.0-45-generic
Предупреждение: os-prober будет выполнен для обнаружения других загрузочных разделов.
Его вывод будет использован для обнаружения загрузочных бинарников на них и создания новых загрузочных записей.
Найден менеджер загрузки Windows на /dev/nvme0n1p1@/EFI/Microsoft/Boot/bootmgfw.efi
Найден Debian GNU/Linux 12 (bookworm) на /dev/sda2
Добавление записи меню загрузки для настроек прошивки UEFI ...
готово

Он обнаружил Debian 12 и добавил запись в мой основной GRUB (не на USB-накопителе), и я смог загрузить Debian 12 без каких-либо проблем из этого меню GRUB.

Таким образом, кажется, что GRUB на USB-накопителе работает только на компьютере Intel. А сам Debian не имеет проблем, когда его можно загрузить с GRUB на SSD.

Ответ или решение

Проблема загрузки Debian 12.7 с USB-накопителя на AMD CPU

Вы столкнулись с необычной проблемой, при которой Debian 12.7, установленный на USB-накопителе, загружается без проблем на системе с процессором Intel, однако не может быть загружен на системе с процессором AMD (Ryzen 7 5800X). Несмотря на то что обе системы настроены на режим UEFI и отключена функция Secure Boot, возникновение такой ошибки может быть вызвано несколькими причинами.

Анализ ситуации

  1. Проверка конфигурации системы
    Убедитесь, что обе системы действительно настроены в режиме UEFI и что при загрузке с USB-накопителя используется правильный загрузочный элемент. Судя по вашей информации, на Intel-системе всё работает корректно.

  2. Проблемы с драйверами и совместимостью
    Хотя Linux в целом заслуженно считается переносимым, существуют специфические моменты, связанные с загрузочными конфигурациями в UEFI. Некоторые реализации BIOS/UEFI могут иметь уникальные настройки, влияющие на совместимость с загрузчиками. Например, различные версии UEFI могут проявлять различия в работе с файлами загрузчика и их настройками.

  3. Проблемы с GRUB
    Вам следует проверить конфигурацию GRUB на USB-накопителе. Поскольку у вас уже проверены пути к файлам и структура директорий, стоит обратить внимание на записи в grub.cfg. Возможно, некоторые параметры, специфичные для архитектуры, препятствуют корректной загрузке на оборудовании AMD.

  4. Попробуйте отладочную информацию
    При попытке загрузиться на системе с AMD, обратите внимание на вывод сообщений и возможные коды ошибок. Некоторое оборудование может показывать подробные сообщения об ошибках UEFI, которые могут указать на причину проблемы.

  5. Проблемы с UEFI
    Различные версии UEFI могут требовать разные настройки для корректной работы с загрузчиками Linux. Убедитесь, что установка UEFI на AMD-системе соответствует тем требованиям, что были применены на Intel-системе. Также стоит проверить, есть ли на AMD-системе опция "Fast Boot" и отключить её, если включена.

Рекомендации по устранению неполадок

  1. Переустановите GRUB
    Загрузитесь с Live USB Debian или другой системы и попробуйте переустановить GRUB на USB-накопителе, используя следующие команды:

    mount /dev/sda2 /mnt
    mount /dev/sda1 /mnt/boot/efi
    grub-install --target=x86_64-efi --efi-directory=/mnt/boot/efi --bootloader-id=Debian --recheck
    update-grub
  2. Проверьте и измените настройки BIOS/UEFI
    Убедитесь, что настройки BIOS/UEFI соответствуют требованиям для UEFI. Возможно, потребуется протестировать другие версии прошивок BIOS на материнской плате.

  3. Тестирование режима совместимости
    Попробуйте зайти в режим совместимости (Legacy) в BIOS для запуска системы. Иногда системы могут иметь проблемы с исключительным использованием UEFI для определённых дистрибутивов.

  4. Используйте другой загрузчик
    Если вы продолжаете сталкиваться с проблемами, попробуйте использовать другой загрузчик, такой как rEFInd, который может обойти некоторые ограничения GRUB и обладает более широкими возможностями настройки.

  5. Создание нового образа загрузки
    Если ничего не помогло, попробуйте заново установить Debian на USB-накопитель с другого компьютера или использовать другую утилиту для создания загрузочного USB-образа, такую как balenaEtcher или Rufus, которая может лучше работать с системами UEFI.

Заключение

Данная проблема может возникать по ряду факторов, касающихся загрузчиков и архитектурных различий. Попробуйте следующие шаги устранения неполадок, и у вас должна появиться возможность успешно загружать Debian на AMD-системе. Если у вас возникли дополнительные вопросы или нужны конкретные настройки, не стесняйтесь задавать их.

Оцените материал
Добавить комментарий

Капча загружается...