Raspberry Pi

По сравнению с Raspberry Pi OS и. Армбиан vs. Debian GNU / Linux

По сравнению с Raspberry Pi OS и. Армбиан vs. Debian GNU / Linux
У многих программистов может возникнуть один и тот же вопрос: Armbian - это просто еще одна разновидность Debian GNU / Linux, или это что-то совершенно другое?? В чем разница между ОС Raspberry Pi, Armbian и Debian? В этой статье мы подробно обсудим операционные системы Armbian, Debian и Raspberry Pi, включая сравнение этих различных систем.

Фруктовое пробуждение

В 2012 году Raspberry Pi популяризировал класс одноплатных компьютеров (SBC) для широкой публики. Тогда любой, кто знал об устройствах вроде RouterBOARD от Mikrotik [9] или ALIX Board от PC Engines [11], считался экзотикой. Сегодня невозможно представить повседневное существование без этих мощных мини-компьютеров. Вы можете найти эти устройства повсюду - в маршрутизаторах Wi-Fi, метеостанциях, устройствах домашней автоматизации и приборах для измерения мелкой пыли. Эти устройства работают со специально адаптированными дистрибутивами Linux или BSD, из которых Armbian и RaspberryPi OS являются лишь двумя представителями многих.

«Armbian» - это искусственное слово, которое объединяет слова «ARM» для соответствующей архитектуры процессора RISC [3] и два последних слога «bian» из «Debian».«Это очень ясно показывает, что отличает Armbian от Debian GNU / Linux; в отличие от Debian, Armbian ориентирован и оптимизирован для архитектуры ARM.

Более того, хотя дистрибутив Debian GNU / Linux поддерживает множество аппаратных архитектур, включая ARM7 (32 бит) [4] и ARM8, дистрибутив Armbian ориентирован только на широкий спектр плат разработки на базе ARM. С веб-сайта проекта вы можете загрузить образы распространения для Orange Pi [5], Cubieboard [6],

и Asus Tinkerboard [7], среди других изображений. Cubian [12], форк Debian GNU / Linux для Cubieboard, похоже, больше не поддерживается, поскольку последний выпуск датируется 2014 годом.

Raspberry Pi OS [8] - официальная операционная система Raspberry Pi Foundation [17] для их SBC. Первоначально он назывался Raspbian из-за проекта Raspbian [15], на котором он основан. Позднее Raspberry Pi Foundation добавила к своим изображениям еще один репозиторий пакетов с частично закрытым исходным кодом. Проект Raspbian никогда не публиковал свои собственные изображения, а вместо этого всегда ссылался на изображения Raspberry Pi Foundation. Фонд в конечном итоге добавил свой собственный настольный компьютер и множество других настроек, выходящих далеко за рамки восстановления Raspbian и минимального исправления пакетов Debian. Чтобы четко различать проект Raspbian и производную от Raspberry Pi Foundation, в 2019 году последняя была переименована в Raspberry Pi OS.

По сравнению с Armbian, проект Raspbian и ОС Raspberry Pi придерживаются противоположного подхода: эти дистрибутивы полагаются на десятки участников, чтобы сосредоточиться на единой платформе SBC. Основанный на 32-битной версии Debian GNU / Linux armhf, он предназначен для работы на всех версиях платы Raspberry Pi, но не предназначен для работы с другими SBC ARM. Оборудование Raspberry Pi 3 и 4 может работать с 64-битными операционными системами. Между тем, ОС Raspberry Pi всегда работает 32-битным, за исключением ядра Linux, которое может быть 64-битным ядром. Некоторые пакеты, созданные специально для ОС Raspberry Pi, также доступны для архитектуры Intel (32- и 64-разрядные варианты) и даже могут работать на обычном настольном ПК с Debian GNU / Linux.

В течение ограниченного времени также доступны (неофициальные) образы Debian GNU / Linux для семейства SBC Raspberry Pi [16]. Основное отличие от ОС Raspberry Pi заключается в том, что образы для этих систем Raspberry Pi, способных работать с 64-разрядной ОС (Raspberry Pi 3 и 4), также содержат 64-разрядную ОС (arm64 в Debian); в то время как другие образы работают на 32-битной архитектуре armhf (Raspberry Pi 2) или armel (Raspberry Pi 1 и Zero). Последние два отличаются от пакетов armhf, предоставляемых ОС Raspbian и Raspberry Pi. Исторически сложилось так, что несколько дистрибутивов, включая Debian GNU / Linux и Fedora, выбрали минимальный набор инструкций процессора [19], необходимых для архитектуры armhf. Первая ОС Raspberry Pi была опубликована вскоре после этого и поддерживала все необходимые инструкции ЦП, кроме одной.

