Как сделать образ cf карты

Добавил пользователь Дмитрий К.
Обновлено: 05.10.2024

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Загрузчик

Готовый образ u-boot для записи в раздел: u-boot

Теперь выясняем имена разделов на карте. Скрипт выше отработал и разделил карту на разделы, нам надо узнать название первого из этих разделов. Если название устройства microSD-карты имело вид /dev/sdX, то первый раздел будет иметь название /dev/sdX1. Если устройство называлось /dev/mmcblkX , то первый раздел - /dev/mmcblkXp1 (обратите внимание на p перед номером раздела).

Найдя имя первого раздела укажите его тут:

Теперь заливаем образ раздела на карту

Создание фс

Находим название второго раздела на флешке и прописываем его в переменную

rootfs станет названием этого раздела.

Копирование образа на раздел

Готовый образ (включая ядро, dtbs, модули и прошивки): releases

Теперь надо примонтировать созданную файловую систему созданную нами ранее. Как это сделать в терминале?

По-умолчанию в Ubuntu она монтируется в /media/$USER/rootfs/. Найдите куда система смонтировалась на вашем компьютере.

Распаковываем образ на раздел:


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

Пример

ОС Ubuntu, свежая SD-карта подключенная к встроенному считывателю и определяющаяся как /dev/mmcblk0. Репозиторий скачан, мы находимся в его корне.

Друг пытается клонировать CF-карту с помощью следующей команды linux:

но каждый раз он производит другое изображение. Первые две карты, которые они изобразили, дали противоречивые результаты. Что может быть причиной этого?

1 ответ 1

Простое монтирование с правами записи (rw) может означать запись, в файловых системах ext есть по крайней мере следующие атрибуты, которые обновляются:

  • Последний установлен на
  • Количество гор
  • Время последнего монтирования
  • И возможные времена доступа к файлам, которые обновляются, когда файлы только читаются ( noatime монтирования должен остановить их).
  • И атрибут "Время последней записи", если запись происходит)

На самом деле, монтирование без доступа для записи (с использованием команды mount -r / -o ro ) может по-прежнему выполнять запись на устройство, см. Man mount:

-r, - только для чтения

Смонтируйте файловую систему только для чтения. Синоним -o ro.

Обратите внимание, что в зависимости от типа файловой системы, состояния и поведения ядра, система все еще может выполнять запись на устройство. Например, ext3 и ext4 будут воспроизводить журнал, если файловая система загрязнена. Чтобы предотвратить такой доступ для записи, вы можете смонтировать файловую систему ext3 или ext4 с параметрами монтирования ro, noload или установить для самого блочного устройства режим только для чтения, см. blockdev (8).

И blockdev имеет команду --setro , чтобы установить блочное устройство только для чтения

Вы можете сравнить изображения и увидеть, какие байты отличаются, с помощью cmp или чего-то вроде vbindiff . Только несколько байтов могут быть где-то датой или счетчиком (я не уверен, хранятся ли атрибуты в виде простого текста или как-то закодированы).

Или смонтируйте два (или более) изображения только для чтения и сравните только файлы. Обычный diff может сравнивать деревья каталогов, но я предпочитаю графический интерфейс типа kdiff3 . Если единственное различие заключается в количестве монтирования или времени последнего монтирования, оно не будет отображаться в файлах (возможно, разное время доступа к файлу также не будет отображаться).

Или, может быть, устройство или ваш оперативный памяти или что-то еще идет плохо и читает разные байты здесь и там.

Вы также можете оставить устройство отключенным, создать изображение, затем отключить и снова подключить устройство (все еще не подключенное) и создать другое изображение, а затем сравнить, они должны быть одинаковыми.

' width='8' height='8' /> Создание загрузочной CF-карты в домашних условиях для SUNRISE IDE, пошаговая инструкция

Создание загрузочной CF-карты в домашних условиях
пошаговая инструкция

У вас Linux
A. берете образ и заливаете с помощью dd.

образы:
msx_dos1.03.rar ( 14.32 мегабайт ) Кол-во скачиваний: 1210

msx_dos2.2.rar ( 14.32 мегабайт ) Кол-во скачиваний: 1290

msx_dos2.44.rar ( 14.39 мегабайт ) Кол-во скачиваний: 1246

B. у вас нет линукса на десктопе (к примеру у меня сервера линуксовые, а на десктопах только винда)
потребуется:
- USB flash
- USB картридер под CF или иной вариант подключения CF-карты

1. форматируете USB flash в FAT16 или FAT32

2. разворачиваете архив clonezilla_live_msx_dos2.44.zip ( 173.02 мегабайт ) Кол-во скачиваний: 1279
на USB flash
затем на самой флешке запускаем \utils\win32\makeboot.bat
жмем enter 2 раза

3. выключаете ПК, подключаете USB flash и CF-карту

