Как создать образ диска в Linux с несколькими разделами, не имея физического образца
Здравствуй дорогой читатель данного руководства. Меня зовут Андрей, и нет, я не алкоголик, а разработчик встраиваемых систем на базе Linux.
Данная статья является кратким руководством по созданию образа диска с несколькими разделами, куда можно было бы записать всякую всячину для передачи заказчику, а в дальнейшем и на производство.
Для чего это нужно? Все процессорные платы, разрабатываемые нашим предприятием, обладают слотом для sdcard и установленной на плате mmc. Загрузка системы производится либо с sd, либо c mmc. sd-карта является, как правило, временным решением, подкупает простотой установки. А mmc является постоянным решением, куда устанавливается уже финальное программное обеспечение. Переключение между способами загрузки осуществляется перемычками (джамперами на плате).
В случае, когда мы говорим о заказчике на этапе разработки, ему необходима самостоятельная возможность работать с устройством. Для этого ему предоставляется само устройство и ссылка для скачивания образа, с инструкцией, как установить образ на sdcard и загрузить с неё систему. Далее заказчик иницирует либо установку с sd-карты, либо запускает диагностическое программное обеспечение, но это уже конкретные детали работы с заказчиком.
В случае, когда мы говорим о производстве, и выпуске устройства, то мы знаем, что люди которые будут устанавливать на mmc конечный продукт, как правило, не умеют подключаться через терминал и работать с командной строкой u-boot или Linux, да и просто может не быть на это времени. В их задачи должны входить осуществление простого производственного цикла, например:
- получить устройство;
- подключить к стенду;
- установить джамперы и sd-карту;
- подать питание;
- дождаться сообщений об окончании установки ПО;
- выключить устройство;
- снять джамперы и извлечь sd-карту;
- подать питание;
- дождаться диагностических сообщений;
- выключить устройство и передать дальше.
Конечно, образ можно разместить, например на сервере, и накатывать через сеть, но такой вариант, все равно, требует, как минимум, наличие загрузчика на mmc.
Для того, чтобы не мучаться с каждой sd-картой для каждого варианта, можно заранее подготовить несколько образов. И тут возникает вопрос — каким образом? Подготовку можно даже автоматизировать, но это совсем другая история.
Что потребуется для понимания и осуществления происходящего:
- ОС GNU/Linux Debian;
- умение пользоваться командной строкой на уровне ввода команд;
- понимать что такое переменная окружения и как ее значение использовать в командной строке.
-
Создаём файл образа диска заданного размера:
dd if=/dev/zero of=$ bs=$ count=$ # или truncate -s $ $
fdisk $ # как делить диск и на какое количество разделов, личное дело каждого DEVLOOP=$(sudo losetup --show -fP $) # форматируем разделы, если образ диска включает два раздела, то: sudo mkfs.$ $p1 sudo mkfs.$ $p2
sudo mount $p$ $$ sudo cp -aR /rootfs/* $$/ # что записываем и куда, каждый решает сам # если вам также как и мне требуется на диске u-boot, то не забываем установить: sudo dd if=u-boot.img of=$ bs=1k seek=1
sudo umount $$ sudo losetup -d $
sudo dd if=$ of=$ conv=fsync
Заключение
Подготовить образ диска можно двумя способами:
- сделав образ с реального физического носителя при помощи программы dd;
- создав изначально целиком виртуальный образ, который может быть установлен на любой внешний носитель при помощи той же dd.
Почему первый способ не всегда подходит? Если вы разрабатываете одну систему, пользуетесь одной sd-картой, то этот способ кажется вполне приемлемым. Но, как только, вы попробуете установить образ с этой единственной sd-карты на другую, похожую, например другого размера, вас ждет разочарование в таком подходе. У меня в работе, как правило несколько встраиваемых систем, и держать по несколько разных sd-карт для каждой — просто незволительная роскошь. Виртуальный же образ всегда легко модифицируем и распространяем. Но есть недостаток — это его фиксированный размер, он в таком же виде попадет на sd-карту, ограничив размер используемого места, но для случая когда это необходимо для разворачивания системы это не имеет значения.
UPD: Руководство исправлено в соответствии с замечаниями комментаторов. Спасибо.
- losetup
- образ диска
- создание образа с нуля
- несколько разделов
- Настройка Linux
- *nix
- Разработка под Linux
Как создать образ жёсткого диска Linux
Создание образа жёсткого диска Linux удобно и быстро копирует систему и данные ОС Linux. Например, образ Linux Mint будет содержать не только саму ОС и приложения, но и все настройки. Handy Backup предлагает различные способы создания образов для Linux.
Заказать плагины
Методы создания образов Linux в Handy Backup из-под ОС Windows
Плагины Disk Image и System Recovery, в настоящий момент доступны для работы только из-под ОС Windows. Вы можете сделать образ диска Linux с помощью любого из этих плагинов, работая с ним из-под Windows, как с неактивным системным диском.
Плагин System Recovery
Этот плагин позволяет посекторно сделать для Linux образ диска со всеми разделами (включая раздел подкачки) в виде виртуального диска (VHD). Такой диск можно просмотреть, записать образ Linux на флешку, подключить к виртуальной машине и т.д.
Плагин Disk Image
С помощью этого плагина можно сохранять не только образ диска Linux, но и сведения об отдельных разделах, во внутреннем двоичном формате. Этот способ отлично подходит, чтобы выполнять для Linux создание образов разделов жёсткого диска, в т.ч. по сети.
Заинтересованы в плагинах System Recovery и Disk Image для Linux версии Handy Backup?
В настоящий момент в версии Handy Backup для Linux нет плагинов System Recovery и Disk Image. Заполните форму обратной связи и напишите ваши пожелания по поводу добавления данных плагинов в версию Handy Backup Linux, чтобы создавать образ диска с Linux непосредственно на локальной машине под управлением ОС Linux!
Заявка на добавление плагина для создания образа диска Linux
Утилита Handy Backup Disaster Recovery
Доступная для бесплатной загрузки во всех решениях Handy Backup, кроме Standard, утилита Disaster Recovery позволяет записать образ Linux на флешку, а затем восстановить этот образ на любой машине без участия загрузочной ОС или Handy Backup (т.н. восстановление «на голое железо»).
Примечание: утилита Disaster Recovery не требует для работы загрузки компьютера с жёсткого диска и использует собственный загрузочный диск ОС на базе Slax 9. Эта программа работает только на локальных компьютерах, требуя физического подключения USB диска.
Преимущества создания образа диска Linux с Handy Backup
- Встроенный модуль расписания, позволяющий задать режим создания образа жёсткого диска Linux с запуском в точное время, через заданные интервалы времени или при наступлении системного события.
- Средства сжатия и шифрования, позволяющие защитить образ Linux от несанкционированного доступа, а также использовать различные защищённые хранилища для хранения образа системы Linux в безопасном месте.
- Различные методы управления созданием образа диска Linux, такие, как «горячая» запись образа системы Linux без остановки работы, запуск в режиме службы, управление версиями и пр.
Узнать подробнее о функциях бэкапа и создания образа дисков Linux в Handy Backup.
Как создать образ системы Linux в Handy Backup из-под ОС Windows
Чтобы сделать образ диска Linux, пожалуйста, выполните следующую инструкцию:
- Откройте Handy Backup и создайте новую задачу с помощью кнопки на главной панели или меню.
- На Шаге 1 выберите задачу резервного копирования, нажмите «Далее».
- В разворачивающемся списке Disk Clone на левой панели щёлкните по плагину System Recovery.
Перед тем, как снять образ диска Linux по сети * , выберите машину, с которой вы осуществляете создание образа жёсткого диска Linux, из выпадающего списка в верхнем левом углу окна Шага 2.
- В диалоге выбора дисков отметьте «галочкой» системный диск, с которого вы собираетесь сделать образ Linux.
- Нажмите «OK» и вернитесь к Шагу 2. Нажмите «Далее» для продолжения.
- Продолжайте создавать задачу резервного копирования. Все остальные шаги по созданию новой задачи не отличаются какой-либо спецификой при создании образа диска Linux.
* Машина и установленный на ней Сетевой Агент в момент создания образа жёсткого диска Linux должны находиться под управлением Windows, так же, как и для локальной версии.
Хранение образа диска Linux
Вы можете не только записать образ Linux на флешку, но и поместить его в любое современное хранилище данных (включая локальные и сетевые диски, устройства USB, серверы FTP/ SFTP/ FTPS, облачные сервисы с протоколом WebDAV, облака Amazon S3, Google Диск, Яндекс Диск и др.).
Предупреждение! Перед тем как сохранить образ системы Linux в хранилище, убедитесь, что выбранное хранилище имеет достаточно свободного места, чтобы вместить в себя файлы образа! Так, образ диска Linux Mint в рабочей системе может иметь размер от 15 до 50 Гб и более.
Читайте также:
- Резервное копирование Ubuntu
- Бэкап Linux Server
- Создание образа жесткого диска
- Резервная копия диска
Создание образа системы в Linux
Клонирование — создание точной копии исходного носителя.
В данном случае клонировать нужно корневую файловую систему Linux.
Клонированная копия и образ — одно и то же.
Зачем это надо?
Если вы администрируете парк компьютеров с одинаковой конфигурацией и хотите установить на них дистрибутив Линукс. Устанавливаем на одной машине, а на другие просто клонируем. Если система «накрылась», вы сможете восстановить её исходное состояние развертыванием образа, где всё уже установлено и настроено под ваши нужды
Как создать образ:
Во избежание недоразумений оговорим те разделы и диски, которые будем использовать
/dev/sda — жесткий диск с рабочей системой, его будем архивировать
/dev/sda1 — раздел, содержащий корневую фс
dev/sdb1 — раздел на внешнем жёстком диске для архивации
1.-Перезагрузитесь в однопользовательском режиме (single)
2.-Введите команду mount, чтобы узнать, какой раздел содержит корневую файловую систему (в примере используется /dev/sda1).Образ этого раздела и нужно сохранить на другом носителе. Например на внешнем жестком диске.
3.-Подмонтируйте внешний HDD
Например,в каталог /mnt/image: # modprobe usb_storage # mkdir /mnt/image # mount /dev/sdb1 /mnt/image
4.-Теперь перемонтируем корневую систему в режим «только для чтения» и создадим образ:
# sync # mount -о remount.ro / # dd if=/dev/sda1 of=/mnt/image/backup.bin Готово.
Как восстановить систему из созданного образа:
Нужно иметь под рукой: загрузочный компакт-диск любого дистрибутива Linux. При использовании простого диска (не LiveCD) для перехода на текстовую консоль нажмите Ctrl + Alt + F2.
1.- Подмонтируем внешний винчестер: # mkdir /image # modprobe usb_storage # mount /dev/sdb1 /image
При установке системы на пустой диск нужно создать разделы. При восстановлении после сбоя, ничего создавать не нужно. Лишь убедитесь в том, что раздел подкачки (Linux swap) создан.
2.- Развернем образ: # dd if=/image/image.bin of=/dev/sda1 # mkdir /install # mount /dev/sda1 /install # chroot /install /bin/bash
Корнем становится каталог /install, к которому примонтирован новый HDD. В качестве командной оболочки выступает /bin/bash.
3.- Перезпишем загрузчик:
# liio
# grub-install /dev/sdb
4.-Перезагрузим компьютер командой reboot. Копия системы восстановлена
Похожие записи:
- Установка и настройка rsync
- Linux. Перенос системы на другой компьютер с помощью tar
- Авторизиция на ssh сервере по ключу
- Как узнать размер папки в Linux
Форум русскоязычного сообщества Ubuntu
Увидели сообщение с непонятной ссылкой, спам, непристойность или оскорбление?
Воспользуйтесь ссылкой «Сообщить модератору» рядом с сообщением!
- Форум русскоязычного сообщества Ubuntu »
- Архив »
- Архив »
- Архив тем до 2022г »
- Создание образа системы Ubuntu 20.04
Страницы: [1] Вниз
Автор Тема: Создание образа системы Ubuntu 20.04 (Прочитано 2045 раз)
0 Пользователей и 1 Гость просматривают эту тему.
Страницы: [1] Вверх
- Форум русскоязычного сообщества Ubuntu »
- Архив »
- Архив »
- Архив тем до 2022г »
- Создание образа системы Ubuntu 20.04
Страница сгенерирована за 0.028 секунд. Запросов: 25.
- Сайт
- Об Ubuntu
- Скачать Ubuntu
- Семейство Ubuntu
- Новости
- Форум
- Помощь
- Правила
- Документация
- Пользовательская документация
- Официальная документация
- Семейство Ubuntu
- Материалы для загрузки
- Совместимость с оборудованием
- RSS лента
- Сообщество
- Наши проекты
- Местные сообщества
- Перевод Ubuntu
- Тестирование
- RSS лента
© 2012 Ubuntu-ru — Русскоязычное сообщество Ubuntu Linux.
© 2012 Canonical Ltd. Ubuntu и Canonical являются зарегистрированными торговыми знаками Canonical Ltd.