Te hanga i tetahi ahua Ubuntu mo te ARM "mai i te wahanga"
I te wa ka timata te whakawhanaketanga, kaore i te maarama ko tehea nga kohinga ka haere ki nga pakiaka o te whaainga.
I etahi atu kupu, he moata rawa ki te hopu i te LFS, buildroot, yocto ranei (he mea ke atu ranei), engari me timata koe. Mo te hunga whai rawa (kei a au te 4GB eMMC i runga i nga tauira pairati) he huarahi ki te tohatoha ki nga kaiwhakawhanake he tohatoha e taea ai e ratou te tuku tere i tetahi mea kei te ngaro i tenei wa, katahi ka taea e matou te kohikohi i nga rarangi o nga kohinga me te hanga rarangi mo nga rootfs ūnga.
Ehara tenei tuhinga i te mea hou, he tohutohu kape-whakapiri ngawari.
Ko te kaupapa o te tuhinga ko te hanga i nga pakiaka Ubuntu mo nga papa ARM (i taku keehi, i runga i te Colibri imx7d).
Te hanga whakaahua
Ka whakahiatohia e matou nga pakiaka o te whaainga mo te tukurua.
Wewetehia te turanga Ubuntu
Ka tohua e maatau te tuku i runga i nga hiahia me o maatau ake hiahia. I konei kua hoatu e ahau 20.
$ mkdir ubuntu20
$ cd ubuntu20
$ mkdir rootfs
$ wget http://cdimage.ubuntu.com/ubuntu-base/releases/20.04/release/ubuntu-base-20.04-base-armhf.tar.gz
$ tar xf ubuntu-base-20.04-base-armhf.tar.gz -C rootfs
Te tirotiro i te tautoko BINFMT i roto i te pata
Mena he tohatoha noa koe, he tautoko mo te BINFMT_MISC ka whirihorahia nga mea katoa, mena kaore, ka tino mohio ahau kei te mohio koe me pehea e taea ai te tautoko BINFMT i roto i te kernel.
Me mohio kei te whakahohea te BINFMT_MISC i te kernel:
He take motuhake nga konae pane pane Kernel me nga waahanga. Ae ra, kaore matou e whakauru i te bootloader, kernel, modules, rakau taputapu ma Ubuntu. Ka haere mai ratou ki a matou i waho, ka whakaemihia ranei e matou, ka tukuna mai ranei e te kaihanga poari, ahakoa he aha tenei kei tua atu i te waahanga o tenei tohutohu.
I etahi waahanga, ka whakaaetia te rereketanga o te putanga, engari he pai ake te tango mai i te hanga kernel.
# apt install --yes linux-headers-generic
Kia kite tatou i te mea i tupu, a he maha nga mea i puta:
# apt clean
# du -d 0 -h / 2>/dev/null
770M /
Kaua e wareware ki te whakatakoto kupuhipa.
Te takai i te ahua
$ sudo tar -C rootfs --transform "s|^./||" --numeric-owner --owner=0 --group=0 -c ./ | tar --delete ./ | gzip > rootfs.tar.gz
I tua atu, ka taea e tatou te whakauru i te etckeeper me te tautuhinga autopush
Ana, me kii kua tohatohahia ta maatau huihuinga, i timata te mahi me pehea te pai ki te whakahiato i nga waahanga rereke o to maatau punaha.
Ka taea e taatau te hanga manga i runga i te taputapu i mua atu (me kii ka hangaia he tuhinga, he ratonga ranei ka rere i te wa tuatahi ka whakarewahia).