从外部操作系统分区使用 bash 环境

从外部操作系统分区使用 bash 环境

我有一个外部分区,/dev/sda其中包含 Ubuntu 操作系统。根位于/dev/sda2.

我想从这个操作系统分区访问命令。

我尝试执行以下步骤:

我首先从 Linux USB 棒启动(实际上是 Arch Linux)。然后我将目标分区挂载到/mnt我的安装映像的文件夹中:

$ mount /dev/sda2 /mnt

我使用 chroot 设置根文件夹:

$ chroot /mnt

但我收到以下错误:

chroot: failed to run command `/usr/bin/zsh` : No such file or directory

到底是怎么回事?也许我被 chroot 的手册页误导了:

chroot - run command or interactive shell with special root directory

我首先使用的方法正确吗?

答案1

您没有指定要在 chroot 内运行的内容。所以它尝试启动一个 shell。它也不知道应该启动哪个 shell,因此它尝试使用$SHELL环境变量中的 shell,显然是/usr/bin/zsh.这个 shell 显然不存在于你的 chroot 中。

告诉chroot你你想运行什么:

chroot /mnt /bin/bash

 

根据您尝试执行的操作,您可能还会遇到其他问题,除非您mount -o bind从主机那里获得了一些信息,例如/dev, /dev/pts, /sys, & /proc

相关内容