Yanıtlar:
İki aşamayı ayırmak yalnızca yabancı bir mimariye ( CrossDebootstrap ) bir dağıtım önyükleme yapacaksanız gereklidir . Man sayfasındaki--foreign
seçeneğin açıklamasına bakın . Örneğin, gömülü ARM veya PowerPC sistemi için Debian / Ubuntu kurulumu oluşturmak için x86 makinesi kullanma.
İlk aşama, gerekli .deb dosyalarını indirir ve belirttiğiniz dizine açar. İkinci aşama, hedef mimari kullanılarak (veya qemu-user-static
hedef mimariyi taklit etmek için kullanılarak) yapılması gereken tüm paket yapılandırma komut dosyalarını çalıştırır .
Yabancı bir mimari için bir kurulum oluşturmuyorsanız, aşamalar birleştirilir ve --second-stage
seçeneği yok sayabilirsiniz .
Nasıl kullanılacağına örnek debootstrap --second-stage
Bir arm64 Ubuntu 18.04 görüntüsünü bir Ubuntu 18.04 amd64 ana bilgisayarından debootstrap etmek istiyorsanız, şunları yaparsınız:
sudo apt-get install \
debootstrap \
qemu-user-static \
;
debootstrap_dir=debootstrap
sudo debootstrap \
--arch arm64 \
--foreign \
bionic \
"$debootstrap_dir" \
http://ports.ubuntu.com/ubuntu-ports \
;
sudo mkdir -p "${debootstrap_dir}/usr/bin"
sudo cp "$(which qemu-aarch64-static)" "${debootstrap_dir}/usr/bin"
sudo chroot "$debootstrap_dir" /debootstrap/debootstrap --second-stage
sudo rm -f "$root_filesystem"
qemu-user-static
Ubuntu 18.04 paket aynı zamanda bir ile gelir qemu-debootstrap
yaptığımız gibi temelde aynı şeyi yapar, ancak tüm archs için genelleştirilmiş senaryo. Ancak QEMU ana kaynak ağacında değildir.
Oluşturulan sistemi QEMU tam sistem öykünmesi üzerinde çalıştırmak için tam kurulum: Çevrimiçi olarak önceden oluşturulmuş herhangi bir QEMU Ubuntu görüntüsü (32bit) var mı?
Ubuntu 18.04'te test edildi.
--foreign
ve--second-stage
seçenekleri hakkında da iyi bilgiye sahiptir .