Создание microSD-карты с образом: различия между версиями

Материал из Wiren Board
Строка 101: Строка 101:
здесь /media/user/mountpoint - точка монтирования раздела карты:
здесь /media/user/mountpoint - точка монтирования раздела карты:


<code>
<pre>
user@host:~$ mount
user@host:~$ mount
....
....
....
....
/dev/sdb1 on /media/user/mountpoint type ext4 (rw,nosuid,nodev,uhelper=udisks2)
/dev/sdb1 on /media/user/mountpoint type ext4 (rw,nosuid,nodev,uhelper=udisks2)
</code>
</pre>




Строка 126: Строка 126:
Отмонтируем файловую систему
Отмонтируем файловую систему


<code>
<pre>
umount /media/user/mountpoint
umount /media/user/mountpoint
</code>
</pre>

Версия 00:47, 7 октября 2013

=Подготовка образа

elftosb

По инструкции с [1] , раздел “Freescale Utilities: elftosb”

git clone git://github.com/eewiki/elftosb.git
cd elftosb
make CC=gcc
sudo cp ./bld/linux/elftosb /usr/local/bin/

Загрузчик

По инструкции с [2] , раздел “Bootloader: U-Boot”

git clone git://git.denx.de/u-boot.git
cd u-boot/
git checkout v2013.07 -b tmp

патчи:

wget -c https://raw.github.com/eewiki/u-boot-patches/master/v2013.07/0001-mx23_olinuxino-uEnv.txt-bootz-n-fixes.patch
 
patch -p1 < 0001-mx23_olinuxino-uEnv.txt-bootz-n-fixes.patch

сборка:

make ARCH=arm CROSS_COMPILE=arm-linux-gnueabi-
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- mx23_olinuxino_config
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabi-  u-boot.sb


Сборка ядра

git clone git://github.com/evgeny-boger/build_kernel.git
cd build_kernel

обязательно!

cp system.sh.sample system.sh

и добавить в system.sh строчку

PULL_DEV=1

затем

./build_kernel.sh

из menuconfig можно просто выйти, всё нужное по-умолчанию стоит

Здесь и далее /dev/sdb - устройство microSD-карты.



Сборка образа

https://github.com/evgeny-boger/wirenboard

cd rootfs sudo create_rootfs.sh (для Ubuntu, Debian)


кроме этого, можно взять готовый образ с http://eewiki.net/display/linuxonarm/iMX233-OLinuXino и (опционально) залить туда конфиги из папки configs. Важно не потерять файл boot/uEnv.txt




Сборка вместе

Согласно [3]

  • разбить флешку на два раздела
  • записать u-boot на первый раздел
  • создать фс на втором разделе
  • скопировать rootfs на второй раздел


sudo cp -rp rootfs/* /media/user/mountpoint

здесь /media/user/mountpoint - точка монтирования раздела карты:

user@host:~$ mount
....
....
/dev/sdb1 on /media/user/mountpoint type ext4 (rw,nosuid,nodev,uhelper=udisks2)


  • скопировать ядро, dtbs, модули и прошивки на второй раздел:



export kernel_version=3.12.0-rc2-imxv5-x0.7

версия берётся из последних строчек вывода tools/rebuild.sh

tools/copy_kernel.sh /media/user/mountpoint

Отмонтируем файловую систему

umount /media/user/mountpoint