ARM için “sıfırdan” bir Ubuntu görüntüsü oluşturma
Geliştirme yeni başladığında, hangi paketlerin hedef köklere gideceği genellikle açık değildir.
Başka bir deyişle, LFS, buildroot veya yocto (veya başka bir şey) almak için henüz çok erken, ancak zaten başlamanız gerekiyor. Zenginler için (pilot örneklerde 4GB eMMC'm var), geliştiricilere şu anda eksik olan bir şeyi hızlı bir şekilde teslim etmelerine olanak tanıyacak bir dağıtım dağıtmanın bir yolu var ve ardından her zaman paket listeleri toplayabilir ve bir liste oluşturabiliriz. hedef kökler.
Bu makale yeni değildir ve basit bir kopyala-yapıştır talimatıdır.
Makalenin amacı ARM panoları için Ubuntu rootf'leri oluşturmaktır (benim durumumda Colibri imx7d'ye dayanarak).
resim oluşturma
Çoğaltma için hedef kökleri bir araya getiriyoruz.
Ubuntu Tabanının Paketinden Çıkarılması
Sürümü ihtiyaca ve kendi tercihlerimize göre kendimiz seçiyoruz. Burada 20 verdim.
$ 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
Çekirdekteki BINFMT desteğini kontrol etme
Ortak bir dağıtımınız varsa, BINFMT_MISC desteği vardır ve her şey yapılandırılmıştır, değilse, çekirdekte BINFMT desteğini nasıl etkinleştireceğinizi bildiğinizden eminim.
Çekirdek başlık dosyaları ve modülleri ayrı bir konudur. Tabi ki Ubuntu üzerinden bootloader, kernel, modüller, cihaz ağacı kurulumu yapmayacağız. Dışarıdan bize gelecekler veya kendimiz monte edeceğiz veya pano üreticisi tarafından bize verilecekler, her halükarda bu talimatın kapsamı dışındadır.
Bir dereceye kadar sürüm farklılığı kabul edilebilir, ancak bunları çekirdek yapısından almak daha iyidir.
# apt install --yes linux-headers-generic
Bakalım ne oldu ve çok şey ortaya çıktı:
# apt clean
# du -d 0 -h / 2>/dev/null
770M /
Bir şifre belirlemeyi unutmayın.
Görüntüyü paketleme
$ sudo tar -C rootfs --transform "s|^./||" --numeric-owner --owner=0 --group=0 -c ./ | tar --delete ./ | gzip > rootfs.tar.gz
Ek olarak, otomatik itme ayarıylaetckeeper'ı da kurabiliriz.
Diyelim ki montajımızı dağıttık, sistemimizin daha sonraki farklı versiyonlarını en iyi şekilde nasıl monte edebileceğimize dair çalışmalar başladı.