После изменения /etc/hosts какой сервис необходимо перезапустить?

После модификации /etc/hostsКакие службы необходимо перезапустить, чтобы изменения вступили в силу?

5 ответов

Решение

Вам не нужно перезапускать какие-либо услуги.

При тестировании на сервере 14.04 изменения были немедленно отражены.

Единственный сервис, который, я думаю, может быть связан, это "работа в сети", но перезапускать его не нужно.

Ты можешь попробовать:

sudo ifconfig eth0 down
sudo ifconfig eth0 up

(замена eth0 с вашей сетевой картой)

но Arronical прав в теории: вам это не нужно.

Если вы используете dnsmasq (устанавливается по умолчанию), затем выполните следующие действия:

$ pkill -HUP dnsmasq

Теоретически, изменения в /etc/hosts файл вступает в силу немедленно.

Но, если вы получите старое имя хоста после этого

$ hostname

затем перезагрузите или перезапустите сетевое соединение... которое должно показать правильное имя хоста.

На самом деле я заметил, что postfix может выиграть от перезапуска, чтобы включить новые хосты в версию локального файла хоста, которая доступна здесь /var/spool/postfix/etc/ (ubuntu 16.04)

Вам необходимо перезапустить службу systemd-hostnamed, которая является системной службой, которая может использоваться для изменения имени хоста системы и связанных метаданных компьютера из пользовательских программ.

/bin/systemctl restart systemd-hostnamed

По большей части изменения в etc/hosts должны быть немедленно распознаны. Если вы добавляете новую запись, а затем проверяете ее по имени на компьютере, на котором размещен файл etc/hosts, он, скорее всего, будет пропинговать, то есть обновление etc/hosts было распознано DNS. В системе pihole, если вы перезапустите преобразователь DNS, он подберет вновь добавленные / отредактированные записи etc/hosts. Скорее всего, это функция какой-либо программы, которая пытается использовать записи хостов, прочитала ли она текущий материал или прочитала только во время загрузки, или, как pihole, перечитает ли она, перезапустив простую внутреннюю функцию?

Вам, вероятно, не нужно ничего перезапускать, если где-то нет временного кеша DNS. Чтобы перезапустить сеть и очистить кеш DNS в Debian и Ubuntu:

sudo /etc/init.d/networking restart

Я продолжал получать ошибку, и Google обратил меня к этому вопросу. Я думал, что мне нужно перезапустить какую-то службу, но на самом деле я обнаружил, что это моя вина:

$ ping remote_hostname
ping: unknown host remote_hostname

Причина, по которой хосты не распознавали новую запись, заключалась в опечатке в IP-адресе:

##.2480.##.##    remote_hostname
Другие вопросы по тегам