Создание microSD-карты с образом: различия между версиями
м (Откат правок A.Degtyarev (обсуждение) к последней версии Sikmir) Метка: откат |
|||
(не показано 36 промежуточных версий 7 участников) | |||
Строка 1: | Строка 1: | ||
< | ==Запись полного образа на карточку== | ||
< | * Скачайте последний образ (расширение .dd или .dd.gz) со страницы https://github.com/contactless/wirenboard/releases | ||
* Распакуйте образ, если раширение .gz (gunzip sdcard.dd.gz) | |||
* вставьте флеш-карту в ридер | |||
* отмонтируйте раздел (umount /dev/mmcblk0p1, где /dev/mmcblk0p1 - раздел на флешке) | |||
* проверьте существование устройства флеш-карты, обычно это /dev/mmcblk0 для встроенного ридера и /dev/sdX (X - буква) - для внешнего. | |||
Название устройства можно посмотреть например в dmesg | tail | |||
* накатите образ на флеш-карту | |||
<b> Не перепутайте название устройства! Неправильно указав название устройства, вы рискуете навсегда потерять все данные на вашем компьютере! </b> | |||
<pre> | <pre> | ||
sudo dd if=sdcard.dd of=/dev/mmcblk0 bs=4M | |||
sudo dd if= | |||
</pre> | </pre> | ||
==Создание образа по частям== | |||
===Сборка вместе=== | ===Сборка вместе=== | ||
Согласно [http://eewiki.net/display/linuxonarm/iMX233-OLinuXino] | Согласно [http://eewiki.net/display/linuxonarm/iMX233-OLinuXino] | ||
* разбить флешку на два раздела | * разбить флешку на два раздела | ||
* записать u-boot на первый раздел | * записать u-boot на первый раздел | ||
Строка 69: | Строка 26: | ||
* скопировать rootfs на второй раздел | * скопировать rootfs на второй раздел | ||
Сначала надо выяснить имя устройства с флеш-картой. Воспользуйтесь поиском. Можно, к примеру, попробовать запустить gparted и посмотреть в нём. | Сначала надо выяснить имя устройства с флеш-картой. Воспользуйтесь поиском. Можно, к примеру, попробовать запустить gparted и посмотреть в нём. | ||
Устройство может быть /dev/sdb, а может выглядеть и как /dev/mmcblk0 | Устройство может быть /dev/sdb, а может выглядеть и как /dev/mmcblk0 | ||
Найдя устройство создаем переменную чтобы облегчить себе использование нижеследующих комманд | Найдя устройство создаем переменную чтобы облегчить себе использование нижеследующих комманд | ||
<pre> | <pre> | ||
Строка 80: | Строка 35: | ||
Между кавычками пишем название своего устройства с флеш-картой. | Между кавычками пишем название своего устройства с флеш-картой. | ||
===Таблица разделов=== | |||
===Таблица разделов=== | |||
Перед запуском убедитесь, что разделы на карточке не примонтированы. | Перед запуском убедитесь, что разделы на карточке не примонтированы. | ||
Теперь с помощью скрипта создадим разделы на карте. | Теперь с помощью скрипта создадим разделы на карте. | ||
https://github.com/contactless/wirenboard/blob/master/image/create_partitions.sh | |||
Скачиваем скрипт: | Скачиваем скрипт: | ||
<pre> | <pre> | ||
wget | wget https://raw.github.com/contactless/wirenboard/master/image/create_partitions.sh | ||
</pre> | </pre> | ||
Запускаем скрипт и указываем ему имя устройства с флеш-картой: | Запускаем скрипт и указываем ему имя устройства с флеш-картой: | ||
<pre> | <pre> | ||
Строка 102: | Строка 51: | ||
</pre> | </pre> | ||
===Загрузчик=== | ===Загрузчик=== | ||
См. [[Сборка U-Boot]]. | |||
Готовый образ u-boot для записи в раздел: https://github.com/contactless/wirenboard/tree/master/contrib/u-boot | |||
Скачиваем образ | Скачиваем образ | ||
<pre> | <pre> | ||
wget "https://github.com/ | wget "https://github.com/contactless/wirenboard/blob/master/contrib/u-boot/u-boot.sb.cl25?raw=true" -O u-boot.sb | ||
</pre> | </pre> | ||
Теперь выясняем имена разделов на карте. Скрипт выше отработал и разделил карту на разделы, нам надо узнать название первого из этих разделов. | Теперь выясняем имена разделов на карте. Скрипт выше отработал и разделил карту на разделы, нам надо узнать название первого из этих разделов. | ||
Если название устройства microSD-карты имело вид <b>/dev/sdX</b>, то первый раздел будет иметь название <b>/dev/sdX1</b>. | Если название устройства microSD-карты имело вид <b>/dev/sdX</b>, то первый раздел будет иметь название <b>/dev/sdX1</b>. | ||
Если устройство называлось <b>/dev/mmcblkX</b> , то первый раздел - <b>/dev/mmcblkXp1</b> (обратите внимание на <b>p</b> перед номером раздела). | Если устройство называлось <b>/dev/mmcblkX</b> , то первый раздел - <b>/dev/mmcblkXp1</b> (обратите внимание на <b>p</b> перед номером раздела). | ||
Найдя имя первого раздела укажите его тут: | Найдя имя первого раздела укажите его тут: | ||
<pre> | <pre> | ||
Строка 127: | Строка 70: | ||
</pre> | </pre> | ||
Теперь заливаем образ раздела на карту | Теперь заливаем образ раздела на карту | ||
<pre> | <pre> | ||
Строка 133: | Строка 75: | ||
</pre> | </pre> | ||
===Создание фс=== | ===Создание фс=== | ||
Находим название второго раздела на флешке и прописываем его в переменную | Находим название второго раздела на флешке и прописываем его в переменную | ||
<pre> | <pre> | ||
Строка 141: | Строка 82: | ||
</pre> | </pre> | ||
<b>rootfs</b> станет названием этого раздела. | <b>rootfs</b> станет названием этого раздела. | ||
<pre> | <pre> | ||
sudo mkfs.ext4 $MYDISK2 -L rootfs | sudo mkfs.ext4 $MYDISK2 -L rootfs | ||
</pre> | </pre> | ||
===Копирование образа на раздел=== | ===Копирование образа на раздел=== | ||
Готовый образ (включая ядро, dtbs, модули и прошивки): https://github.com/contactless/wirenboard/releases | |||
Готовый образ (включая ядро, dtbs, модули и прошивки): | |||
См. также [[Сборка образа]] | |||
См. также [[ | |||
<pre> | <pre> | ||
wget https://github.com/ | wget https://github.com/contactless/wirenboard/releases/download/0.1/rootfs.tar.gz | ||
</pre> | </pre> | ||
Теперь надо примонтировать созданную файловую систему созданную нами ранее. ''Как это сделать в терминале?'' | Теперь надо примонтировать созданную файловую систему созданную нами ранее. ''Как это сделать в терминале?'' | ||
По-умолчанию в Ubuntu она монтируется в <b>/media/$USER/rootfs/</b>. Найдите куда система смонтировалась на вашем компьютере. | По-умолчанию в Ubuntu она монтируется в <b>/media/$USER/rootfs/</b>. Найдите куда система смонтировалась на вашем компьютере. | ||
Распаковываем образ на раздел: | Распаковываем образ на раздел: | ||
<pre> | <pre> | ||
Строка 175: | Строка 108: | ||
Отмонтируем файловую систему: | Отмонтируем файловую систему: | ||
<pre> | <pre> | ||
Строка 181: | Строка 113: | ||
</pre> | </pre> | ||
==Пример== | |||
ОС Ubuntu, свежая SD-карта подключенная к встроенному считывателю и определяющаяся как /dev/mmcblk0. | ОС Ubuntu, свежая SD-карта подключенная к встроенному считывателю и определяющаяся как /dev/mmcblk0. | ||
Репозиторий https://github.com/contactless/wirenboard/ скачан, мы находимся в его корне. | |||
Образ rootfs.tar.gz находится внутри папки rootfs. | Образ rootfs.tar.gz находится внутри папки rootfs. | ||
<pre> | <pre> | ||
cd image | cd image | ||
sudo umount /dev/mmcblk0p1 | sudo umount /dev/mmcblk0p1 | ||
sudo ./create_partitions.sh /dev/mmcblk0 | sudo ./create_partitions.sh /dev/mmcblk0 | ||
sudo dd if=../contrib/u-boot/u-boot.sb of=/dev/mmcblk0p1 bs=512 seek=4 | sudo dd if=../contrib/u-boot/u-boot.sb.cl25 of=/dev/mmcblk0p1 bs=512 seek=4 | ||
sudo ./create_fs.sh /dev/mmcblk0p2 | sudo ./create_fs.sh /dev/mmcblk0p2 | ||
# Ubuntu automount: | # Ubuntu automount: | ||
udisksctl mount -b /dev/mmcblk0p2 | udisksctl mount -b /dev/mmcblk0p2 | ||
#extract rootfs | #extract rootfs | ||
sudo tar xfpz ../rootfs/rootfs.tar.gz -C /media/$USER/rootfs/ | sudo tar xfpz ../rootfs/rootfs.tar.gz -C /media/$USER/rootfs/ | ||
umount /dev/mmcblk0p2 | umount /dev/mmcblk0p2 | ||
</pre> | </pre> | ||
См. также [[ | |||
См. также [[Стандартный образ ФС]]. |
Версия 19:04, 14 июня 2014
Запись полного образа на карточку
- Скачайте последний образ (расширение .dd или .dd.gz) со страницы https://github.com/contactless/wirenboard/releases
- Распакуйте образ, если раширение .gz (gunzip sdcard.dd.gz)
- вставьте флеш-карту в ридер
- отмонтируйте раздел (umount /dev/mmcblk0p1, где /dev/mmcblk0p1 - раздел на флешке)
- проверьте существование устройства флеш-карты, обычно это /dev/mmcblk0 для встроенного ридера и /dev/sdX (X - буква) - для внешнего.
Название устройства можно посмотреть например в dmesg | tail
- накатите образ на флеш-карту
Не перепутайте название устройства! Неправильно указав название устройства, вы рискуете навсегда потерять все данные на вашем компьютере!
sudo dd if=sdcard.dd of=/dev/mmcblk0 bs=4M
Создание образа по частям
Сборка вместе
Согласно [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.cl25?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
Пример
ОС Ubuntu, свежая SD-карта подключенная к встроенному считывателю и определяющаяся как /dev/mmcblk0. Репозиторий https://github.com/contactless/wirenboard/ скачан, мы находимся в его корне.
Образ rootfs.tar.gz находится внутри папки rootfs.
cd image sudo umount /dev/mmcblk0p1 sudo ./create_partitions.sh /dev/mmcblk0 sudo dd if=../contrib/u-boot/u-boot.sb.cl25 of=/dev/mmcblk0p1 bs=512 seek=4 sudo ./create_fs.sh /dev/mmcblk0p2 # Ubuntu automount: udisksctl mount -b /dev/mmcblk0p2 #extract rootfs sudo tar xfpz ../rootfs/rootfs.tar.gz -C /media/$USER/rootfs/ umount /dev/mmcblk0p2
См. также Стандартный образ ФС.