Wakati usanidi unapoanza tu, mara nyingi haijulikani wazi ni vifurushi vipi vitaenda kwa mizizi inayolengwa.
Kwa maneno mengine, ni mapema sana kunyakua LFS, buildroot au yocto (au kitu kingine), lakini tayari unahitaji kuanza. Kwa matajiri (nina 4GB eMMC kwenye sampuli za majaribio) kuna njia ya kusambaza kwa watengenezaji usambazaji ambao utawaruhusu kutoa haraka kitu ambacho kinakosekana kwa sasa, na kisha tunaweza kukusanya orodha za vifurushi na kuunda orodha ya mizizi inayolengwa.
Makala haya si mapya na ni maagizo rahisi ya kunakili-bandika.
Madhumuni ya kifungu ni kuunda mizizi ya Ubuntu kwa bodi za ARM (kwa upande wangu, kulingana na Colibri imx7d).
Kujenga picha
Tunakusanya mizizi inayolengwa kwa urudufishaji.
Inafungua Ubuntu Base
Tunachagua toleo wenyewe kulingana na hitaji na matakwa yetu wenyewe. Hapa nimetoa 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
Kuangalia usaidizi wa BINFMT kwenye kernel
Ikiwa una usambazaji wa kawaida, basi kuna usaidizi wa BINFMT_MISC na kila kitu kimesanidiwa, ikiwa sivyo, basi nina hakika kuwa unajua jinsi ya kuwezesha usaidizi wa BINFMT kwenye kernel.
Faili za vichwa vya Kernel na moduli ni suala tofauti. Bila shaka, hatutaweka bootloader, kernel, modules, mti wa kifaa kupitia Ubuntu. Watakuja kwetu kutoka nje au tutawakusanya wenyewe au watapewa na mtengenezaji wa bodi, kwa hali yoyote hii ni zaidi ya upeo wa maagizo haya.
Kwa kiasi fulani, utofauti wa toleo unakubalika, lakini ni bora kuwachukua kutoka kwa ujenzi wa kernel.
# apt install --yes linux-headers-generic
Wacha tuone kilichotokea na ikawa mengi:
# apt clean
# du -d 0 -h / 2>/dev/null
770M /
Usisahau kuweka nenosiri.
Kupakia picha
$ sudo tar -C rootfs --transform "s|^./||" --numeric-owner --owner=0 --group=0 -c ./ | tar --delete ./ | gzip > rootfs.tar.gz
Zaidi ya hayo, tunaweza kusakinisha etckeeper kwa kuweka kiotomatiki
Naam, tuseme tulisambaza mkusanyiko wetu, kazi ilianza juu ya jinsi bora ya kukusanya matoleo tofauti ya mfumo wetu.