Как создать образ диска в 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=${FILENAME} bs=${BYTES} count=${NUMBER_OF_BYTES} # или truncate -s ${SIZE} ${FILENAME}Подключаем диск к системе, разбиваем и форматируем:
fdisk ${FILENAME} # как делить диск и на какое количество разделов, личное дело каждого DEVLOOP=$(sudo losetup --show -fP ${FILENAME}) # форматируем разделы, если образ диска включает два раздела, то: sudo mkfs.
${FSTYPE} ${DEVLOOP}p1
sudo mkfs.${FSTYPE} ${DEVLOOP}p2Монтируем разделы и записываем информацию:
sudo mount ${DEVLOOP}p${N} ${MOUNTPOINT}${N} sudo cp -aR /rootfs/* ${MOUNTPOINT}${N}/ # что записываем и куда, каждый решает сам # если вам также как и мне требуется на диске u-boot, то не забываем установить: sudo dd if=u-boot.img of=${DEVLOOP} bs=1k seek=1Отключаем диски в обратном порядке:
sudo umount ${MOUNTPOINT}${N} sudo losetup -d ${DEVLOOP}Записываем полученный образ на соотвествующее устройство, если есть необходимость, например, для проверки и тестирования:
sudo dd if=${FILENAME} of=${BLKDEV} conv=fsyncПередаём полученный ${FILENAME} заказчику или производству, с инструкцией, как пользоваться.
Заключение
Подготовить образ диска можно двумя способами:
сделав образ с реального физического носителя при помощи программы dd;
создав изначально целиком виртуальный образ, который может быть установлен на любой внешний носитель при помощи той же dd.

Почему первый способ не всегда подходит? Если вы разрабатываете одну систему, пользуетесь одной sd-картой, то этот способ кажется вполне приемлемым. Но, как только, вы попробуете установить образ с этой единственной sd-карты на другую, похожую, например другого размера, вас ждет разочарование в таком подходе. У меня в работе, как правило несколько встраиваемых систем, и держать по несколько разных sd-карт для каждой — просто незволительная роскошь. Виртуальный же образ всегда легко модифицируем и распространяем. Но есть недостаток — это его фиксированный размер, он в таком же виде попадет на sd-карту, ограничив размер используемого места, но для случая когда это необходимо для разворачивания системы это не имеет значения.
UPD: Руководство исправлено в соответствии с замечаниями комментаторов. Спасибо.
Проверка образа ISO — Документация Linux Mint Installation Guide
Проверка образа ISO — Документация Linux Mint Installation GuideВажно убедиться в целостности и подлинности вашего образа ISO.
Проверка целостности подтверждает, что образ ISO был скачан правильно, и ваш локальный файл является точной копией файла на серверах загрузки. Ошибка во время скачивания может привести к повреждению файла и вызвать различные ошибки во время установки системы.
Проверка подлинности (аутентичности) подтверждает, что скачанный образ ISO был действительно подписан Linux Mint, то есть это не какая-то модифицированная или вредоносная копия, сделанная кем-то другим.
Загрузите контрольные суммы SHA256, предоставленные Linux Mint
Все зеркала загрузки предоставляют образы ISO, файл sha256sum.txt и файл sha256sum.txt.gpg. Эти файлы можно найти в том же месте, откуда вы загружаете образ ISO.
Если вы не можете найти их, перейдите на зеркало загрузки Heanet и щёлкните на версии выпуска Linux Mint, который вы загрузили.
Загрузите sha256sum.txt и sha256sum.txt.gpg.
Do not copy their content, use «right-click->Save Link As…» to download the files themselves and do not modify them in any way.
Проверка целостности
Для проверки целостности вашего ISO-файла сгенерируйте его контрольную сумму SHA256 и сравните её с контрольной суммой в файле sha256sum.txt.
sha256sum -b yourfile.iso
Подсказка
If you are using Windows follow the tutorial How to verify the ISO image on Windows.
Если суммы совпадают, значит образ ISO был загружен успешно. Если не совпадают, попробуйте загрузить его снова.
Проверка подлинности
Для проверки подлинности sha256sum.txt проверьте подпись sha256sum.txt.gpg, как описано ниже.
Проверьте подлинность sha256sum.txt:
gpg --verify sha256sum.txt.gpg sha256sum.txt
Вывод последней команды должен сказать Вам, что файл подписи хороший и что он был подписан с помощью ключа A25BAE09.
Примечание
GPG может предупредить Вас, что подпись Linux Mint не является доверенной для Вашего компьютера. Это ожидаемо и вполне нормально.
Подсказка
Для получения дополнительной информации о проверке ISO, или для проверки BETA, LMDE или старых версий, прочитайте Как проверить ISO образы.
Read the Docs v: latest
- Versions
- latest
- Downloads
- html
- epub
- On Read the Docs
- Project Home
- Builds
Free document hosting provided by Read the Docs.
Разработка игр для Linux на Ubuntu: Godot и Unity
Новый год, новый выпуск серии игр в блоге Ubuntu! В этом месяце мы расскажем об инструментах разработки игр для Linux на Ubuntu Desktop, что может быть особенно полезно для всех, кто примет участие в предстоящем Global Game Jam.
Global Game Jam — крупнейшее в мире мероприятие по созданию игр, которое проходит по всему миру. Участники проводят 48-часовые хакатоны по разработке игр, и каждый проект основан на одной и той же теме, о которой было объявлено во время выступления на Global Game Jam. Это отличный способ начать разработку игр, если вы никогда не пробовали это раньше. Для разработчиков-ветеранов это возможность поэкспериментировать или опробовать новые идеи, которые могут быть невозможны в их обычных проектах.
Разработка игр для Linux на Ubuntu
Несмотря на то, что инструменты разработки игр на Ubuntu все еще совершенствуются во многих отношениях, это не означает, что невозможно — или даже так сложно — создавать отличные игры на Linux. В этом посте мы познакомим вас с двумя нашими любимыми игровыми движками, доступными в настоящее время в Ubuntu Desktop; Годо и Юнити.
Начало работы с Godot
Godot — первый в нашем списке, потому что он бесплатный и с открытым исходным кодом, а это означает, что вы полностью контролируете все, что делаете с ним.
Движок поддерживает как 3D-, так и 2D-игры, имеет язык сценариев, подобный Python, и экспортируется на настольные, консольные, веб- и мобильные платформы.
Godot — действительно универсальный инструмент и хорошее место для начала обучения разработке игр. У него также есть активное и гостеприимное сообщество, если вы ищете поддержку или даже внесете свой вклад!
Это также самое простое приложение для установки, поскольку вы можете найти Godot в приложении Ubuntu Software или на snapcraft.io.
После того, как вы приступите к работе, ознакомьтесь с Документами Godot, чтобы просмотреть ряд руководств, которые помогут вам начать работу!
Начало работы с Unity
Unity — самая популярная в мире платформа для разработки игр, на которой основано множество лучших компьютерных и мобильных игр, в которые вы можете играть сегодня.
Он также используется не только в видеоиграх. В качестве среды моделирования он интегрируется с такими инструментами, как ROS для робототехники, а также является отличной обучающей средой для машинного обучения.
Подробнее о ROS и Ubuntu можно прочитать здесь.
Загрузите Unity Hub
Unity Hub все еще находится в стадии бета-тестирования, когда речь идет о поддержке Linux. Вы можете найти его, перейдя сюда и просмотрев инструкции по установке Unity Hub в Linux.
Чтобы сэкономить вам несколько кликов, мы воспроизвели приведенные ниже инструкции для Ubuntu:
Выполните следующую команду, чтобы добавить репозиторий Unity Hub:
sudo sh -c 'echo "deb https://hub.unity3d. com/linux/repos/deb stable main" > /etc/apt/sources.list.d/unityhub.list'
Добавьте открытый ключ подписи:
wget -qO - https://hub.unity3d.com/ линукс/ключи/публичные | sudo apt-key add -
Обновите кэш пакетов и установите Unity Hub:
sudo подходящее обновление sudo apt-get install unityhub
Это создаст новый значок в меню ваших приложений, который вы можете щелкнуть, чтобы открыть.
Загрузите редактор Unity
Чтобы начать работу с Unity, вам необходимо создать учетную запись. Не беспокойтесь, Unity бесплатна для личного использования (и предлагает еще больше бесплатных функций для студентов). Нажмите Войдите , чтобы продолжить, как только он у вас появится.
После просмотра краткого вступительного видеоролика «Что нового» вам будет предложено загрузить сам редактор Unity.
После завершения установки вы должны быть готовы начать новый проект!
Каждый новый проект настраивается на основе базовых пресетов в зависимости от типа игры, которую вы хотите создать (2D, 3D, VR, от первого лица). Команда Unity также сотрудничала с некоторыми демонстрационными проектами, чтобы помочь вам освоить инструменты.
Чтобы получить дополнительную помощь по началу работы, ознакомьтесь с набором руководств и способов обучения Unity Learn, которые помогут вам освоить основы работы с редактором и не только.
Кроме того, Raspberry Pi недавно объявила о новом пути обучения «Введение в Unity» на своем веб-сайте. Он предназначен для того, чтобы помочь вам разобраться в основах разработки игр. Отличная отправная точка для новых разработчиков!
Почетное упоминание: Flutter
Не было бы поста в блоге об Ubuntu Desktop в 2022 году без дерзкого упоминания Flutter!
Мы знаем, что многие члены сообщества уже экспериментируют с Flutter, когда дело доходит до настольных приложений, но мы также думаем, что у него есть потенциал в игровой сфере.
В этом месяце команда Flutter запускает Flutter Puzzle Hack. Это конкурс, в котором разработчики должны заново представить классическую головоломку со слайдами и получить призы за самые творческие работы.
Мы также следим за Flame, игровым движком на основе флаттера, который предоставляет пользователям модульные игровые компоненты. Flame определенно стоит проверить, если вы энтузиаст Flutter.
Дайте нам знать, что вы создаете!
Godot и Unity — это мощные движки, которые позволяют пользователям разрабатывать отполированные многоплатформенные игры, но они также достаточно удобны для пользователя, чтобы что-то быстро запустить и запустить.
Это делает их отличными базовыми инструментами для разработки игр для Linux.
Если вы уже разрабатываете игры для Linux (или для него) или решили поэкспериментировать с Ubuntu на предстоящем игровом джеме, мы будем рады узнать о вашем опыте. Поделитесь своими проектами, советами и рекомендациями или учебными пособиями с сообществом в дискурсе рабочего стола Ubuntu.
Больше игрового контента на Ubuntu.com
- Игры Linux с Ubuntu Desktop, часть 1: Steam и Proton
- Учебное пособие по Raspberry Pi: размещение сервера Minecraft на Ubuntu Desktop
Как запустить Ubuntu Desktop на виртуальной машине с помощью VirtualBox
1. Обзор
В этом руководстве мы познакомим вас с одним из самых простых способов опробовать Ubuntu Desktop на виртуальной машине. VirtualBox — это виртуализатор общего назначения, доступный для Linux, Mac OS и Windows. Это отличный способ познакомиться с Ubuntu независимо от вашей текущей операционной системы.![]()
Мы расскажем о самом быстром способе начать работу с VirtualBox, а затем рассмотрим некоторые дополнительные параметры конфигурации.
Примечание: Это руководство также будет работать для других дистрибутивов, так что попробуйте его и с некоторыми разновидностями Ubuntu!
Чему вы научитесь
- Как установить и настроить VirtualBox
- Как импортировать образ Ubuntu
- Как запустить виртуальный экземпляр Ubuntu Desktop
- Дополнительные параметры конфигурации
Что вам понадобится
- Компьютер с доступом в интернет!
Продолжительность: 3:00
Образ Ubuntu можно скачать здесь. Обязательно сохраните его в запоминающемся месте на вашем ПК! В этом руководстве мы будем использовать выпуск Ubuntu 20.04 LTS.
Продолжительность: 5:00
В Mac OS или Windows вы можете загрузить VirtualBox со страницы загрузок здесь.
Эта страница также содержит инструкции по загрузке VirtualBox для Linux.
Однако в Ubuntu вы можете найти VirtualBox, просто выполнив поиск в приложении Ubuntu Software.
После завершения установки запустите VirtualBox.
2. Создайте новую виртуальную машину
Нажмите New , чтобы создать новую виртуальную машину. Заполните соответствующие данные:
- Имя: Если вы включите слово Ubuntu в свое имя, Тип и Версия будут обновлены автоматически.
- Папка машины: здесь будут храниться ваши виртуальные машины, чтобы вы могли возобновить работу с ними в любое время.
- Тип: Linux
- Версия: Ubuntu (64-разрядная версия)
На следующем экране вы сможете выбрать объем оперативной памяти вашего основного ПК, к которому будет обращаться виртуальная машина. Обязательно оставайтесь внутри зеленой полосы, чтобы вы могли продолжать работать вне виртуальной машины, пока она работает!
Примечание: Если вы выберете экспертный режим, вам будет предоставлена возможность установить все эти параметры за один раз.
Полезно для будущих настроек!
Пока можно использовать настройки по умолчанию.
После этого вы можете выбрать, сколько места на жестком диске будет использовать ваша виртуальная машина.
Тип жесткого диска зависит от того, используете ли вы VirtualBox с другим программным обеспечением для виртуальных машин. Пока мы можем оставить это как VDI.
Затем вы можете выбрать, будет ли жесткий диск распределяться динамически (до предела, который мы установим на следующем экране), заполняя его по мере необходимости. В противном случае мы можем сказать ему выделить весь объем памяти с самого начала. Это улучшит производительность, но может занять лишнее место. Мы оставим его динамически выделенным для этого урока.
Наконец, вы можете установить максимальный объем памяти, к которому может получить доступ ваша виртуальная машина.
После этого нажмите Create для инициализации машины!
3.
Установите свой образНажмите Start , чтобы запустить виртуальную машину. Вам будет предложено выбрать загрузочный диск. Используйте значок файла, чтобы открыть селектор оптических дисков, и нажмите Добавить , чтобы найти файл .iso
Выберите образ диска, который вы хотите использовать, затем нажмите Start в окне запуска диска.
Примечание. Если вы закроете это окно перед выбором образа, вы все равно сможете сделать это из меню «Устройства» в верхней части окна виртуальной машины. Выберите Devices > Optical Drives > Choose/Create a disk image…
Рабочий стол Ubuntu теперь должен загружаться и отображать меню установки.
После этого вы можете следовать обычному процессу установки Ubuntu Desktop.
Но есть еще кое-что, о чем нужно поговорить, прежде чем мы двинемся дальше!
4. Изменение разрешения окна
Вы заметите, что по умолчанию VirtualBox отображается только с разрешением 800×600.
Но если щелкнуть правой кнопкой мыши значок Окно на мониторе в нижней части экрана и выбрать Виртуальный экран 1 , появится еще много доступных опций, но они будут выделены серым цветом.
Чтобы решить эту проблему, нам нужно изменить некоторые настройки. Закройте окно и выберите Выключите машину .
Вернитесь в окно менеджера и выберите Настройки .
Затем перейдите на вкладку Display .
Измените настройку графического контроллера на VBoxSVGA и нажмите OK (игнорируйте предупреждение).
Теперь перезапустите виртуальную машину.
После запуска Ubuntu вы сможете выбрать все доступные разрешения в меню виртуального монитора или просто изменить размер окна, чтобы настроить отображение.
Это конец основного урока. Поздравляем, теперь у вас есть Ubuntu, работающая на виртуальной машине!
Ниже приведены некоторые дополнительные параметры, если вы хотите продолжить изучение VirtualBox.
5. Установка гостевых дополнений
Guest Additions — это дополнительное программное обеспечение, которое открывает некоторые дополнительные функции VirtualBox. Это включает в себя лучшую интеграцию между вашей виртуальной машиной и хост-машиной, а также улучшенную поддержку видео, которая включает параметры разрешения экрана при использовании VMSVGA.
Чтобы установить гостевые дополнения, вам необходимо завершить установку Ubuntu на виртуальной машине и загрузиться на рабочий стол.
Оттуда выберите Devices > Insert Guest Additions CD .
Вам будет предложено загрузить файл образа диска гостевых дополнений.
Нажмите Скачать .
Затем нажмите Вставить .
Диск появится внутри вашего виртуального рабочего стола, и вам будет предложено запустить программное обеспечение.
Введите пароль для установки.
После завершения вам потребуется перезапустить виртуальную машину, чтобы новые функции вступили в силу.
Закройте машину, но до запустите ее снова, вернитесь в меню Настройки и измените Графический контроллер обратно на VMSVGA и Включите 3D-ускорение . Это повысит производительность вашей виртуальной машины за счет использования 3D-оборудования вашего ПК и позволит вам изменять разрешение рабочего стола!
Еще одна открываемая функция — общий буфер обмена, который можно активировать в Устройства > Общий буфер обмена . Это позволит вам копировать и вставлять данные между виртуальными и хост-машинами, что полезно, когда вы хотите копировать выходные данные с одного устройства на другое.
6. Исследуйте Virtual Box
Как вы, наверное, заметили, в VirtualBox доступно множество дополнительных параметров конфигурации, и мы только поверхностно коснулись их.
VirtualBox позволяет создавать и настраивать несколько виртуальных машин, поэтому не бойтесь создавать новые экземпляры Ubuntu, чтобы опробовать различные конфигурации системы и хранилища для точной настройки производительности.

