Настройка Alt Linux для Raspberry Pi с помощью QEMU
ВНИМАНИЕ! Все шаги выполняем под рутом, так что "Смотри в оба!" (С) Билли Бонс, "Остров сокровищ".
Введение
Бывают моменты, когда под рукой не оказывается, казалось бы, самого нужного - обжимных клещей для витой пары, отвёрстки, или... монитора с hdmi. А тут подвернулся случай пощупать Raspberry Pi. Оглядев свои "богатства" и осознав, что во втором часу ночи устройства с hdmi портом не найти, а адаптер hdmi-vga приказал долго жить, направляемся в поисках вариантов в Интернет. Аналоговый сигнал малинка из-под свежего Сизифа нормально выдавать не захотела, а без предварительной настройки малинка в рабочий режим не выходит... Побродив по просторам Сети, вспоминаем про раздел на Вики Альт Линукс, посвященный ARM-портам. Находим там инструкцию по запуску образов в QEMU, и тут загорается лампочка: "А что, если...". Впрочем, обо всём по порядку
Процесс настройки
0. Устанавливаем на карту памяти дистрибутив с помощью утилиты alt-rootfs-installer;
1. Узнаём букву нашей карты памяти:
fdisk -l
2. Снимаем с устройства (а не с раздела) образ:
dd if=/dev/sdX (или mmcblk0) of=/путь/к/файлу/ИмяОбраза.img
3. Запускаем образ в QEMU в следующей конфигурации:
qemu-system-aarch64 -machine virt -cpu cortex-a57 -m 2048 -smp 4
-bios <aarch64/u-boot.bin> \
-drive if=none,id=sda,format=file,file=ИмяОбраза.img \
-device virtio-blk-device,drive=sda \
-device virtio-keyboard -device virtio-tablet \
-device virtio-net-device,netdev=net0 -netdev user,id=net0 \
-device virtio-gpu,xres=1366,yres=768 -nographic -vnc :0
4. Подключаемся по VNC к QEMU и спокойно настраиваем образ.
remote-viewer vnc://localhost:5900
5. Перезагружаем QEMU и проверяем, всё ли настроилось.
6. Записываем настроенный образ тем же dd:
dd if=/путь/к/файлу/ИмяОбраза.img of=/dev/sdX (или mmcblk0)
7. Вставляем карту памяти в Raspberry Pi 3 и пробуем подключиться по ssh.
Работоспособность метода
Метод проверен на работоспособность для Raspberry Pi 3 B+.