Не на все приставки H96Max можно установить Linux.
Эта инструкция для процессора RK3318, на других не тестировалась, будьте осторожны.
Я рекомендую приобретать приставку с 4Гб ОЗУ и 64Гб внутренней памяти, поверьте, лишним это не будет, разница в цене не такая большая.
Установка в инструкции именно на такую модель осуществляется.
Установка на данную приставку очень простая на самом деле. Для этого нам понадобится флешка microsd. Я использовал на 16Гб, но хватит и 8Гб.
У данной приставки есть emmc на 64 Гб. И приоритет загрузки у приставки следующий:
Если вставлена microsd карта, то попытается приставка грузиться с нее. Если же там нет ничего загрузочного, то грузиться будет с emmc.
Собственно и мы сделаем загрузочную флешку Microsd с которой загрузимся и установим linux armbian в память emmc приставки.
Для начала нам нужно скачать Armbian образ и multitool образ. Я скачивал отсюда: https://users.armbian.com/jock/rk3318/
В общем скачиваем multitool.img.xz и Armbian_23.08.0-trunk_Rk3318-box_bookworm_edge_6.3.13_minimal.img.xz я использовал именно этот образ, про другие не знаю, пробовать надо, думаю заработает и с другими. Файлы прикреплю ниже.
multitool.img.xz
armbian_23.08.0-trunk_rk3318-box_bookworm_edge_6.3.13_minimal.img.xz
Ещё понадобится программа для записи образов на диск, к примеру Rufus - https://rufus.ie/ru/
Или другая с таким же функционалом. Для тех, кто знаком с Linux можно с помощью dd всё сделать,
Настройки для rufus:
После установки образа на флешку, у нее не правильно распределены разделы будут. Это можно увидеть в Управлении компьютером ->Управлении дисками:
Из скрина выше можем заметить 2 раздела Boots и Multitootl. Из них Multitool всего 378 Мб. И есть огромный раздел не распределенный на 14 ГБ. А нужно чтоб раздел Multitool был 14 Гб.
Для того, чтоб Multitool раздел расползся на все нераспределенное пространство, нужно просто вставить Microsd карту в приставку и включить ее. После чего она загрузится с образом Multitool и он автоматом все пространство себе заберет не распределенное. И получится вот так:
Но нужно еще будет этому разделу Multitool присвоить букву. Иначе он не будет виден в системе. А он нам нужен, так как на него будет закидывать образ Armbian.
В общем по разделу тыкаем правой кнопкой и выбираем пункт изменить букву диска. И присваиваем ему любую букву.
После этого в “Компьютер” появится логический диск Multitool с папками. Так вот там есть папка “images” в эту папку нам нужно закинуть образ Armbian_23.08.0-trunk_Rk3318-box_bookworm_edge_6.3.13_minimal.img.xz
После того как закинули образ в папку images. Вытаскиваем microsd флешку и вставляем в приставку H96Max, подключаем приставку через hdmi к монитору или ТВ и подаем питание.
Загрузится Multitool и подключив клавиатуру стрелками можем сначала сделать Бэкап андроида который стоит тут предустановленным:
Бекап у меня занял минут 30-40, наверное зависит от скорости карты и кардридера.
А после того как сделали резервную копию, можем установить armbian выбрав пункт:
После чего armbian установится.
Если захотите переустановить его, то всегда это можно сделать точно так-же. Вставим microsd флешку в приставку и загрузить образ с нее armbian. Как по мне, этот вариант еще проще чем с одноплатными компьютерами.
При первом подключении по ssh к приставке, Вас попросит придумать пароль к учетке root и создать новую учетку. Проделываем все эти шаги.
После того как установили Armbian, подключаемся по ssh к приставке и приступаем к установке Home Assistant. IP приставки вы можете увидеть залогинившись с клавиатуры используя ранее подключённый монитор или ТВ, либо на своём роутере, который раздаёт адреса.
Home Assitant устанавливается тоже не сложно. Просто копируйте команды и вставляйте в терминал.
Обновляем репозитории:
apt update
Далее устанавливаем недостающие пакеты:
apt-get install jq wget curl udisks2 libglib2.0-bin network-manager dbus apparmor-utils systemd-journal-remote lsb-release -y
Далее устанавливаем агент:
На день написания статьи это самая свежая версия, можно использовать более новую при наличии
wget https://github.com/home-assistant/os-agent/releases/download/1.6.0/os-agent_1.6.0_linux_aarch64.deb
dpkg -i os-agent_1.6.0_linux_aarch64.deb
Далее нужно установить докер.
curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh ./get-docker.sh
sudo usermod -aG docker $USER
Систему подготовили, теперь приступаем к установке Home Assistant:
Скачиваем Home Assistant:
На день написания статьи это самая свежая версия, можно использовать более новую при наличии
wget https://github.com/home-assistant/supervised-installer/releases/download/1.7.0/homeassistant-supervised.deb
После скачивания Home Assitant, нужно до установить еще один пакет. Прежде чем перейдем к установкеHome Assitant.
sudo apt-get install systemd-resolved
Далее обязательно перезапускаем Сервер приставку:
reboot
Ну и собственно следующей командой запускаем установку Home Assistant.
sudo BYPASS_OS_CHECK=true dpkg -i homeassistant-supervised.deb
Далее спросит какой тип платы используете, выбираем Odroid C2 – из-за того, что как на Odroid C2 так и на нашей приставке стоит процессор Cortex A53.
Далее давайте делать работу над ошибками.
После данной установки не работает Wi-fi, сети находит, но подключиться нельзя.
Ну и второй момент, это то, что мигают светодиоды как мигалка и многим это не нравится. Вот ниже покажу как эти моменты решить.
С wi-fi тут отдельная тема. Говорят, что на таких приставках их 3 разных вида попадается. Мне не с чем сравнивать, по этому описываю решение конкретно моей приставки.
Чтоб заработал wi-fi, то нужно поменять драйвер. Как это сделать?
Сначала удаляем драйвер старый:
После ввода команды sudo необходимо ввести пароль пользователя который вы задавали после установки, не пароль root, а пароль пользователя, который был создан после смены пароля root. Если эти пароли у вас одинаковы, тогда вводите его.
sudo rm -f /usr/lib/firmware/brcm/brcmfmac4334-sdio.rockchip,rk3318-box.txt
Следующей командой его создаем заново, чтоб он был пустым:
sudo nano /usr/lib/firmware/brcm/brcmfmac4334-sdio.rockchip,rk3318-box.txt
Теперь откройте этот небольшой текстовый файл
нажмите Ctrl-A, чтобы выделить в нем весь текст, затем Ctrl-C, чтобы скопировать его в буфер обмена; Так же на всякий случай файл оставлю тут settings_wifi_tvbox.txt
Переключитесь в окно SSH, щелкните правой кнопкой мыши, чтобы вставить скопированный текст в nano , затем нажмите Ctrl-S для сохранения и Ctrl-X для выхода;
Ну и далее перезапускаем armbian.
reboot
После перезагрузки, установим программу armbian-config.
apt update
apt install armbian-config
После установки, запускаем armbian-config
armbian-config
Там переходим в Network->wifi-> и выбираем сеть wi-fi к которой хотим подключиться и подключаемся. Ошибок больше не будет.
На самом все очень просто, нужно просто записать в файл 0
Это делается вот такой командой:
sudo echo 0 > /sys/devices/platform/gpio-leds/leds/working/brightness
После этого загорится синий светодиод.
Если хотите обратно вернуть, то записываем 1 и перегружаем систему
sudo echo 1 > /sys/devices/platform/gpio-leds/leds/working/brightness
reboot
Так-же возможно, чтоб светодиоды мигали в такт нагрузки системы ( как и в обычных системных блоках.). Если хотите так сделать, то нужно выполнить команду:
sudo echo activity > /sys/devices/platform/gpio-leds/leds/working/trigger
Так же удалось заставить работать Bluetooth на приставке. Как оказалось, все довольно просто.
В данной приставке у меня используется чип Wi-fi и Bluetooth SP2734C – он же копия чипа AP6334.
Зная эту информацию нужно сделать следующее.
Запустить Armbian-config (при условии, что он у Вас уже установлен ранее)
Armbian-config
Там выбрать System ->Hardware-> и поставить галочку у rk3318-box-wlan-ap6334
Далее предложит перезапустить систему, перезапускаем.
Снова запускаем Armbian-config
Armbian-config
Далее заходив в Network -> BT install после чего установятся компоненты необходимые для работы с блютуз. И после блютуз начнет работать.
Проверить можно командой:
hciconfig -a
Если ничего не выводит, то блютуза нет. А если выводит, что-то типа этого, то все работает корректно.
Решение этих двух ошибок:
Итак сначала решение “Неподдерживаемая система – версия CGroup”
Для решения данной проблемы необходимо зайти в armbian-config.
armbian-config
Там далее зайти в System->Bootenv и в нем вписать строчку:
extraargs=systemd.unified_cgroup_hierarchy=0
Должно получиться вот так:
После этого сохраняем. И делаем в том же armbian-config System-> Install to/update boot loader
У нас выскочит предупреждение, что может все сломаться если что-то не правильно указали, по этому внимательнее и лишнего ничего не пишите туда.
Проверить правильность можно командой:
findmnt -lo source,target,fstype,options -t cgroup,cgroup2
Должно выдать что-то типо этого:
И после перезагрузки ошибка “Неподдерживаемая система – версия CGroup” у Вас уйдет.
По поводу второй ошибки “Неподдерживаемая система – операционная система”, для решения проблемы нужно отредактировать файл /etc/os-release
nano /etc/os-release
В открывшемся файле нам нужно изменить строчку PRETTY_NAME=”Armbian 23.11.1 bookworm” – если у вас версия ОС bookworm. И строчку PRETTY_NAME=”Armbian ХХ.ХХ.ХХ bullseye” если у Вас bullseye стоит.
В bookworm меняем PRETTY_NAME=”Armbian 23.11.1 bookworm” на PRETTY_NAME=”Debian GNU/Linux 12 (bookworm)”
Должно получиться следующим образом
Ну а если у вас Bullseye то меняем PRETTY_NAME=”Armbian ХХ.ХХ.ХХ bullseye” на PRETTY_NAME=”Debian GNU/Linux 11 (bullseye)”
После этого перегружаем ОС, и ошибки уйдут.
Статья взята тут
Спасибо автору и советам в комментариях.