4. включаете, при запуске входим меню загрузки

выбираем загрузку с USB flash

после успешной загрузки видим:

выбираем дефолтное меню, жмем enter

5. В меню выбора диска куда разворачивать образ выбираем CF-карту
не ошибитесь!

и жмем enter, затем несколько раз подтверждаем

ОПОВЕЩЕНИЕ СПОЙЛЕРА: прокрутите вниз и посмотрите видеоурок в конце этой статьи.

Резервное копирование SD-карт и флэш-накопителей

Для начала откройте окно терминала и подключите SD-карту / USB-накопитель, для которого вы пытаетесь создать резервную копию. Используйте команду lsblk для печати всех доступных устройств в системе.

Имейте в виду, что SD-карты не будут соответствовать общей структуре / dev / sdX, особенно если вы используете встроенный считыватель карт памяти. Вместо этого вы должны увидеть / dev / mmcblk, за которым следует информация о разделе.

Примечание. Резервное копирование USB должно осуществляться по традиционной схеме именования / dev / sdX.

Ваша SD-карта может не отображаться как / dev / mmcblk (или аналогичный), если вы используете USB-адаптер. Название метки устройства зависит от того, как адаптер SD-карты работает с Linux. Лучше всего прочитать руководство к адаптеру.

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

Резервное копирование файла изображения

Первый метод резервного копирования с помощью DD — использовать его для сохранения всего в простой файл образа. Для этого вам нужно будет ввести следующую команду. Имейте в виду, что процесс создания образа займет много времени, особенно если у вас есть большая SD-карта или USB-накопитель.

USB-накопители

Выполнение этой команды приведет к созданию полной копии USB-накопителя и сохранению ее в файле с именем image-of-usb.img. Возьмите этот файл изображения и сделайте резервную копию в безопасном месте. Если вы хотите повысить безопасность, выполните следующие действия, чтобы зашифровать его с помощью GnuPG.

Вывод GnuPG должен быть image-of-usb.img.gpg.

После завершения процесса шифрования удалите исходный файл и сохраните зашифрованный.

Извлеките изображение из зашифрованного файла в любое время с помощью:

SD-карты

Примечание: 0 означает SD 1.

Выполнение этой команды DD сделает снимок вашей SD-карты и сохранит его в файл в файловой системе с именем image-of-sd-card.img. Вы сможете переместить этот архивный образ, загрузить его в Dropbox, Google Drive, на домашний сервер и т. Д. Имейте в виду, что этот архив небезопасен, и к конфиденциальным данным можно легко получить доступ, если кто-то получит их. Вот почему мы рекомендуем вам также зашифровать резервную копию SD с помощью GnuPG.

Чтобы зашифровать, выполните эту команду:

Шифрование должно выводить файл с меткой image-of-sd-card.img.gpg

Вы должны удалить исходный исходный файл, когда шифрование завершится.

Чтобы извлечь зашифрованный архив, повторно запустите gpg без -c.

Дубликаты USB и SD карт

Если вы предпочитаете создать копию SD-карты, а не создавать резервную копию всего изображения, следуйте этим инструкциям. Первый шаг — подключить как SD / USB, для которого вы хотите создать резервную копию, так и второй SD / USB, который вы будете использовать в качестве приемника дублирования. Затем используйте команду lsblk для вывода списка устройств. Найдите все ярлыки устройств и запишите их.

Например, чтобы скопировать SD-карту 1 на SD-карту 2, мне нужно будет использовать / dev / mmcblk0 и / dev / mmcblk1. Еще раз обратитесь к lsblk –help, если необходимо.

Когда вы придумали правильные метки, следуйте приведенным ниже инструкциям.

USB-накопители

В этом примере флэш-накопитель USB №1 — это / dev / sdc, а флэш-накопитель USB №2 — это / dev / sdd. Ваш может отличаться.

По завершении DD все данные с диска №1 должны находиться на диске №2!

SD-карты

Как и в разделе USB, DD берет данные с SD-карты №1, дублирует их и помещает на SD-карту №2. Запишите эту команду в терминал, чтобы запустить процесс дублирования. В этом примере SD-карта №1 будет / dev / mmcblk0, а №2 будет / dev / mmcblk1.

Вы узнаете, что процесс завершен, когда терминал снова сможет принимать текст с клавиатуры.

Восстановление резервных копий

Самый быстрый способ восстановить резервный образ DD на SD-карту или USB-накопитель — просто прошить его с помощью инструмента Etcher. Использование этого инструмента для восстановления данных может показаться немного странным, поскольку Etcher в основном предназначен для записи образов ОС, но он работает очень хорошо!

Начните с загрузки последней версии Инструмент для прошивки Etcher для Linux откройте его и вставьте USB-накопитель или SD-карту.

Когда Etcher показывает окно конечного экрана, ваши данные должны быть на устройстве.

Читайте также: