我已经手动编辑/etc/resolvconf/base
以添加openDNS
名称服务器,然后运行sudo resolvconf -u
以更新/etc/resolv.conf
文件。
但是每次重启时更改都会被丢弃。
我该如何保存这些更改?
$ cat /etc/os-release
NAME="Ubuntu"
VERSION="16.04.3 LTS (Xenial Xerus)"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 16.04.3 LTS"
VERSION_ID="16.04"
HOME_URL="http://www.ubuntu.com/"
SUPPORT_URL="http://help.ubuntu.com/"
BUG_REPORT_URL="http://bugs.launchpad.net/ubuntu/"
VERSION_CODENAME=xenial
UBUNTU_CODENAME=xenial
编辑:
/home/pkaramol
$ cat /etc/resolvconf/resolv.conf.d/base
nameserver 208.67.222.222
nameserver 208.67.220.220
/home/pkaramol
$ sudo resolvconf -u
/home/pkaramol
$ cat /etc/resolv.conf
# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
# DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
nameserver 127.0.1.1
答案1
您正在将所需的更改放入错误的目录中。NetManager 允许通过编辑根据,头和尾巴将您的偏好设置放在此目录中:
/etc/resolvconf/resolv.conf.d/head
/etc/resolvconf/resolv.conf.d/base
/etc/resolvconf/resolv.conf.d/tail
您可以通过将您的 移至/etc/resolvconf/base
来纠正此问题/etc/resolvconf/resolv.conf.d/base
。
重启后您看到的内容是文件的内容/etc/resolvconf/resolv.conf.d/head
。它优先于所有内容,并且如您所见,它被保留了下来。
优先选择应该放在那里。
答案2
您可以在其中添加名称服务器resolv.conf
并使其不可变,这意味着 - 它不能被修改。
echo 'nameserver 8.8.8.8' > /etc/resolv.conf
sudo chmod 444 /etc/resolv.conf
sudo chattr +i /etc/resolv.conf
这应该有用。要再次修改文件,请执行以下操作:sudo chattr -i /etc/resolv.conf