在 ARM 根文件系统中运行的命令

在 ARM 根文件系统中运行的命令

我正在开发 ARM 板(beaglebone black)。

当我创建 bootimg 映像时,我只是将 ARM 根文件系统复制到启动磁盘。但是,我想像在主机 PC 上一样运行 Linux 命令。

我怎样才能运行类似在根文件系统中安装包的 Linux 命令?(不是主机 PC 的根文件系统。在根文件系统中运行命令,稍后从主机 PC 复制到 ARM 目标板。)

Linux 中有没有 ARM 环境仿真工具?

答案1

您可以使用以下命令挂载 AM335x 根文件系统并将 chroot 到该文件系统:

# install QEMU ARM static to the host system
sudo apt-get install qemu-user-static

# mount rootfs
sudo kpartx -a -v rootfs.img
sudo mount /dev/mapper/loop0p2 /mnt

# copy qemu-arm-static executable
sudo cp /usr/bin/qemu-arm-static /mnt/usr/bin/
sudo cp /etc/resolv.conf /mnt/etc/resolv.conf

# prepare for chrooting
cd /mnt
sudo mount --bind /dev dev/
sudo mount --bind /sys sys/
sudo mount --bind /proc proc/
sudo mount --bind /dev/pts dev/pts
sudo rm /mnt/etc/ld.so.preload

# chroot to ARM filesystem
sudo chroot .

# do the stuff inside rootfs
apt-get update
apt-get install mc

我已经使用 Raspberry Pi rootfs 测试了此方法。


参考:

相关内容