Итак, было два варианта: либо 1) использовать гораздо более медленную, но не оптимизированную архитектуру armel, как Debian GNU / Linux все еще делает для Raspberry Pi 1 и 0, или 2) переопределить архитектуру armhf. Debian GNU / Linux не хотел использовать второй вариант, поскольку этот вариант отличался бы от того, что уже было решено и реализовано. Это был момент, когда родился проект Raspbian: разработчик Debian Питер Грин (также известный как tag plugwash в IRC) перекомпилировал все пакеты Debian armhf для процессоров Raspberry Pi 1 (тогда существовал только Raspberry Pi 1) с отсутствует инструкция одного процессора. Это также причина, по которой вы не можете смешивать выпуски Debian 'armhf' и Raspbian 'armhf'.

Размер изображения

Установочные образы, предлагаемые тремя проектами, совершенно разные. Armbian требует, чтобы вы сначала выбрали категорию (например, Общие, Интернет вещей, NAS, Сеть или Рабочий стол) и SBC. Затем вы выберете соответствующее изображение, предлагаемое с помощью 4.9 или 5.9 Ядро Linux для старого стабильного (предыдущий выпуск), стабильного (текущий выпуск) и тестирования (предстоящий выпуск). Размер изображения от 270 до 600 M. Каждый файл изображения можно получить как прямую загрузку или через BitTorrent с веб-сайта проекта. Обновление существующей установки Armbian выполняется с использованием тех же инструкций, что и для поддержки Debian GNU / Linux.

Напротив, возможности Raspberry Pi OS немного более ограничены. Raspberry Pi требует от вас выбора между ОС Lite, ОС с рабочим столом и ОС с рабочим столом и рекомендуемым программным обеспечением. Все образы оснащены 32-битной версией 5.4 ядро ​​Linux. Размер изображения варьируется от 440 M до 3 G. Загрузить изображение можно напрямую, в виде потока данных через торрент или через Raspberry Pi Imager, инструмент настройки на основе графического интерфейса, доступный для Windows, macOS и Ubuntu. Как и в случае с Armbian, обновление существующей версии Raspberry Pi выполняется с использованием тех же инструкций, что и для поддержки Debian GNU / Linux.

Наконец, для большинства устройств, включая большинство устройств ARM, Debian GNU / Linux предлагает множество готовых образов установщика, включая базовую установку, крошечный образ для сетевой установки, различные варианты рабочего стола, которые помещаются на один CD или DVD, live CD и даже набор полных образов CD / DVD. Хотя эти образы не являются готовыми к запуску, они содержат установщик Debian, минимальную ОС, предназначенную исключительно для установки ОС. Живые образы, запускаемые непосредственно из установки только для чтения, также содержат установщик Debian.

Размер изображения составляет от 250 мегабайт до 3 гигабайт. Загрузка изображения возможна как прямая загрузка, так и через BitTorrent. Стандартные команды упаковки Debian используются для обновления существующей установки.

Это не так для операционной системы Raspberry Pi. На самом деле официальных образов Debian GNU / Linux для Rasberry Pi не существует. Однако существуют неофициальные готовые к запуску образы (без образов установщика) с Debian GNU / Linux для Raspberry Pi, созданные теми же разработчиками, что и официальные (но «платные») пакеты прошивки Raspberry Pi в Debian GNU / Linux [16].

Во-первых, вы будете выбирать между ежедневно создаваемыми образами на основе самых последних пакетов Debian GNU / Linux 10 Buster (текущий стабильный выпуск на момент написания этой статьи) или «протестированных» образов, которые гарантированно запускаются. По сравнению с ОС Raspberry Pi, которая предлагает образы, которые работают на всех платах Raspberry Pi, с этим дистрибутивом вы должны выбрать, какая плата Raspberry Pi будет содержать образ. Образы для операционных систем Raspberry Pi 1 и Raspberry Pi 0 (не 0W) примерно одинаковы, поскольку они используют более или менее один и тот же процессор и не имеют компонентов Wi-Fi. В зависимости от этого вы также получаете разные архитектуры ОС; а именно «armel» для Raspberry Pi 1, 0 и 0W; оригинальный "armhf" для Raspberry Pi 2; и arm64 для Raspberry Pi 3 и 4.

Поддерживаемые устройства

