Назад | Перейти на главную страницу

Невозможно обновить resolv.conf

Я редактирую /etc/resolvconf/resolv.conf.d/base:

$ cat /etc/resolvconf/resolv.conf.d/base 
nameserver 192.168.100.16

Я принудительно обновляю:

$ sudo resolvconf -u

Проверяю, сработало ли:

$ 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 192.168.100.4
nameserver 192.168.100.3
nameserver 192.168.100.2
search openstacklocal

Это не так. Прочтите resolvconf справочная страница. Может обновления отключены?

   --updates-are-enabled
          Return 0 if the flag is set, otherwise return 1.

Посмотрим:

$ resolvconf --updates-are-enabled
$ echo $?
0

Тогда он включен (верно? 0 означает включен?). Возможно, он был отключен раньше, я также запускал sudo resolvconf --enable-updates. Я снова принудительно обновлю (хотя включения должно быть достаточно):

$ sudo resolvconf -u

Проверим еще раз:

$ 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 192.168.100.4
nameserver 192.168.100.3
nameserver 192.168.100.2
search openstacklocal

Ничего, пшик, нада! :(

Почему /etc/resolv.conf не обновляется?

Моя система:

$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 16.04.4 LTS
Release:        16.04
Codename:       xenial

Я не знаю, правильный это ответ или нет, но я спорил с resolvconf пакет достаточно длинный, чтобы я просто удалил его на своих серверах и вернулся к ручному редактированию /etc/resolv.conf. В любом случае не уверен, почему он установлен на сервере по умолчанию. Насколько я понимаю, целью пакета является настройка резолверов, маршрутов и других динамических сетевых настроек через DHCP. Я не предоставляю серверы таким образом, поэтому для меня это бесполезно.

Для рабочий стол систем, в корпоративной среде верно обратное. DHCP используется почти всегда, поэтому необходим какой-то автоматический маршрут и резольвер. По какой-то причине я всегда обнаруживал, что Ubuntu просто не может понять это правильно в этой области. Так или иначе, что-то всегда является проблемой. Иногда интерфейс Wi-Fi необъяснимым образом отключается в каком-то файле под /var/ (не помню где); в других случаях настройки DHCP просто не менялись бы, не оставив ни маршрута, ни резолверов, но у вас есть IP-адрес для проверки связи, так что это хорошо (wth).

Тем не менее, то, что я делаю со своим корпоративным ноутбуком, - это удаление resolvconf а также любые записки, оставшиеся от /var/lib/ntpdate/default.dhcp а затем следуйте принятому ответу Вот. Это Б.С. но для устранения неполадок или настройки не требуются часы разочарования. Надеюсь, у кого-то есть ответ получше?