如何解决chroot中的主机名?

我尝试用chroot修复破坏的Ubunu 14.04。 我所做的,是从USB安装Ubuntu安装原始系统,必须修复并改为使用chroot系统:

sudo mount /dev/sdXY /mnt sudo mount -o bind /dev /mnt/dev sudo mount -o bind /sys /mnt/sys sudo mount -t proc /proc /mnt/proc sudo cp /proc/mounts /mnt/etc/mtab sudo chroot /mnt /bin/bash 

这工作正常,但在chroot环境中我无法访问互联网,所以apt无法解析主机名。 我应该做些什么?

 ping www.askubuntu.com 

也不起作用。

在较新的Ubuntu系统上,名称解析由resolvconf服务处理,/ etc / resolv.conf是/run/resolvconf/resolv.conf的符号链接。 您可以在执行chroot命令之前将绑定装载与其他绑定装载一起添加到/ run文件系统

 sudo mount -o bind /run /mnt/run 

以便chroot系统获取主机系统的DNS设置,或者,当您在chrooted系统中时,暂​​时创建一个静态的/etc/resolv.conf,其中包含您选择的名称服务器,例如

 echo 'nameserver 8.8.4.4' | sudo tee -a /etc/resolv.conf