Архитектура и состав
Структура разделов
NapiLinux оптимизирован для embedded-систем и изначально спроектирован с учетом длительной автономной работы, возможности обновления системы и откатов. Основное отличительное свойство NapiLinux от классических дистрибутивов (Debian, Ubuntu, DietPi) — дублирующие друг друга разделы с системой и отдельный раздел с пользовательскими данными.

| partition | size | ro\rw |
|---|---|---|
| /dev/mmcblk1p1 | 1.5G Linux filesystem | ro |
| /dev/mmcblk1p2 | 1.5G Linux filesystem | not mounted |
| /dev/mmcblk1p3 | XXG Linux filesystem | rw |

Система может грузиться как с раздела 1 (/dev/mmcblk1p1), так и с раздела 2 (/dev/mmcblk1p2). При обновлении системы обновляется один из разделов (более «старый»). Если обновление прошло неудачно, система загрузится с другого раздела. Раздел 3 (/dev/mmcblk1p3) с пользовательскими данными содержит все конфиги, пользовательские файлы, базы данных и так далее. Чтобы сделать резервную копию, не нужно копировать всю систему, достаточно сделать резервную копию этого раздела. Чтобы «обнулить» систему, достаточно стереть все данные этого раздела.
Состав системы
Система имеет базовый состав пакетов, к которому имеются расширения и рецепты с дополнительным функционалом для работы с данными.
- python3
- pip3
- modpoll
- mbpoll
- mosquitto
- mbusd
- influxdb2
- telegraf
Расширенный состав включает в себя «тяжелые» пакеты, такие как telegraf, grafana, influxdb. По умолчанию эти службы выключены. Службу grafana не рекомендуется включать на процессорах rk3308.