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

Материал из Wiren Board
Метки: правка с мобильного устройства правка из мобильной версии
(Новая страница: «=== For Linux ===»)
(не показана 41 промежуточная версия 2 участников)
Строка 28: Строка 28:
=== For Linux ===
=== For Linux ===


*insert the microSD card into the reader
*вставьте microSD-карту в ридер
*find out the name of the device corresponding to the map. This is usually /dev/mmcblk0 or /dev/sdX (where X is the letter). This command can help  <pre>dmesg | tail</pre>
*узнайте название устройства, соответствующего карте. Обычно это /dev/mmcblk0 или /dev/sdX (где X - буква). В этом может помочь команда <pre>dmesg | tail</pre>
*:<b> Do not confuse the device name! Incorrectly specifying the name of the device, you will lose all data on your computer forever!</b>
*:<b> Не перепутайте название устройства! Неправильно указав название устройства, вы навсегда потеряете все данные на вашем компьютере!</b>
*unmount the map partitions that Linux mounted automatically:
*отмонтируйте разделы карты, которые Linux примонтировал автоматически:
**if the device is called /dev/mmcblk0, the partitions are called /dev/mmcblk0p1, /dev/mmcblk0p2, etc.
**если устройство называется /dev/mmcblk0, то разделы называются /dev/mmcblk0p1, /dev/mmcblk0p2 и т.д.
**if the device is called /dev/sdb, the partitions are /dev/sdb1, /dev/sdb2, etc.
**если устройство называется /dev/sdb, то разделы называются /dev/sdb1, /dev/sdb2 и т.д.
*An example of a command:<pre>umount /dev/mmcblk0p1</pre>
*:Пример команды:<pre>umount /dev/mmcblk0p1</pre>
*flash the card:<pre>sudo dd if=sdcard.dd of=/dev/mmcblk0 bs=4M</pre>
*запишите образ на карту:<pre>sudo dd if=sdcard.dd of=/dev/mmcblk0 bs=4M</pre>
, where "sdcard.dd" is path to the previously downloaded unzipped image file.
, где "sdcard.dd" - путь к ранее скачанному распакованному файлу с образом.


An example of the process:
Пример процесса целиком:
<pre>
<pre>
wget https://github.com/contactless/wirenboard/releases/download/0.6-20140614/sdcard_20140614.img.zip
wget https://github.com/contactless/wirenboard/releases/download/0.6-20140614/sdcard_20140614.img.zip
Строка 49: Строка 49:




==Creating an image in parts==
==Создание образа по частям==


'''Attention!''' This is a complex version of self-preparation of the image of the card. It is better to use the option described above.
'''Внимание!''' Это сложный вариант самостоятельной подготовки образа карточки. Лучше воспользуйтесь вариантом, описанным выше.


'''Attention!''' On November 6, 2015 instruction below is also hopelessly outdated.
'''Внимание!''' На 6 ноября 2015 инструкция ниже ещё и безнадёжно устарела.


===Build together===
===Сборка вместе===


