sudo apt-get update
sudo apt-get upgrade
ifconfig
sudo nano /etc/network/interfaces
auto eth0 iface eth0 inet static address 192.168.1.150 netmask 255.255.255.0 network 192.168.2.0 broadcast 192.168.1.255 gateway 192.168.2.1 safe
sudo nano /etc/resolv.conf
Do not edit this file by hand --your changes will be overwritten # I add this nameserver 8.8.8.8 nameserver 8.8.4.4
sudo apt-get remove dhcp-client
sudo /etc/init.d/networking restart
*Running /etc/init.d/networking restart is deprecated because it may not enable again some interfaces *Reconfiguring network interfaces... ssh stop/waiting ssh start/running,process 1438
错误在哪里?我不懒。我在 Google 上搜索了 3 天,但毫无结果。我什么方法都试过了。
重启后该/etc/resolv.conf
文件将闪回到原始状态。
答案1
这有两个独立的问题:
resolv.conf
重启后条目被重置
Ubuntu 12.04 中的工作方式/etc/resolv.conf
已发生改变。这是因为foundations-p-dns-resolving
此处描述的 实现https://blueprints.launchpad.net/ubuntu/+spec/foundations-p-dns-resolving克服静态的一些限制resolv.conf
。
您可以在这里了解更多详细信息: http://www.stgraber.org/2012/02/24/dns-in-ubuntu-12-04/
您可以通过删除符号链接/etc/resolv.conf
并创建一个名为的文件来覆盖新功能/etc/resolv.conf
。但在执行此操作之前,请参考我上面提供的链接,了解为什么强烈不建议这样做。
IP 地址与网络和网关冲突(设置静态 IP)
此外,普格施克指出,您的 IP 地址与网关和网络条目不匹配。但这不是导致/etc/resolv.conf
恢复到原始状态的原因,而是我上面提到的原因。
答案2
您的网关地址与本地 IP 地址位于不同的子网中:
地址 192.168.1.150 网关 192.168.2.1
此外,在 .2 子网中也指定了网络地址:
网络 192.168.2.0
您使用 192.168.1/24 还是 192.168.2/24 子网?
编辑: 关于您的 resolv.conf:此文件主要由不同的软件包更新(取决于您的设置)。尝试在您的 /etc/network/interfaces 文件中指定名称服务器:
dns-nameservers 8.8.8.8 8.8.4.4
答案3
您可以尝试这个选项:
删除
/etc/resolv.conf
然后创建一个新的resolv.conf
。sudo nano /etc/resolv.conf
之后添加标志:sudo chattr +i /etc/resolv.conf
- 有了这个+i
标志,即使是 root 也无法触碰此文件。但是,如果您想更改名称服务器,请将标志更改为:sudo chattr -i /etc/resolv.conf
然后添加您的新nameserver
。
然后尝试重新启动并观察会发生什么:)。
我希望这能解决你的问题。