Создание microSD-карты с образом
Сборка вместе
Согласно [1]
- разбить флешку на два раздела
- записать u-boot на первый раздел
- создать фс на втором разделе
- скопировать rootfs на второй раздел
Сначала надо выяснить имя устройства с флеш-картой. Воспользуйтесь поиском. Можно, к примеру, попробовать запустить gparted и посмотреть в нём. Устройство может быть /dev/sdb, а может выглядеть и как /dev/mmcblk0
Найдя устройство создаем переменную чтобы облегчить себе использование нижеследующих комманд
MYDISK="/dev/sdb"
Между кавычками пишем название своего устройства с флеш-картой.
Таблица разделов
Перед запуском убедитесь, что разделы на карточке не примонтированы.
Теперь с помощью скрипта создадим разделы на карте. https://github.com/contactless/wirenboard/blob/master/image/create_partitions.sh
Скачиваем скрипт:
wget https://raw.github.com/contactless/wirenboard/master/image/create_partitions.sh
Запускаем скрипт и указываем ему имя устройства с флеш-картой:
sudo bash create_partitions.sh $MYDISK
Загрузчик
См. Сборка U-Boot.
Готовый образ u-boot для записи в раздел: https://github.com/contactless/wirenboard/tree/master/contrib/u-boot
Скачиваем образ
wget https://github.com/contactless/wirenboard/blob/master/contrib/u-boot/u-boot.sb?raw=true -O u-boot.sb
Теперь выясняем имена разделов на карте. Скрипт выше отработал и разделил карту на разделы, нам надо узнать название первого из этих разделов. Если название устройства microSD-карты имело вид /dev/sdX, то первый раздел будет иметь название /dev/sdX1. Если устройство называлось /dev/mmcblkX , то первый раздел - /dev/mmcblkXp1 (обратите внимание на p перед номером раздела).
Найдя имя первого раздела укажите его тут:
MYDISK1="/dev/sdb1"
Теперь заливаем образ раздела на карту
sudo dd if=u-boot.sb of=$MYDISK1 bs=512 seek=4
Создание фс
Находим название второго раздела на флешке и прописываем его в переменную
MYDISK2="/dev/sdb2"
rootfs станет названием этого раздела.
sudo mkfs.ext4 $MYDISK2 -L rootfs
Копирование образа на раздел
Готовый образ (включая ядро, dtbs, модули и прошивки): https://github.com/contactless/wirenboard/releases
См. также Сборка образа
wget https://github.com/contactless/wirenboard/releases/download/0.1/rootfs.tar.gz
Теперь надо примонтировать созданную файловую систему созданную нами ранее. Как это сделать в терминале?
По-умолчанию в Ubuntu она монтируется в /media/$USER/rootfs/. Найдите куда система смонтировалась на вашем компьютере.
Распаковываем образ на раздел:
sudo tar xfpz rootfs.tar.gz -C /media/$USER/rootfs/
Отмонтируем файловую систему:
umount /media/user/rootfs
См. также Стандартный образ ФС.