According to [http://eewiki.net/display/linuxonarm/iMX233-OLinuXino]
Согласно [http://eewiki.net/display/linuxonarm/iMX233-OLinuXino]


*split the flash drive into two sections
* разбить флешку на два раздела
*boot u-boot to the first partition
* записать u-boot на первый раздел
*create a filesystem on the second partition
* создать фс на втором разделе
*copy the root filesystem to the second partition
* скопировать rootfs на второй раздел


First you need to find out the name of the device with the flash card. Use the search. You can, for example, try to run the program GParted and see it. Dev /dev/sdb, and may look like /dev/mmcblk0
Сначала надо выяснить имя устройства с флеш-картой. Воспользуйтесь поиском. Можно, к примеру, попробовать запустить gparted и посмотреть в нём.
Устройство может быть /dev/sdb, а может выглядеть и как /dev/mmcblk0


When the device is found, we create a variable to facilitate the use of the following commands
Найдя устройство создаем переменную чтобы облегчить себе использование нижеследующих комманд
<pre>
<pre>
MYDISK="/dev/sdb"
MYDISK="/dev/sdb"
</pre>
</pre>
Between the quotes write the name of your device with a flash card.
Между кавычками пишем название своего устройства с флеш-картой.




===Partition table===
===Таблица разделов===


Before starting, make sure that the partitions on the card are not mounted.
Перед запуском убедитесь, что разделы на карточке не примонтированы.


Now we will create card partitions using the script. [2]
Теперь с помощью скрипта создадим разделы на карте.
[https://github.com/contactless/wirenboard/blob/master/image/create_partitions.sh]
[https://github.com/contactless/wirenboard/blob/master/image/create_partitions.sh]


Download script:
Скачиваем скрипт:
<pre>
<pre>
wget [https://raw.github.com/contactless/wirenboard/master/image/create_partitions.sh]
wget [https://raw.github.com/contactless/wirenboard/master/image/create_partitions.sh]
</pre>
</pre>


Run the script and specify the name of the device with the flash card:
Запускаем скрипт и указываем ему имя устройства с флеш-картой:
<pre>
<pre>
sudo bash create_partitions.sh $MYDISK
sudo bash create_partitions.sh $MYDISK
Строка 91: Строка 92:




===Bootloader===
===Загрузчик===


See [[Special:MyLanguage/Сборка U-Boot/en|Building U-Boot]].
См. [[Special:MyLanguage/Сборка U-Boot|Сборка U-Boot]].


An image loader to write to the partition: loader[https://github.com/contactless/wirenboard/tree/master/contrib/u-boot u-boot]
Готовый образ u-boot для записи в раздел: [https://github.com/contactless/wirenboard/tree/master/contrib/u-boot u-boot]


Download image
Скачиваем образ
<pre>
<pre>
wget "https://github.com/contactless/wirenboard/blob/master/contrib/u-boot/u-boot.sb.cl25?raw=true" -O u-boot.sb
wget "https://github.com/contactless/wirenboard/blob/master/contrib/u-boot/u-boot.sb.cl25?raw=true" -O u-boot.sb
</pre>
</pre>


Find out the names of the partitions. The script  divided the card into partitions, we need to know the name of the first of them. If the device name for the microSD card was <b>/dev/sdX</b>, the first partition will have the device name <b>/dev/sdX1</b>. If the device was named <b>/dev/mmcblkX</b> , the first section is partition <b>/dev/mmcblkXp1</b> (note the <b>p</b> before the partition number).
Теперь выясняем имена разделов на карте. Скрипт выше отработал и разделил карту на разделы, нам надо узнать название первого из этих разделов.  
Если название устройства microSD-карты имело вид <b>/dev/sdX</b>, то первый раздел будет иметь название <b>/dev/sdX1</b>.  
Если устройство называлось <b>/dev/mmcblkX</b> , то первый раздел - <b>/dev/mmcblkXp1</b> (обратите внимание на <b>p</b> перед номером раздела).


Finding the name of the first section, enter it here:
Найдя имя первого раздела укажите его тут:
<pre>
<pre>
MYDISK1="/dev/sdb1"
MYDISK1="/dev/sdb1"
</pre>
</pre>


Now download the partition image to the card
Теперь заливаем образ раздела на карту
<pre>
<pre>
sudo dd if=u-boot.sb of=$MYDISK1 bs=512 seek=4
sudo dd if=u-boot.sb of=$MYDISK1 bs=512 seek=4
Строка 115: Строка 118:




===Creating FS===
===Создание фс===


Find the name of the second section on the flash drive and write it in a variable
Находим название второго раздела на флешке и прописываем его в переменную
<pre>
<pre>
MYDISK2="/dev/sdb2"
MYDISK2="/dev/sdb2"
</pre>
</pre>


<b>rootfs</b> will become the name of this partition.
<b>rootfs</b> станет названием этого раздела.


<pre>
<pre>
Строка 129: Строка 132:




===Copy image to partition===
===Копирование образа на раздел===


Released image (including kernel, dtbs, modules and firmware): [https://github.com/contactless/wirenboard/releases releases]
Готовый образ (включая ядро, dtbs, модули и прошивки): [https://github.com/contactless/wirenboard/releases releases]




See also [[Special:MyLanguage/Сборка образа/en|Image Building]]
См. также [[Special:MyLanguage/Сборка образа|Сборка образа]]


<pre>
<pre>
Строка 140: Строка 143:
</pre>
</pre>


Now we need to mount the file system we created earlier.'' How to do it in the terminal?''
Теперь надо примонтировать созданную файловую систему созданную нами ранее. ''Как это сделать в терминале?''


By default in Ubuntu it is mounted in <b>/media/$USER/rootfs/</b>. Find where the system is mounted on your computer.
По-умолчанию в Ubuntu она монтируется в <b>/media/$USER/rootfs/</b>. Найдите куда система смонтировалась на вашем компьютере.


Unpack the image into a section:
Распаковываем образ на раздел:
<pre>
<pre>
  sudo tar xfpz rootfs.tar.gz -C /media/$USER/rootfs/
  sudo tar xfpz rootfs.tar.gz -C /media/$USER/rootfs/
Строка 150: Строка 153:




Unmount the file system:
Отмонтируем файловую систему:
<pre>
<pre>
umount /media/user/rootfs
umount /media/user/rootfs
Строка 156: Строка 159:




==Example==
==Пример==


Ubuntu OS, SD card is connected to the built-in reader and defined as /dev/mmcblk0.  
ОС Ubuntu, свежая SD-карта подключенная к встроенному считывателю и определяющаяся как /dev/mmcblk0.
[https://github.com/contactless/wirenboard/ The repository] is downloaded, we are in its root.
[https://github.com/contactless/wirenboard/ Репозиторий] скачан, мы находимся в его корне.


Image file rootfs.tar.gz is located inside the rootfs system folder.
Образ rootfs.tar.gz находится внутри папки rootfs.


<pre>
<pre>
Строка 182: Строка 185:




See [[Special:MyLanguage/Стандартный образ ФС/en|FS standart image]].
См. также [[Special:MyLanguage/Стандартный образ ФС|Стандартный образ ФС]].

Версия 13:01, 3 июня 2019

Другие языки:

Recording the finished image on the card

Selecting the desired image

  • Go to the finished images page in Github and select the desired image:
    • for Wiren Board 4 - name ends as _wb4
    • for Wiren Board Smart Home 3.5 - ends as _wb3
      • if the serial number of your Wiren Board Smart Home 3.5 is more than 300 - use the image with newwifi in the title
    • for WB rev. 2.8 - ends as _wb28
    The image will have an .dd extension, either .DD.gz, or img.zipper .dd, or .dd.gz, or img.zip
  • Unpack the archive
  • Follow the instructions for your operating system


For Windows

  • download a program to record images(for example, Win32DiskImager)
  • insert the microSD card into the reader
  • find out the letter under which it appeared (for example "F:")
  • ignore messages about the disk format before use, if such appear
  • make sure no other programs are using this card
  • in Win32DiskImager, select the unpacked map image, select the drive letter, and then click Write


For Linux

  • вставьте microSD-карту в ридер
  • узнайте название устройства, соответствующего карте. Обычно это /dev/mmcblk0 или /dev/sdX (где X - буква). В этом может помочь команда
    dmesg | tail
    Не перепутайте название устройства! Неправильно указав название устройства, вы навсегда потеряете все данные на вашем компьютере!
  • отмонтируйте разделы карты, которые Linux примонтировал автоматически:
    • если устройство называется /dev/mmcblk0, то разделы называются /dev/mmcblk0p1, /dev/mmcblk0p2 и т.д.
    • если устройство называется /dev/sdb, то разделы называются /dev/sdb1, /dev/sdb2 и т.д.
    Пример команды:
    umount /dev/mmcblk0p1
  • запишите образ на карту:
    sudo dd if=sdcard.dd of=/dev/mmcblk0 bs=4M

, где "sdcard.dd" - путь к ранее скачанному распакованному файлу с образом.

Пример процесса целиком:

wget https://github.com/contactless/wirenboard/releases/download/0.6-20140614/sdcard_20140614.img.zip
unzip sdcard_20140614.img.zip
umount /dev/mmcblk0p2
umount /dev/mmcblk0p1
sudo dd if=sdcard_20140614.img of=/dev/mmcblk0 bs=4M conv=fdatasync
sync


Создание образа по частям

Внимание! Это сложный вариант самостоятельной подготовки образа карточки. Лучше воспользуйтесь вариантом, описанным выше.

Внимание! На 6 ноября 2015 инструкция ниже ещё и безнадёжно устарела.

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

Согласно [1]

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

Сначала надо выяснить имя устройства с флеш-картой. Воспользуйтесь поиском. Можно, к примеру, попробовать запустить gparted и посмотреть в нём. Устройство может быть /dev/sdb, а может выглядеть и как /dev/mmcblk0

Найдя устройство создаем переменную чтобы облегчить себе использование нижеследующих комманд

MYDISK="/dev/sdb"

Между кавычками пишем название своего устройства с флеш-картой.


Таблица разделов

Перед запуском убедитесь, что разделы на карточке не примонтированы.

Теперь с помощью скрипта создадим разделы на карте. [2]

Скачиваем скрипт:

wget [https://raw.github.com/contactless/wirenboard/master/image/create_partitions.sh]

Запускаем скрипт и указываем ему имя устройства с флеш-картой:

sudo bash create_partitions.sh $MYDISK


Загрузчик

См. Сборка U-Boot.

Готовый образ u-boot для записи в раздел: 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, модули и прошивки): 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. Репозиторий скачан, мы находимся в его корне.

Образ 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  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


См. также Стандартный образ ФС.