在最新的 Fedora 和 Centos 中,dns 的配置位于 /etc/sysconfig/network-scripts/ifcg-eth0(或其他接口配置)中。那么为什么仍然需要 /etc/resolv.conf 呢?因为它不再使用。(我在新的 fedora 18 安装上测试了这一点,将 dns ipis 放入 resolve.conf 中不起作用,只能更改 ifcg 文件并重新启动网络服务)
答案1
/etc/resolv.conf 是系统范围的配置,用于指定在何处查找 DNS,如 gethostbyname() 等所用。
http://linux.die.net/man/5/resolv.conf
它通常由网络服务使用 ifcfg 中给出的(或由 DHCP 提供的)适配器特定设置覆盖。
因此,对首选 DNS 服务器的任何更改都应在 ifcfg 文件而不是 resolv.conf 中进行,以避免覆盖。