Что касается поддерживаемых платформ и устройств, три проекта имеют несколько разные направления. Для Armbian информацию об устройствах для каждого поддерживаемого SBC можно найти на веб-сайте Armbian. К нему прилагается список протестированного оборудования сторонних производителей, чтобы убедиться, что все компоненты оборудования хорошо работают вместе. В целом Armbian поддерживает несколько разных ARM SBC, но не поддерживает SBC семейства Raspberry Pi.

Для ОС Raspberry Pi информация об устройстве для каждой версии Raspberry Pi доступна в Интернете на веб-сайте Raspberry Pi. И, конечно же, Raspberry Pi OS поддерживает все устройства Raspberry Pi.

Для Debian GNU / Linux информация организована в виде вики, отсортированной по архитектуре ОС, со специализированными разделами для более конкретной информации. В настоящее время Debian официально поддерживает девять архитектур ОС (три из которых предназначены для устройств ARM). Debian также собирает свои пакеты и образы установщика для еще 13 архитектур ОС, которые официально не поддерживаются, и работает под маркой «Порты Debian» [21].

Разработка

Кроме того, методы разработки каждого из трех дистрибутивов Linux значительно различаются. Armbian и Debian GNU / Linux - это проекты сообщества. Для Armbian соответствующая страница проекта GitHub является ключевой. Debian GNU / Linux использует собственную распределенную инфраструктуру, которая позволяет разрабатывать дистрибутив Linux со всего мира.

Между тем, Raspberry Pi OS поддерживается некоммерческой организацией Raspberry Pi Foundation в качестве внутреннего проекта. Взносы в фонд Raspberry Pi можно делать через форум Raspberry Pi [20]. Проект Raspbian в значительной степени является перекомпиляцией пакетов Debian, созданных для Raspberry Pi, и, похоже, не имеет собственного большого сообщества. Устаревший веб-сайт Raspbian [16] часто отсылает пользователей к веб-сайтам Debian GNU / Linux или Raspberry Pi Foundation.

Лицензирование

Armbian лицензируется под GPL2, тогда как и Raspberry Pi OS, и Debian GNU / Linux используют разные лицензии, включая GPL и другие. Образ ОС Raspberry Pi «с рекомендованным программным обеспечением» содержит несколько «бесплатных» коммерческих программных пакетов, большинство из которых являются ограниченными демонстрационными версиями. План этих бесплатных пакетов состоит в том, чтобы зацепить пользователей, чтобы они купили это программное обеспечение для других своих компьютеров.

Кроме того, некоторые BLOB-объекты прошивки, необходимые для Raspberry Pi и других SBC ARM, доступны только как «только двоичные», i.е., без исходного кода. В мире программного обеспечения эти программные пакеты считаются «несвободными».Ранее упомянутые неофициальные образы Debian для Raspberry Pi содержат «несвободный» репозиторий Debian, включенный по умолчанию, поскольку он включает программный пакет raspi-firmware.

Пакеты программного обеспечения и установка

Armbian описывает себя как «Легковесный дистрибутив Linux на основе Debian или Ubuntu, специализирующийся на платах разработки ARM.”Он поставляется в виде готового к запуску образа, оптимизированного для устройств флэш-памяти, таких как NAND, SATA, eMMC и USB. И SSH, и DHCP-сервисы активируются с самого начала. Беспроводной адаптер поддерживает DHCP (при его наличии), но эта функция должна быть включена пользователем. Это позволяет легко настроить подключение этой системы к маршрутизатору или создать отдельную точку доступа. XFCE используется в качестве среды рабочего стола [18].

Чтобы увеличить скорость выполнения кода и данных и минимизировать операции ввода-вывода, несколько функций были перенесены для работы в максимально возможной степени из памяти. Например, служба log2ram хранит файлы журналов в памяти и сохраняет их на диск ежедневно и при завершении работы [13]. Дисковые кэши хранятся в памяти в течение десяти минут с использованием опции «commit = 600» в конфигурации каталога в файле / etc / fstab [14].

Как отмечалось ранее, ОС Raspberry Pi нацелена на различные модели Raspberry Pi, которые начинались с довольно ограниченных аппаратных компонентов. Чтобы справиться с этими ограничениями в качестве среды рабочего стола, установка по умолчанию запускает измененный рабочий стол LXDE с именем PIXEL (Pi Improved X-windows Environment Lightweight), который также доступен в Raspberry Pi Foundation для компьютеров с Linux на базе Intel.

По умолчанию существует пользователь с именем «pi» с паролем «raspberry», и служба SSH отключена для этого пользователя. Вы можете включить его для однократной загрузки, отредактировав файл config.txt на первом разделе. Настоятельно рекомендуется сменить пароль сразу после первого входа в систему. Только после этого вы сможете включить службу SSH на постоянной основе, чтобы избежать использования известных паролей по умолчанию, доступных через SSH.

