Как собрать кастомный образ для Raspberry Pi с помощью CusDeb

CusDeb — это веб интерфейс для создания кастомизированных образов операционных систем для различных моделей одноплатных компьютеров. В этой заметке я расскажу, как я создал  минималистичный, кастомный образ Raspbian Stretch c NodeJS и супервизиром для Raspberry Pi 2.

Я авторизовался на cusdeb.com, открыл панель управления и нажал кнопку СОЗДАТЬ НОВЫЙ образ.

15146296995a476a432bddf.png

На экране “Инициализация” я выбрал целевое устройство Raspberry Pi 2 и дистрибутив Raspbian Stretch, затем нажал кнопку “Далее”.

15146297265a476a5eea38e.png

Мне нужны пакеты supervisor и nodejs. Я воспользовался поиском по списку и быстро добавил эти два пакета в образ, при этом 21 зависимых пакетов добавились автоматически. В секции “Статистика” обновились цифры, общее количество пакетов в образе - 162. Если кому интересно узнать, какие пакеты являются базовыми - дайте мне знать, я напишу список в комментариях.

15146297405a476a6cdb0ea.png

На следующем экране, я нашёл root в списке пользователей, нажал на имени и в открывшемся диалоге задал пароль суперпользователя.

15146297555a476a7baca01.png

Затем я нажал кнопку “+ добавить пользователя” и создал пользователя denismosolov с паролем.

15146297805a476a940e7c3.png

Кастомизация образа завершилась на экране “Конфигурация”, где я задал имя хоста и часовой пояс, затем нажал кнопку "Собрать"

15146298565a476ae0e4386.png

Сборка заняла 10 минут. Я дождался окончания, перешёл в панель управления и скачал образ. Образ весил 148 мегабайт. Я записал на SD-карту, вставил в Raspberry Pi 2 и всё успешно заработало.

b57ae4.jpg

На мой взгляд, создание собственного, кастомизированного образа интереснее, чем использование готового образа. В образах для Raspberry Pi, которые можно скачать в сети, присутствует множество программ, которые не нужны для решение моей конкретной задачи. Я использую Raspberry Pi 2 для запуска одного единственного приложения на NodeJS. Мне незачем ставить образ Raspbian, который занимает 1.5 Gb на SD-карте. Лучше я соберу свой собственный минималистичный образ с помощью CusDeb.

Я могу быть полезен, если вам нужен кастомизированный образ на базе Linux для Raspberry Pi

Комментарии:

Anton7
Любопытно. Надо попробовать. А что кроме Jessie можно выбрать?
denismosolov
Пока только Debian Jessie. А какие ОС вам бы хотелось? У меня есть идея, как добавить Debian Stretch и Ubuntu Mate.
Anton7
Ну Wheezy например. Репозитарии ведь есть.
denismosolov
Думаю, можно попробовать подкрутить github.com/drtyhlpr/rpi23-gen-image и собрать Wheezy. Сложность будет с тестированием. Jessie уже многие собирали этим скриптом и тестировали.
Prikum
Очень бы хотелось, что нибудь из семейства Ubuntu. Спасибо за статью.
d6f75c50b3
А на сколько это безопасно собирать таким образом образ? Ведь создатели сервиса могут добавить в этот образ бэкдор?
denismosolov
Я очень надеюсь, что ни я, не другие создатели сервиса не станем умышленно добавлять бэкдоры в генерируемые образы. Мы ищем способ, как сделать сервис максимально прозрачным и безопасным. Я буду рад, если вы поделитесь своими соображениями по этому поводу. При каких условиях вы бы могли доверять образу, собранному при помощи такого сервиса?
d6f75c50b3
Не знаю на сколько это реализуемо, мне кажется нужная какая-то гарантия, подпись кого-то авторитетного, что использовать собранный образ безопасно — например от Касперского.
denismosolov
Будет трудно упросить Лабораторию Касперского о бесплатной проверке всех собранных образов, но я попробую развить эту идею. А кто ещё может выступить в роли авторитета? Мне на ум приходят две организации: Raspberry Foundation и Linux Foundation.

Для написания комментариев необходимо зарегистрироваться