我正在尝试在 qemu 虚拟机上安装 ubuntu 18.04,这是 qemu 的 armvirt
机器的修改版本。我检查了我可以按照这里virt
的指示在 arm 机器上安装 ubuntu 18.04,这是一个非常有用的页面。
但是当我尝试在修改过的机器上安装它时,它失败了,所以我想调试(遵循)ubuntu 安装程序,如果可能的话。
我想我需要访问 ubuntu 安装的源代码或脚本数据,发现这个有趣的页面用于制作 ubuntu .iso 文件。(如果我可以在调试模式下编译一些可执行文件并跟踪它,我可能会看到问题出在哪里。)
它告诉我使用 debootstrap 命令将所有引导文件提取到一个目录中。命令如下。
sudo debootstrap --arch=$ARCH $RELEASE chroot
我尝试为 ubuntu 20.04 (focal fosa) 解压,因为我的最终目标是在我的虚拟机上安装 20.04。所以我尝试sudo deboostrap --arch=arm64 focal chroot
了,它将引导数据提取到 directory chroot
。该指南指示我通过使用 command 输入 bash 在 chroot 目录中安装更多软件包sudo chroot chroot
。但很快我发现bash
chroot 目录中的可执行文件是针对 arm64 的,而我的主机是 amd64。我几乎可以肯定我需要使用可以在 chroot 文件系统中执行 bash 和其他 arm64 二进制文件的 arm64 计算机(我真的有一台)在 chroot 目录中安装 ubuntu 软件包。我的理解正确吗?这个页面看起来很旧(谈论2011年或2012年的版本)。任何人都可以指导我获取更多最新信息吗?谢谢!
要创建 ARM64 可用的 chroot,您必须将特殊的 QEMU 静态虚拟化可执行文件复制到它。
使用以下命令:
并继续进入 chroot。
有用的阅读链接: