我删除了 resolv.conf,如何恢复它或如何重新创建它

我删除了 resolv.conf,如何恢复它或如何重新创建它

我正在将服务器上的 DHCP IP 地址更改为静态, sudo gedit /etc/network/interfaces并设法编辑文件并保存它。

然后我去更改resolv.conf但它就变成空白了,每次我重新启动它都是空白的。

然后我意外地将其删除了。

现在我无法使用apt-get或安装任何东西aptitude

答案1

/etc/resolv.conf重新启动时会自动生成,如果它是指向(文件写入)resolvconf的符号链接,则无需创建或编辑它。您可以使用以下语法放入名称服务器,以便自动将其添加到:/run/resolvconf/resolv.confresolvconf/etc/network/interfaces/etc/resolv.conf

dns-nameservers <IP_address> <IP_address> <IP_address>

例如:

dns-nameservers 8.8.8.8 8.8.4.4

您应该在静态 IP 配置块的末尾添加此行。

如果您已删除符号链接/etc/resolv.conf,请运行sudo dpkg-reconfigure resolvconf,您将遇到一系列问题,以便再次正确设置它。现在执行reboot或运行以下命令:

sudo ifdown eth0 && sudo ifup eth0  ##Change interface name accordingly

一切都会好起来的。

答案2

要恢复符号链接,请在命令提示符下/etc/resolv.conf -> ../run/resolvconf/resolv.conf执行命令。sudo dpkg-reconfigure resolvconf

ifup如果您使用实用程序(其配置文件为)配置面向 Internet 的网络接口,/etc/network/interfaces则将名称服务器信息添加到 中的相应节中。通常这需要向相关节/etc/network/interfaces添加至少一个选项。例如,dns-nameservers

iface eth0 inet static
    address 192.168.22.33
    netmask 255.255.255.0
    dns-nameservers 192.168.22.1

然后当你 时ifup eth0,地址192.168.22.1将被 resolvconf 添加到resolv.conf(在选项行上:nameserver 192.168.22.1)。

答案3

你也可以运行:

sudo ln -s /run/resolvconf/resolv.conf /etc/resolv.conf

恢复符号链接。

相关内容