Как сделать собственную сборку linux
Cоздание своего дистрибутива Linux с помощью Remastersys
Содержание
ВВЕДЕНИЕ
Прежде чем делать свою сборку, Вы должны определить цель и задачи своего творения. Иначе сборка может не получить своё предназначение в этом мире и остаться малоизвестной.Итак, цели и задачи определены и Вы решились сделать сборку своей системы.
Для начала Вы должны либо в Virtualbox (или в другой виртуальной машине), либо у себя на компьютере установить операционную систему со всеми настройками, со всеми программами, которые считаете нужными иметь в Вашей сборке.
Теперь, когда всё настроено и установлено, будем создавать свою сборку. Для этого нам в первую очередь необходимо свободное место на разделе с папкой /home не менее 6 ГБ.
Для создания сборки есть несколько инструментов. Мы будем говорить о Remastersys, который позволяет создать полноценную сборку даже не очень продвинутому пользователю.
Все действия дальше описаны для Ubuntu, но подходят для всех Debian совместимых дистрибутивов.
1. УСТАНОВКА
2. ПЕРВЫЕ ШАГИ
3. РАСШИРЕННЫЕ ВОЗМОЖНОСТИ
mksquashfs
SYNTAX:mksquashfs source1 source2 … dest [options] [-e list of exclude dirs/files]
Filesystem build options:
-comp select compression
Compressors available:
gzip (default)
lzo
xz
то всё в порядке и использовать опцию -comp xz можно смело.
4. ЗАГРУЗОЧНОЕ МЕНЮ
5. ОЧИСТКА СБОРКИ ОТ «ЛИШНЕГО»
Прежде всего уточню, что речь пойдет не об удалении приложений из сборки, а об удалении временных файлов из кэша, коих великое множество на сотни мегабайт.
Перед очисткой системы установите пакет ubiquity-frontend-gtk.
В первую очередь воспользуемся стандартными инструментами очистки системы. Открываем терминал и пишем:
Первая команда автоматически удалит все неиспользуемые пакеты.
Вторая команда удалит скачанные файлы пакетов в архиве.
Теперь воспользуемся программой Synaptic и удалим все ненужные настройки, оставшиеся после удаленных пакетов. Открываем Synaptic. В открывшемся окне внизу выбираем группу фильтров «Состояние».
Выбираем фильтр «Не установленные (остались файлы настроек)», выделяем все пакеты, попавшие в этот фильтр. Правой клавишей мыши на выделенном выбираем в меню «отметить для полного удаления» и жмем «Применить».
Здесь же в этой группе фильтров удалите пакеты под фильтром «Установленные (авто удаляемые)«
Если фильтры «Не установленные (остались файлы настроек)» и «Установленные (авто удаляемые)» отсутствуют, значит система уже прошла чистку и под данные фильтры ничего не попадает.
После удаления языковых файлов рекомендую переустановить пакет locales, иначе возникнут проблемы при установке языковых пакетов в сборке. Переустановка вернет лишь настройки локалей с возможностью установки других языков. Никаких языковых пакетов скачиваться не будет.
Следующим этапом будет очистка кэша программ. В корне системы есть папка /var. В ней программы оставляют свои временные файлы, нужные до поры до времени. Дальше я перечислю папки, в которых можно удалить все файлы, не причинив вреда системе, и тем самым уменьшить размер сборки.
6. СОВЕТЫ И РЕКОМЕНДАЦИИ
В этой главе описаны советы и рекомендации по созданию своей сборки, которые сложились у меня, как правила, после многочисленных опытов. Надеюсь, они Вам пригодятся в создании своих сборок.
Удачи! И пусть мир узнает Ваши творения!
MNorin.com
Блог про Linux, Bash и другие информационные технологии
Как собрать свой дистрибутив Linux
Собрать свой дистрибутив операционной системы на базе ядра Linux и свободного программного обеспечения можно несколькими способами. Среди них есть как сложные, так и очень простые. Давайте рассмотрим несколько способов разной степени сложности и, может быть, вы для себя какой-то из этих способов выберите, чтобы собирать образы операционных систем для дома или работы. Некоторые способы даже не требуют каких-то более или менее глубоких знаний о Linux.
Linux From Scratch (LFS)
Самый суровый способ. LFS представляет из себя сочетание книги и загрузочного диска для сборки собственной операционной системы на базе ядра Linux полностью с нуля из исходных кодов. Отлично подходит для изучения операционных систем GNU/Linux, но абсолютно не подходит для начинающих. Очень не рекомендую тем, кто еще не умеет пользоваться Linux’ом. И очень рекомендую тем, кто хочет более плотно изучить что и как работает в операционных системах на базе ядра Linux и готов на это потратить какое-то время. Официальный сайт — http://www.linuxfromscratch.org/.
Для тех, кто освоил первую часть,- сборку основной части операционной системы,- есть вторая часть, которая называется Beyond Linux From Scratch (BLFS). Из недостатков этого способа можно отметить, пожалуй, только количество времени, которое потребуется.
simple-cdd
Гораздо менее суровое средство сборки своего дистрибутива на базе Debian. Позволяет достаточно быстро собрать свое установочный образ, включающий необходимый набор пакетов. Есть официальная страничка в вики Debian, но она, похоже, достаточно стара и давно не обновлялась. Это один из самых простых и быстрых способов собрать свой дистрибутивный образ, но придется предварительно прочитать официальный How-To и посмотреть страницу руководств.
SUSE Studio
Один из наиболее простых способов собрать собственную операционную систему на базе ядра Linux и свободного программного обеспечения. Если быть более точным, то это возможность собрать свой потомок OpenSUSE или SUSE Linux Enterprise. Для сборки своего дистрибутива надо просто зарегистрироваться на сайте http://susestudio.com. Для хранения образов дается 15 гигабайт. Вкратце сборка своего дистрибутива выглядит так:
Более подробно расписывать не буду, на сайте всё очень просто и понятно. SUSE Studio позволяет создать следующие типы образов:
Кроме того, на сайте есть галерея уже готовых операционных систем, в которой можно выбрать готовую конфигурацию и изменять уже ее.
Ubuntu Builder
Программа для сборки дистрибутива на базе Ubuntu. Собственно, получится обычная Ubuntu нужной конфигурации. Проект закрылся 10 марта 2014 года, поэтому сложно его рекомендовать к использованию. Если есть желание с ним ознакомиться, это можно сделать здесь. Там же указана команда для подключения репозитория, из которого можно установить пакет ubuntu-builder. Если не заметили, то вот она:
Вообще это был достаточно известный проект в свое время. Жаль, что закрылся.
Novo Builder
Еще одна программа для сборки дистрибутива, которую надо устанавливать. Устанавливается она при помощи скрипта, который можно взять здесь. Скрипт сам добавит репозиторий и поставит пакеты. Это, пожалуй, лучшая на данный момент программа для сборки дистрибутива на базе Ubuntu по простоте использования. И рассказать-то больше особо нечего, достаточно поставить и посмотреть. Всё интуитивно понятно.
В общем, если хотите собрать свой специальный дистрибутив, средств существует достаточно, нужно пробовать, смотреть, что вам больше подойдет и что интереснее. Если знаете еще какой-то способ сборки своей операционной системы — делитесь в комментариях
Как я пришел к созданию своей сборки Linux для дома
На скриншотах фото результата: Система готовая из коробки не только к большинству типичных задач, но и способная запускать современные игры, причем и некоторые те которые через базовый Wine (средство запускаWindows приложений в Linux) не запускаются.
Предполагаемая целевая аудитория:
*Пользователи, которых от перехода удерживают 2-3 любимых игры которые никто не собирается портировать с Win32.
*Будет интересно также обычным пользователям. Система разрабатывается исходя из мнения сделать наиболее дружелюбную версию Линукс к ним.
*Скорее всего, будет интересен всем кому не понравилось Unity в Ubuntu и кто любил Gnome2.
*Возможно будет интересно небольшим организациям без требований к определенной рабочей среде.
*Текущим пользователям UNIX-систем (Ubuntu и т.д.), которым надоело мучиться с доустановкой того ПО и русского языка — которое по идее должно идти в комплекте с системой.
Сначала немного истории, с чего все началось.
Я впервые познакомился и перешел на линукс наверное с диска с Ubuntu 7.04, правда позже его выхода.
Да и перейти раньше мешал PCI Win-modem работавший исключительно на XP (что помешало использовать Mandrake 9.2 в свое время). Чуть позже на линукс перевел свой сервер, а затем и второй. Дома же от винды окончательно отказаться помогла смена видеокарты на Nvidia.
Какое то время решал любые проблемы переустановкой системы и установкой другой версии системы или сборки.
Во времена 9.10 начал ставить сборку клиентам и уже считал что она является отличнейшей достойной заменой XP и Vista.
Тогда же я узнал что некоторые игры надо запускать с ключом «-opengl «, и тут обратил внимание что каждый раз клиентам надо ставить в основном один набор программ + настраивать набор wine чтобы шли некоторые нужные им игры, как правило 1-2 игры.
Как все знают, в официальных Убунту любят эксперименты над пользователями, а не стабильность, когда все элементы интерфейса работают и находятся в четко известных позициях и не приходится выяснять по телефону в каком углу экрана или в какой папке что у человека установлено.
С каждым релизом Ubuntu это раздражало все больше и больше но я держался. Даже когда кнопки закрытия окошек переместили влево и сделали полосу прокрутки и измерения размеров такой тонкой, что нужна была снайперская точность… Я уж не говорю про то, что для того чтобы включить wifi, или vpn, или l2tp — надо было скачать плагин.
Разумеется это вываливалось в установку системы человеку все большим объемом времени и иногда несколько «походов». И когда это время дошло до пары суток, у меня просто не осталось выбора кроме как создать собственную сборку, призванную решить большинство проблем и облегчить установку всего необходимого людям хотя бы до 15 минут + установка видеодрайвера. На других сборках где wine хотя бы был — работало причем весьма немного игр и в основном родные (Native). В сборках же предназначенных для игр на линукс, была вечно какая то неинтересная, практически никому не нужная солянка вроде 10 версий Tux Racer, Quake III Arena, и разумеется не было реальных способов запускать игры класса ААА с приемлемыми параметрами.
Первое время я собирал на базе 10.10, ибо МАТЕ еще не было, а Gnome2 еще какую никакую актуальность во времена 11.04-11.10 сохранял.
Выглядело это приблизительно вот так:
«Сборки», а по сути бэкапы, я делал Acronis, который совсем для этого не годится — и сборки работали исключительно с одной видеокартой — Nvidia =), (как следствие, мучиться все равно приходилось с теми, у кого карта не Nvidia). Больше всего в то время я проклинал ATI. Позже освоил более профессиональные инструменты и намного улучшил подход к этому делу. (Remaster)
Мне лично удобнее всего проверенный «веками» аскетичный и простой интерфейс Gnome2/MATE поэтому была выбрана эта оболочка. Здесь есть все что необходимо для работы и ничего лишнего. А кому нужно лишнее — так она прекрасно настраивается, и в крайнем случае люди сами могут ее заменить.
Почему Mint был выбран в качестве новой базы? Пересоздавать сборку и донастраивать ее на его базе существенно проще, хотя я мог выбрать и любую другую. Mint/Ubuntu/Debian на данный момент — самые распространенные, и руководств если что, к ней будет больше чем к менее популярным ОС. Причем по заверениям авторов Mint способен запускать 99.9% программ для Ubuntu Linux.
Изначально система разрабатывалась для облегчения настройки и установки компьютеров людям, которым нужно их отремонтировать, для того чтобы максимально быстро настраивать компьютеры и приводить их в полную готовность к задачам клиентов. Уже много лет это единственный мой хлеб, и чтобы люди были довольны, а также чтобы не работать круглые сутки + докачка всяких обновлений для чужих людей — процедуру следовало многократно упростить.
Сейчас система опирается на репозитории Linux Mint 15 и Ubuntu 13.04 как на стабильные. Хотя опционально доступны пакеты из 13.10 и 14.04 а также из репозитариев ppa wine, pcsx2…
Если вам нужна работа Windows ААА-игр — боюсь моя сборка пока что единственная которая может это предложить с большим успехом чем дефолтный Wine или Wine от Etersoft. Есть конечно и другие решения с Wine, но я пока аналогов с целью «для дома и для запуска win32 игр» — не видел.
Я не говорю что это идеальное решение. Можно лучше, и если будет возможность — сделаю. (кстати хочу заметить, начиная с версии 1.5 wine компилить теперь нужно на 32-битной машине)
Обычные программы работают так же, как и в обычном wine, я мало занимаюсь их тестированием, в основном уделяю время проверке игр и иногда даже отчитываюсь или создаю отчеты в winehq.org, но там я присматриваю постоянно всего за парой приложений.
Частично меня вдохновила и эта статья на хабре, а также факты про одну мелко-мягкую компанию.
Лично я считаю что Линукс можно использовать для решения разных задач, и игры тоже ничем не хуже. OpenGL дает все возможности которые есть даже в DX 11.2.
Цели работы выглядят так:
*Привлечение простых пользователей в мир GNU/Linux, привыкших к Windows-программам и играм.
*Уменьшение «порога вступления» в систему, т.е. — предоставление настроенной системы для пользователей, желающих познакомится с Linux, но *не обладающих знаниями для самостоятельной настройки.
*Возможность развернуть полноценную систему полностью без интернета, или в сильно ограниченных модемом условиях.
*Качественная взаимосвязь с родительским дистрибутивом Linux Mint, а значит и взаимосвязь c Ubuntu, с её огромным сообществом. (следовательно, и возможность использования всей периферии которая в них работает). Напомню Mint обещает работу 99.9% программ из Ubuntu.
*По возможности полные русские версии доступных программ.
*Через заполнение wine-префикса обеспечить возможность установки не только базового программного обеспечения, но и полную поддержку различных Windows-приложений, в том числе требовательных игр.
*Предустановка популярных в домашнем использовании программ, а также протоколов интернет провайдеров (l2tp).
*Доступен рабочий прототип проекта (только для 64-битной архитектуры, 32-битный не планируется), возможны проблемы с работоспособностью на некоторых системах.
Скачать можно здесь: (Авторская раздача)
*Предыдущую версию и урезанную до 1.8гб (только для проверки игр) версии можно найти тут же.
*Для проверки годятся заранее установленные игры в большинстве случаев. Префикс также можно скачать отдельно.
*Релиз содержит ряд исправлений от меня и активистов.
*Работает группа вконтакте, посвященная МАТЕ и сборке.
*Почти готовы к выпуску — польская и английская версия сборки.
*Сейчас разбираю две разных своих же системы и выясняю почему на них работают разные игры.
*Коллекция простых патчей пока неполная (HD патчи, sh стартеры и т.п. мелочь почти не занимающая места, не кряки).
*Работают не все приложения которые могут и должны работать (желательно из коробки и не ломая имеющиеся игры)
К примеру, мне удалось заставить работать Might and Magic X Legacy, с большим числом лишних изменений, отличается между рабочей и нерабочей сборкой wine — лишь system.reg.
Текущие задачи:
*Улучшение имеемой системы и упрощение по возможности ее использования и установки.
*Сборка c двумя ядрами, новым 3.12 и старым 3.5 (для совместимости)(решено).
*Скрипты установки новейших драйверов для Nvidia (331) а также Radeon Legacy без докачки из интернета (решено).
*Преднастроенное Wine с возможностью запуска не менее 70% игр без докачки из интернета и донастроек (решено)
Результат проекта:
*Полноценная система для настольных ПК с поддержкой win32 api и возможностью загрузки с внешних носителей.
*Возможность запуска WIn32 приложений и игр прямо с LiveDVD (насколько позволят открытые драйверы).
*Все наработанные изменения будут предоставлены проекту Mate и Mint.
*Проект смогут использовать люди для установки на любые домашние компьютеры вместо систем известного монополиста.
Пример работы:
CryENGINE 3 3.4.4 SDK на Linux — полностью рабочий и из коробки. С редактором.
Насколько я знаю я первый кто запустил CryENGINE 3.4.5+editor, Gears of War 1, Bionic Commando которые были «мусором» в базе Winehq.org
Видео GameSDK UDK 2013 —
https://www.youtube.com/watch?v=C5m5I96hMuc
На видеоканале есть довольно большое число запусков игр. Записи делались Gtkrecordmydesktop.
Приветствуется любая помощь, как и спонсорская, так и идеи или патчи и поддержка любого рода.
P.S.
Людям нужны игры, и именно благодаря играм становились популярными компьютеры и операционные системы, в Valve, Blizzard, и не только — там это отлично понимают.
Людям всегда нужна возможность обеспечить похожий интерфейс — как тот, к которому они привыкли, а также, хотя бы небольшое число привычного ПО.
И еще. Люди не должны вообще сталкиваться вот с такими проблемами как в фирменной, официальной и одобренной системе, каким бы не был уровень их знаний. Все относительно простые проблемы любым способом должны быть решены заранее.
P.P.S.
Хотелось бы чтобы в Wine работу Dx10=>Ogl довели наконец до рабочего уровня. Если хотя бы 1 человек прочев статью захочет и сможет этим заняться, я уже буду рад. И я так же рад что есть люди которые уже пользуются моей сборкой больше года. Если кто то качает и ставит благодарности из года в год, значит наверное я не зря это делаю. Если приложить немного больше усилий то продукты от одной известной софтовой компании больше требоваться не будут.
Данная статья не подлежит комментированию, поскольку её автор ещё не является полноправным участником сообщества. Вы сможете связаться с автором только после того, как он получит приглашение от кого-либо из участников сообщества. До этого момента его username будет скрыт псевдонимом.
Создаём свою сборку Linux для одноплатников
Используя сервис cusdeb.com/ru создадим свою сборку без лишнего
Чат в Телеграм по Raspberry Pi и др. компьютерами: @proARM
Дубликаты не найдены
@moderator, реклама платного сервиса
Обзор на сайт предоставляющий платные услуги в интернете залили сюда вы. Вы предоставили ссылку на сайт с данными платными услугами. Этими услугами можно воспользоваться бесплатно лишь частично, чтобы получить результат нужно потратить деньги. А зачем вам услуги без результата ваших трудов по использованию этих услуг? Вы не обозреваете конечный продукт услуги, вы обозреваете сайт которые предоставляет бесплатные услуги с оплатой для получения результатов этих услуг. Ваш ролик, который вы залили с вашими ссылками и самим обзором на данные услуги ЯВНО направленны на привлечение внимания к данному сайту в рамках привлечения людей для использования этих услуг платно т.к. без оплаты они все равно не получат результата услуг. Обзор на платный ресурс направлен на потенциального покупателя, а не потребителя, который решит воспользоваться сервисом, но для получения результатов ему нужно будет «заплатить». Итого это реклама.
Linux From Scratch, собрать можно всё, что душеньке угодно.
@armlab, а зачем вообще свои сборки создавать, что можно изменять и для каких целей?
может быть можно пару примеров?
в контексте одноплатников
download java installer?
CusDeb: кастомизация Debian Buster для Orange Pi Zero
Всем привет! Линейка одноплатных компьютеров Orange Pi расширяется в CusDeb и следующим устройством стал Orange Pi Zero. Теперь CusDeb позволяет кастомизировать Debian 10 «Buster» для этой модели одноплатника.
А можете напомнить, что такое Orange Pi Zero?
Конечно. Orange Pi Zero – это китайский одноплатный компьютер, который был анонсирован в ноябре 2016-го, но до сих пор остается популярным среди разработчиков за счет того, что является достаточно мощным и при этом дешевым устройством.
Может показаться, что производитель одноплатников выпустил модель под названием Zero, чтобы составить конкуренцию Raspberry Pi Zero, но устройство оказалось совершенно другим и, как следствие, предназначенным для решения других задач. К примеру, в отличие от Raspberry Pi Zero у Orange Pi Zero нет HDMI, но есть Ethernet.
Стоит искать подвох в его дешевизне?
Определенно. Главным недостатком любых моделей Orange Pi на протяжении долгого времени оставалась хреновая поддержка производителем. К примеру, подобного рода устройства выпускаются на рынок, как правило, в сопровождении «эталонной» Linux-подобной операционной системы, которая поддерживает все заявленные фичи устройства. Затем проходит немного времени и устройство начинает морально устаревать, т.к. производитель забивает на продукт, не обновляет операционную систему и, вероятно, фокусируется на чем-то другом.
Сложившуюся ситуацию с переменным успехом исправляют два проекта – Armbian и CusDeb. Armbian выпускает универсальные образы на базе Debian-подобных дистрибутивов, которые патчатся с целью предоставить пользователям наиболее полную поддержку того или иного устройства. Недостатки и достоинства здесь – две стороны одной медали.
* За универсальность приходится «платить» – один образ поддерживает более одного устройства, за счет чего он становится достаточно неповоротливым, а куча предустановленных компонентов начинает негативно влиять на решаемую задачу.
* Пропатченные ядра, с целью выжать из той или иной железки максимум, могут вести себя менее стабильно, чем штатные ядра дистрибутивов.
CusDeb, в свою очередь, старается упростить установку на одноплатники «ванильных» версий Debian и производных от него дистрибутивов, что положительно сказывается на стабильности и безопасности полученного решения. Более того, CusDeb предлагает создавать т.н. проблемно-ориентированные образы операционных систем, т.е. те, которые содержат только необходимый набор компонентов для решения конкретной задачи. «Ванильный» путь CusDeb’а, очевидно, является его самым главным недостатком – не все компоненты устройства могут поддерживаться.
А что предлагает Debian Buster на Orange Pi Zero?
Debian, как всегда и везде, предлагает стабильность и большую пакетную базу, а также выпуск обновлений на протяжении 5 лет (3 года – стандартная поддержка + 2 года – расширенная). В Debian Buster входит ядро Linux 4.19.
Заметьте, что Buster сейчас находится на стадии заморозки и тестирования. Его выход запланирован на лето.
А есть что кроме Debian’а?
Да. Напомню, что в основе CusDeb’а лежит инструмент под названием Pieman, который является свободным и открытым программным обеспечением. Поддержка новых операционных систем и устройств сначала добавляются в Pieman, а только потом прокидываются в CusDeb, что, в свою очередь, иногда приводит к тому, что CusDeb слегка отстает по возможностям от Pieman’а. К примеру, сейчас у вас есть возможность подготовить образ операционной системы на основе Kali Linux для Orange Pi Zero и получить так называемое «leave behind» устройство – устройство, которое может скрыто и незаметно собирать данные, но если будет обнаружено то 1) вам его будет не жалко потерять из-за копеечной стоимости и 2) никто и никогда не поймет, чем оно там вообще занималось.
Могу ли я чем-то помочь?
Можете. Скажите, какие еще устройства вы бы хотели видеть в CusDeb и, самое главное, расскажите пожалуйста о проектах, в которых вы используете одноплатники.
CusDeb: Orange Pi PC Plus, обновления по воздуху и тестирование образов ОС в эмуляторе
Всем привет. С нашего последнего поста в команде разработчиков сервиса cusdeb.com произошло много событий, о которых пришло время рассказать.
CusDeb – это инструмент для кастомизации образов операционных систем онлайн, а мы – небольшая, но гордая команда его разработчиков. Этот инструмент начинался с поддержки нескольких моделей однопалатного компьютера Raspberry Pi и двух выпусков операционной системы Debian – Jessie и Stretch. Мы рассказали о CusDeb на Пикабу, получили много отзывов различной степени ценности, взяли на себя обязательство добавить Orange Pi и. пропали. Но ненадолго. Сегодня я рад сообщить о том, что CusDeb поддерживает кастомизацию Debian 10 «Buster» для Orange Pi PC Plus. Линейка Orange Pi в CusDeb’е будет расширяться, поэтому нам необходимо узнать, какие платы вам нужны в первую очередь и в каких проектах вы их используете или планируете использовать.
Примечательно, что некоторые из вас даже спустя несколько месяцев в комментариях под нашими постами напоминали об обещании добавить поддержку Orange Pi в CusDeb. Таким образом, ваша поддержка вкупе с нашей упоротостью помогли добить начатое. Спасибо!
Несмотря на то, что Pieman является сердцем CusDeb’а и разрабатывался исключительно для этого сервиса, в CusDeb прокинуты еще не все возможности Pieman’а. К одной из таких возможностей относится генерация образов на основе Alpine Linux. Если вам необходима система, которая будет загружаться на вашем Raspberry Pi за 3 секунды, тогда обратите внимание на Alpine. Pieman с недавних пор поддерживает последнюю версию (3.9) этой операционной системы. В планах добавить возможность создания образов на базе Alpine для Orange Pi PC Plus.
Pieman’у был посвящен на Пикабу отдельный пост.
А теперь, когда я рассказал о главном, хочу поделиться другими новостями.
Это как раз то, что отсрочило добавление поддержки Orange Pi в CusDeb как минимум на пару месяцев. Дело в том, что наш сервис засветился в The MagPi Magazine, официальном журнале Raspberry Pi, после чего с нами связались разработчики Mender’а, системы OTA-обновлений для встраиваемых устройств с открытым исходным кодом, и предложили объединить наши силы с целью добавить в CusDeb возможность генерации образов, которые возможно было бы в будущем обновлять «по воздуху». Можно конечно вручную перезаписывать SD-карту, но это не очень удобно если у вас более одного устройства для обновления. Также можно было бы подключаться к целевому устройству через SSH и обновлять необходимые пакеты, но после установки новых версий пакетов невозможно гарантировать, что удаленное устройство не превратится в кирпич. С Mender’ом же все иначе: образ бьется как минимум на 4 раздела – загрузочный раздел, раздел A (по умолчанию активный), раздел B (по умолчанию пассивный) и раздел для данных. Первые запуски системы до обновления осуществляются с раздела A. Когда прошивка обновляется, ее обновленная версия пишется на раздел B, а затем система перезагружается. Если система загружается с раздела B успешно, то он помечается как активный, а раздел A становится пассивным. В противном случае обновление отзывается, система снова загружается с раздела A и устройства опять оказывается в строю, даже несмотря на то, что обновление оказалось неудачным.
Пока CusDeb поддерживает генерацию Mender-совместимых образов и обновлений только на основе Raspbian, но мы планируем добавить такую возможность для Ubuntu, чтобы предоставить пользователям и разработчикам альтернативу операционной системы для встраиваемых устройств Ubuntu Core, в которой используется проприетарная система OTA-обновлений.
Тестирование 64-битных образов на основе Ubuntu в эмуляторе
Некоторые пользователи CusDeb’а писали нам о том, что им необходим инструмент для тестирования образов. Дело в том, что они хотят использовать сервис, но их устройство может находиться на пути домой из Китая или Великобритании домой, и этот путь может занять 2-3 недели. Мы подумали, что можно сделать и добавили возможность тестирования образов в эмуляторе прямо на сайте. Это работает примерно так:
Данная возможность пока доступна только для образов на основе 64-битной версии Ubuntu для Raspberry Pi 3, но если фича окажется востребованной, мы расширим список поддерживаемых операционных систем и устройств. Кстати, данную возможность реализовали при нашей поддержке двое студентов Ростовского колледжа связи и информатики. Это стало их дипломным проектом.
Это первый за долгое время пост о CusDeb на Пикабу. Здесь я попытался вкратце рассказать о трех наиболее значительных вещах, над которыми мы работали последнее время:
* добавление первой модели Orange Pi, которой стала Orange Pi PC Plus и с которой начнется поддержка этого одноплатника в CusDeb;
* интеграция обновлений по воздуху на основе Mender;
* тестирование образов операционных систем в эмуляторе для тех, кто ждет свое устройство издалека.
Впереди еще много вкусных фич. К примеру, совсем скоро появится возможность создавать кастомные сборки Kali Linux, звезды сериала Mr. Robot.