debootstrapとは-第2段階


11

私だけで遊んdebootstrapschroot。で環境をセットアップしていますdebootstrap。の--second-stageオプションを使用していませんdebootstrap

いつ、どのようにこのオプションを使用する必要がありますか。debootstrap第二段階で何をしますか?

回答:


11

2つのステージを分離する必要があるのは、外部アーキテクチャ(CrossDebootstrap)のディストリビューションをブートストラップする場合のみです。マニュアルページの--foreignオプションの説明を参照してください。たとえば、x86マシンを使用して、組み込みARMまたはPowerPCシステム用のDebian / Ubuntuインストールを作成します。

最初の段階では、必要な.debファイルをダウンロードし、指定したディレクトリに解凍します。2番目のステージでは、すべてのパッケージ構成スクリプトを実行します。これは、ターゲットアーキテクチャを使用して(またはターゲットアーキテクチャqemu-user-staticをエミュレートするために使用して)実行する必要があります。

外部アーキテクチャ用のインストールを構築しない場合は、ステージが組み合わされ、--second-stageオプションを無視できます。


1
Unix Stack Exchangeに関するこの投稿には、--foreignおよび--second-stageオプションについての良い情報もあります。
GDP2 2018年

1

使用例 debootstrap --second-stage

arm64 Ubuntu 18.04イメージをUbuntu 18.04 amd64ホストからデブートストラップする場合は、次のようにします。

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-staticUbuntu 18.04 のパッケージにqemu-debootstrapは、基本的に私たちが行ったのと同じことをするスクリプトが付属していますが、すべてのアーチに一般化されています。ただし、QEMUのメインソースツリーにはありません。

QEMUフルシステムエミュレーションで生成されたシステムを実行するための私のフルセットアップは次のとおりです。構築済みのQEMU Ubuntuイメージ(32ビット)はオンラインでありますか?

Ubuntu 18.04でテスト済み。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.