===== Установка Debian 12 на модуль NMS-SM-RK3568 ===== {{ :boards:nms-sm-rk3568:burndeb:rk3568_debian_kit.jpg?600 |}} ==== Варианты установки ==== - Использовать [[https://disk.yandex.ru/d/J2fn74Vj-hI9zA|готовый образ EMMC]] специально для модуля NMS-SM-RK3568. Он приготовлен из официального установщика Debian 12, и дополнен нужным U-boot и DTB. Рядом с образом есть readme.txt. - Установить Debian на EMMC самостоятельно, пользуясь настоящей инструкцией. ==== Необходимое оборудование ==== * Отладочная плата NMS-SM-EVM * Micro-SD (от 4 Гб), подготовленная для первичной загрузки ядра и initrd. * USB-накопитель с официальным Debian-iso образом. [[https://cdimage.debian.org/debian-cd/current/arm64/iso-cd/|Скачать здесь]] * Mini-USB кабель для консоли * Ethernet Интерфейс #0 находится ближе к USB, интерфейс #1 ближе к углу платы * [[https://disk.yandex.ru/d/-6d2pzcdp3jLOA|Вспомогательные файлы]] //Опционально для работы с установщиком. Можно обойтись только консолью:// * HDMI монитор * Клавиатура ==== Ручная установка ==== === Подготовка загрузочных носителей === - Скачать [[https://cdimage.debian.org/debian-cd/current/arm64/iso-cd/|iso-образ]] и извлечь из него **vmlinuz** и **initrd.gz** work_dir=`pwd` wget https://cdimage.debian.org/debian-cd/current/arm64/iso-cd/ sudo losetup -f --show debian-12.1.0-arm64-netinst.iso #=> /dev/loopXX sudo mount /dev/loopXX /mnt/d4 sudo cp /mnt/d4/install.a64/vmlinuz ${work_dir} sudo cp /mnt/d4/install.a64/initrd.gz ${work_dir} - Залить образ на установочную USB-флешку sudo dd if=debian-12.1.0-arm64-netinst.iso of=/dev/sdX bs=1M conv=notrunc; sync - Подготовить загрузочную MicroSD-карту для SOM. Папка __burn_microsd__ из [[https://disk.yandex.ru/d/-6d2pzcdp3jLOA|Вспомогательных файлов]] cd burn_microsd sudo ./burn_sd.sh /dev/sdX - После прошивки, доложить vmlinuz и initrd.gz в первую партицию MicroSD sudo mount /dev/sdX1 /mnt/d5/ sudo cp ${work_dir}/vmlinuz /mnt/d5/ sudo cp ${work_dir}/initrd.gz /mnt/d5/ === Установка === - Загрузиться с подготовленной MicroSD. В Boot Menu выбрать вариант №2 //deb12//: {{ :boards:nms-sm-rk3568:burndeb:boot_menu.png?600 |}} - В консоли и на HDMI появится установщик. Если начать установку через экран и клавиатуру, то консоль заблокруется (и наоборот: если начать установку из консоли, клавиатура работать не будет){{ :boards:nms-sm-rk3568:burndeb:deb_installer.png?700 |}} - Пройти все шаги установщика, задав локацию, пользователей и тд. - На этапе разметки выбрать **use entire disk** {{ :boards:nms-sm-rk3568:burndeb:partioning.png?600 |}} - Далее выбрать **mmcblk0** {{ :boards:nms-sm-rk3568:burndeb:mmcblk0.png?600 |}} - Согласиться с предложенными партициями. {{ :boards:nms-sm-rk3568:burndeb:partioning_approve.png?600 |}} - В процессе установки будут предложены варианты установки ssh и графической оболочки. Выбрать по предпочтениям. Установка с графической оболочкой может занимать до нескольких часов. По окончании установки нужно добавить на EMMC U-boot, Idblock, Dtb файлы. Для этого нужно уменьшить партицию №1, чтобы сначала диска было свободных 16МБ. Все это можно проделать, загрузившись с MicroSD карты, и выбрав пункт #1 (main) в BootMenu. Загрузится минимальный линукс билдрутовой сборки. - Далее нужно сохранить файлы из mmcblk0p1, изменить размер партиции и положить их обратно.mount /dev/mmcblk0p1 /mnt/ cp -rf /mnt/ /media/; sync umount /mnt/ gdisk /dev/mmcblk0# d 1 n "32768 +16M" w - Порядок работы с gdisk представлен на скрине ниже {{ :boards:nms-sm-rk3568:burndeb:gdisk_cmd.png? |}} - После изменения партиции, нужно создать файловую систему на ней. mkfs.ext4 /dev/mmcblk0p1 - Затем вернуть файлы mount /dev/mmcblk0p1 /mnt cp /media/mnt/* /mnt/ - Далее требуется добавить dtb и extlinux.confcp /root/rk3568-inmys-smarc-evm.dtb /mnt mkdir /mnt/extlinux cp /root/extlinux.conf /mnt/extlinux/ - Затем записать в начало emmc idblock.itb и uboot.bindd if=/root/idblock.bin of=/dev/mmcblk0 seek=64 dd if=/root/uboot.itb of=/dev/mmcblk0 seek=16384 sync umount /mnt - В завершение нужно поменять UUID и тип сгенерированной партиции mmcblk0p1 в /etc/fstab. Узнать UUID можно командой :lblk -f{{ :boards:nms-sm-rk3568:burndeb:part_uuid.png?700 |}} mount /dev/mmcblk0p2 /mnt nano /mnt/etc/fstab sync umount /mnt {{ :boards:nms-sm-rk3568:burndeb:fstab.png?700 |}} После всех операций нужно извлечь загрузочную флешку и перезагрузить плату. Загрузится Debian {{ :boards:nms-sm-rk3568:burndeb:debian.png?700 |}}