Создание microSD-карты с образом: различия между версиями
м (Откат правок A.Degtyarev (обсуждение) к последней версии Sikmir) Метка: откат |
(Отметить эту версию для перевода) |
||
(не показаны 3 промежуточные версии 3 участников) | |||
Строка 3: | Строка 3: | ||
==Запись готового образа на карточку== <!--T:1--> | ==Запись готового образа на карточку== <!--T:1--> | ||
===Выбор нужного образа=== <!--T:2--> | ===Выбор нужного образа=== <!--T:2--> | ||
<!--T:3--> | <!--T:3--> | ||
*Зайдите на [https://github.com/ | *Зайдите на [https://github.com/contactless/wirenboard/releases страницу готовых образов в Github] и выберите нужный образ: | ||
**для Wiren Board 4 - название оканчивается на ''_wb4'' | **для Wiren Board 4 - название оканчивается на ''_wb4'' | ||
**для Wiren Board Smart Home 3.5 - название оканчивается на ''_wb3'' | **для Wiren Board Smart Home 3.5 - название оканчивается на ''_wb3'' | ||
Строка 15: | Строка 16: | ||
*Распакуйте архив | *Распакуйте архив | ||
*Следуйте инструкции для вашей операционной системы | *Следуйте инструкции для вашей операционной системы | ||
=== Для Windows === <!--T:4--> | === Для Windows === <!--T:4--> | ||
Строка 25: | Строка 27: | ||
* убедитесь, что другие программы не используют флеш-карту | * убедитесь, что другие программы не используют флеш-карту | ||
* в Win32DiskImager выберите распакованный образ карты, выберите букву диска и нажмите кнопку ''Write'' | * в Win32DiskImager выберите распакованный образ карты, выберите букву диска и нажмите кнопку ''Write'' | ||
=== Для Linux === <!--T:6--> | === Для Linux === <!--T:6--> | ||
Строка 42: | Строка 45: | ||
Пример процесса целиком: | Пример процесса целиком: | ||
<pre> | <pre> | ||
wget https://github.com/ | wget https://github.com/contactless/wirenboard/releases/download/0.6-20140614/sdcard_20140614.img.zip | ||
unzip sdcard_20140614.img.zip | unzip sdcard_20140614.img.zip | ||
umount /dev/mmcblk0p2 | umount /dev/mmcblk0p2 | ||
Строка 49: | Строка 52: | ||
sync | sync | ||
</pre> | </pre> | ||
==Создание образа по частям== <!--T:9--> | ==Создание образа по частям== <!--T:9--> | ||
Строка 88: | Строка 92: | ||
<!--T:19--> | <!--T:19--> | ||
Теперь с помощью скрипта создадим разделы на карте. | Теперь с помощью скрипта создадим разделы на карте. | ||
[https://github.com/ | [https://github.com/contactless/wirenboard/blob/master/image/create_partitions.sh] | ||
<!--T:20--> | <!--T:20--> | ||
Скачиваем скрипт: | Скачиваем скрипт: | ||
<pre> | <pre> | ||
wget [https://raw.github.com/ | wget [https://raw.github.com/contactless/wirenboard/master/image/create_partitions.sh] | ||
</pre> | </pre> | ||
Строка 101: | Строка 105: | ||
sudo bash create_partitions.sh $MYDISK | sudo bash create_partitions.sh $MYDISK | ||
</pre> | </pre> | ||
===Загрузчик=== <!--T:22--> | ===Загрузчик=== <!--T:22--> | ||
Строка 108: | Строка 113: | ||
<!--T:24--> | <!--T:24--> | ||
Готовый образ u-boot для записи в раздел: [https://github.com/ | Готовый образ u-boot для записи в раздел: [https://github.com/contactless/wirenboard/tree/master/contrib/u-boot u-boot] | ||
<!--T:25--> | <!--T:25--> | ||
Скачиваем образ | Скачиваем образ | ||
<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> | ||
Строка 132: | Строка 137: | ||
sudo dd if=u-boot.sb of=$MYDISK1 bs=512 seek=4 | sudo dd if=u-boot.sb of=$MYDISK1 bs=512 seek=4 | ||
</pre> | </pre> | ||
===Создание фс=== <!--T:29--> | ===Создание фс=== <!--T:29--> | ||
Строка 148: | Строка 154: | ||
sudo mkfs.ext4 $MYDISK2 -L rootfs | sudo mkfs.ext4 $MYDISK2 -L rootfs | ||
</pre> | </pre> | ||
===Копирование образа на раздел=== <!--T:33--> | ===Копирование образа на раздел=== <!--T:33--> | ||
<!--T:34--> | <!--T:34--> | ||
Готовый образ (включая ядро, dtbs, модули и прошивки): [https://github.com/ | Готовый образ (включая ядро, dtbs, модули и прошивки): [https://github.com/contactless/wirenboard/releases releases] | ||
<!--T:35--> | <!--T:35--> | ||
Строка 159: | Строка 167: | ||
<!--T:36--> | <!--T:36--> | ||
<pre> | <pre> | ||
wget https://github.com/ | wget https://github.com/contactless/wirenboard/releases/download/0.1/rootfs.tar.gz | ||
</pre> | </pre> | ||
Строка 180: | Строка 188: | ||
umount /media/user/rootfs | umount /media/user/rootfs | ||
</pre> | </pre> | ||
==Пример== <!--T:41--> | ==Пример== <!--T:41--> | ||
Строка 185: | Строка 194: | ||
<!--T:42--> | <!--T:42--> | ||
ОС Ubuntu, свежая SD-карта подключенная к встроенному считывателю и определяющаяся как /dev/mmcblk0. | ОС Ubuntu, свежая SD-карта подключенная к встроенному считывателю и определяющаяся как /dev/mmcblk0. | ||
[https://github.com/ | [https://github.com/contactless/wirenboard/ Репозиторий] скачан, мы находимся в его корне. | ||
<!--T:43--> | <!--T:43--> | ||
Строка 197: | Строка 206: | ||
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 of=/dev/mmcblk0p1 bs=512 seek=4 | ||
sudo ./create_fs.sh /dev/mmcblk0p2 | sudo ./create_fs.sh /dev/mmcblk0p2 | ||
<!--T:45--> | <!--T:45--> | ||
Строка 209: | Строка 219: | ||
umount /dev/mmcblk0p2 | umount /dev/mmcblk0p2 | ||
</pre> | </pre> | ||
<!--T:48--> | <!--T:48--> | ||
См. также [[Special:MyLanguage/Стандартный образ ФС|Стандартный образ ФС]]. | См. также [[Special:MyLanguage/Стандартный образ ФС|Стандартный образ ФС]]. | ||
</translate> | </translate> |
Версия 19:38, 31 мая 2019
Запись готового образа на карточку
Выбор нужного образа
- Зайдите на страницу готовых образов в Github и выберите нужный образ:
- для Wiren Board 4 - название оканчивается на _wb4
- для Wiren Board Smart Home 3.5 - название оканчивается на _wb3
- если серийный номер вашего Wiren Board Smart Home 3.5 больше 300 - используйте образ с newwifi в названии
- для WB rev. 2.8 - название оканчивается на _wb28
- У образа будет расширение .dd, либо .dd.gz, либо img.zip
- Распакуйте архив
- Следуйте инструкции для вашей операционной системы
Для Windows
- скачайте программу для записи образов(например, Win32DiskImager)
- вставьте microSD-карту в ридер
- узнайте букву, под которой она появилась (например "F:")
- проигнорируйте сообщения о необходимости отформатировать диск перед использованием, если такое появится
- убедитесь, что другие программы не используют флеш-карту
- в Win32DiskImager выберите распакованный образ карты, выберите букву диска и нажмите кнопку Write
Для 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
См. также Стандартный образ ФС.