Неофициальные образы Debian Raspberry Pi также поставляются с сетью, включенной по умолчанию через DHCP, но на момент написания этой статьи Wi-Fi не был предварительно настроен. Еще одно отличие образов ОС Raspberry Pi заключается в том, что нет обычного пользователя, только пользователь root без пароля, а вход в систему SSH root отключен. Предварительная установка пароля root или открытого ключа SSH для входа в систему root поддерживается редактированием sysconf.txt »в первом разделе. Эти настройки стираются после того, как они были применены к загруженной системе, чтобы избежать утечки пароля в виде обычного текста.

В настоящее время возможность настройки доступа к сети Wi-Fi находится на стадии планирования. Будущие версии образов ОС Raspberry Pi будут оснащены этой функцией.

Заключение

Сообщество программистов уже много лет обязательно использует Debian GNU / Linux и Armbian в производственной среде; например, CubieTruck в качестве мобильной платформы для совместной работы («мобильное облако»). Устройства с ОС Raspberry Pi использовались на экспериментальной стадии, и мы тоже были очень им довольны. Приятно иметь доступ к таким маленьким, надежным, доступным и мощным машинам. Мы хотим иметь больше времени, чтобы изучить их более подробно.

Ссылки и ссылки

[1] Проект Debian GNU / Linux, https: // www.дебиан.org /
[2] Проект Armbian, https: // www.Армбиан.com /
[3] ARM, Википедия, https: // en.википедия.org / wiki / ARM_architecture
[4] ARM7, Википедия, https: // en.википедия.org / wiki / ARM7
[5] Orange Pi, http: // www.Orangepi.org /
[6] Cubieboard, http: // cubieboard.org /
[7] Tinkerboard, https: // www.asus.com / us / Одноплатный компьютер / Tinker-Board /
[8] ОС Raspberry Pi, https: // www.Raspberry Pi.org / программное обеспечение / операционные системы /
[9] Микротик, https: // mikrotik.com /
[10] Франк Хофманн: Цвергенауфштанд. Das Cubietruck im Alltagstest, RaspberryPi Geek 04/2016, https: // www.малиновый-пи-компьютерщик.de / ausgaben / rpg / 2016/04 / das-cubietruck-im-alltagstest /
[11] Двигатели ПК, https: // www.двигатели.ch /
[12] Кубинский, http: // кубинский.org /
[13] Log2Ram, https: // github.com / azlux / log2ram
[14] Преимущества / недостатки увеличения «фиксации» в fstab, https: // unix.stackexchange.ком / вопросы / 155784 / преимущества-недостатки-увеличения-коммит-в-fstab
[15] Проект Raspbian, https: // www.грубый.org /
[16] Неофициальные образы Debian для семейства Raspberry Pi SBC, https: // raspi.дебиан.сеть/
[17] Фонд RaspberryPi, https: // www.Raspberry Pi.org / about /
[18] XFCE, https: // xfce.org /
[19] «armhf» в Википедии, https: // en.википедия.org / wiki / ARM_architecture # VFP
[20] Форум RaspberryPi, https: // www.Raspberry Pi.организация / форумы /
[21] Порты Debian, https: // www.порты.дебиан.org /

Об авторах

Франк Хофманн работает в дороге - желательно из Берлина (Германия), Женевы (Швейцария) и Кейптауна (Южная Африка) - в качестве разработчика, инструктора и автора для таких журналов, как Linux-User и Linux Magazine.

Аксель Бекерт работает системным администратором Linux и специалистом по сетевой безопасности в центральных ИТ-службах ETH Zurich. Он также является волонтером в дистрибутиве Debian GNU / Linux, Linux User Group Switzerland (LUGS), радиошоу и подкастах Hackerfunk, а также в различных проектах с открытым исходным кодом.

Хофманн и Бекерт также написали книгу по управлению пакетами Debian

(http: // www.dpmb.org).

Лучшие игры с командной строкой для Linux
Командная строка - не только ваш главный союзник при использовании Linux - она ​​также может быть источником развлечений, потому что вы можете использ...
Лучшие приложения для сопоставления геймпадов для Linux
Если вам нравится играть в игры на Linux с помощью геймпада вместо стандартной системы ввода с клавиатуры и мыши, для вас есть несколько полезных прил...
Полезные инструменты для геймеров Linux
Если вам нравится играть в игры на Linux, скорее всего, вы использовали приложения и утилиты, такие как Wine, Lutris и OBS Studio, для улучшения игров...