Armbian Build
Nano Pi R6S向けArmbianのBuildの話である。どちらか言うと、Armbian Buildのためのメモである。
Armbian
Armbianはシングルボードコンピュータ(SBC)向けのOS(Debian/Ubuntuベースのディストリビューション)と言える。名前のとおり、ARMベースのSBCがターゲット。本家サイトは下記となる。
Build
Buildのための環境は、github上のこちらにある。引用すると下記となる。
- x86_64 / aarch64 machine
- at least 2GB of memory and ~35GB of disk space for VM, container or bare metal installation
- Armbian / Ubuntu Jammy 22.04.x for native building or any Docker capable Linux for containerised
- Windows 10/11 with WSL2 subsystem running Ubuntu Jammy 22.04.x
- Superuser rights (configured sudo or root access).
- Make sure your system is up-to-date! Outdated Docker binaries, for example, can cause trouble.
$ ./compile.sh
にて、Buildできる。が、Buildできない状況が続出。ここでは、あえて、NGとなった状況も記載。
Ubuntu Jammy 22.04.x (小生の環境ではNG)
$ cat /etc/issue
Ubuntu 22.04.4 LTS \n \l
$ uname -a
Linux lyon 6.5.0-27-generic #28~22.04.1-Ubuntu SMP PREEMPT_DYNAMIC Fri Mar 15 10:51:06 UTC 2 x86_64 x86_64 x86_64 GNU/Linux
この環境では下記エラーとなった。
Error: invalid --security-opt 1: "apparmor:unconfined"
[💥] -------------Docker run failed after 65s-------------------------- [ 🐳 failed ]
[💥] Docker Log file for this run [ not found ]
WSL on Windows10 (小生の環境ではNG)
$ cat /etc/issue
Ubuntu 22.04.3 LTS \n \l
$ uname -a
Linux Landvetter 5.15.146.1-microsoft-standard-WSL2 #1 SMP Thu Jan 11 04:09:03 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux
この環境では下記エラーとなった。
[💲|💥] Error 1 occurred in main shell [ at /home/undeux3/proj/armbian/build/lib/functions/logging/runners.sh:211
run_host_command_logged_raw() --> lib/functions/logging/runners.sh:211
run_host_command_logged() --> lib/functions/logging/runners.sh:193
docker_cli_build_dockerfile() --> lib/functions/host/docker.sh:360
do_with_logging() --> lib/functions/logging/section-logging.sh:81
cli_docker_run() --> lib/functions/cli/cli-docker.sh:54
armbian_cli_run_command() --> lib/functions/cli/utils-cli.sh:136
cli_entrypoint() --> lib/functions/cli/entrypoint.sh:176
main() --> ./compile.sh:50
]
[💲|💥] Cleaning up [ please wait for cleanups to finish ]
[💲|🌿] ANSI log file built; inspect it by running: [ less -RS output/logs/log-docker-b74fb50e-2b49-4909-88d0-229c3ade5c83.log.ans ]
[💲|🌿] Share log manually (or SHARE_LOG=yes): [ curl --data-binary @output/logs/log-docker-b74fb50e-2b49-4909-88d0-229c3ade5c83.log.ans https://paste.armbian.com/log ]
その他のNG
- docker
- Apple M2(対象外)
- Fedora(対象外)
Debian(OK)
DebianではBuildすることができたので、以降、Buildの状況を記す。
$ cat /etc/issue
Debian GNU/Linux 12 \n \l
$ uname -a
Linux zagreb 6.1.0-20-arm64 #1 SMP Debian 6.1.85-1 (2024-04-11) aarch64 GNU/Linux
$ ./compile.sh
上記を起動すると、下記が表示される。
"Show a kernel configuration ..."を選択。
所持するNano Piである「nanopi-r6s」を選択。
サポート対象(?)となっている"Ubuntu jammy"選択。
"Image with desktop environment"選択。
Kernel Configurationでも、何も追加せず、"Exit"。
この後、実際のBuildが始まる。終了すると、イメージできあがる。
$ ls ./output/images/
Armbian-unofficial_24.5.0-trunk_Nanopi-r6s_jammy_legacy_5.10.160_xfce_desktop.img
Armbian-unofficial_24.5.0-trunk_Nanopi-r6s_jammy_legacy_5.10.160_xfce_desktop.img.sha
Armbian-unofficial_24.5.0-trunk_Nanopi-r6s_jammy_legacy_5.10.160_xfce_desktop.img.txt
上記txtファイルの内容(一部)は下記となっている。
Vendor: Armbian-unofficial
Revision: 24.5.0-trunk
Board: Nanopi-r6s
Kernel: Linux 5.10.160 (legacy)
Build date: 20.04.2024
Sources: https://github.com/armbian/build
Sources rev: 4df3bddd6
Armbian起動
作成されたイメージをSDカードに書き込み、Nano PI R6SにSDカードを挿入して、起動後の状況は下記となる。
$ cat /etc/issue
Armbian-unofficial 24.5.0-trunk Jammy \l
$ uname -a
Linux nanopi-r6s 5.10.160-legacy-rk35xx #1 SMP Sat Apr 20 09:56:38 JST 2024 aarch64 aarch64 aarch64 GNU/Linux
前述のtxtファイルの記載内容と一致。
EOF