GRUB для RaspberryPi 3 с распбианом

656
Dominik.A

Можно ли загрузить Raspbian на RPi3 с помощью Grub?

Мне удалось загрузить grub на RPi3, но я не могу загрузить Raspbian с помощью Grub. Что я не прав? Или возможно, что GRUB не поддерживает Raspbian? Ниже я представляю свои шаги:

1) Создайте образ grub.efi в системе Raspbian:

sudo apt install grub2-common grub-efi-arm-bin sudo grub-mkimage -v -p /boot -o grub.efi --format=arm-efi boot linux ext2 fat serial part_msdos part_gpt normal efi_gop iso9660 configfile search loadenv test cat echo gcry_sha256 halt hashsum loadenv reboot sudo cp grub.efi /boot 

2) Сборка u-boot.bin на ПК с Linux:

export CROSS_COMPILE=arm-linux-gnu- export ARCH=arm git clone git://git.denx.de/u-boot.git make rpi_3_32b_defconfig  make 

3) Скопируйте u-boot.bin в раздел Raspbian / boot.

4) Изменить /boo/config.txt Добавить строку:

kernel=u-boot.bin 

5) Включите RPi3. Сначала запускается загрузчик прошивки, а затем загружается u-boot. На консоли u-boot введите:

load mmc 0:1 $ grub.efi bootefi $ 

6) GRUB загружается нормально. Тип консоли GRUB:

linux (hd0,msdos1)/kernel7.img dwc_otg.lpm_enable=0 console=serial0,115200 console=tty1 root=PARTUUID=4d3ee428-02 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait quiet init=/usr/lib/raspi-config/init_resize.sh devicetree (hd0,msdos1)/bcm2710-rpi-3-b.dtb boot 

После загрузки команда RPi3 зависает без какой-либо информации, что не так.

0
Пакет `grub-arm-efi-bin` предназначен для систем Arm с прошивкой EFI, которых у Raspberry Pi нет. Johan Myréen 5 лет назад 0
На мой взгляд, это не проблема. Новейшая версия u-boot обеспечивает прошивку EFI. Пожалуйста, посмотрите на статью Андреаса Фербера и Александра Графа: https://www.suse.com/media/article/UEFI_on_Top_of_U-Boot.pdf или презентацию Александра Графа: https://www.youtube.com/watch?v=bNL1pd- rwCU. По умолчанию загрузчик RPi вызывает u-boot, который поддерживает команду bootefi, поэтому GRUB может быть загружен с функциональностью EFI, см. Шаг 5 в моем вопросе. Dominik.A 5 лет назад 0

0 ответов на вопрос