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

74

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

Ашиш Карпе
источник
8
Для тех, кто возвращается сюда через случайный поиск в Интернете ... Очевидно, не запускайте, sudo ifconfig eth0 downесли вы используете SSH-клиент для подобных целей.
OskyEdz Snakehult
// Я НИКОГДА не делал эту ошибку раньше. : /
Натан Басанезе
1
@OskyEdzSnakehult, если вы не запустите обе в одной строке, разделенные &&, внутри tmux / screen / etc. так что команда завершается, даже если вы временно отключены.
Уолф

Ответы:

61

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

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

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

Arronical
источник
// Почему они не нуждаются в перезагрузке?
Натан Басанезе
// Кстати, это также верно для Mac OS X (10.12.4 (16E195)).
Натан Басанезе
Мне не нужно было перезапускать какие-либо сервисы, но пришлось перезагрузить мою машину, чтобы она заработала
Гаян Виракутти
3
Нет! Это не работает дляUbuntu 16.04.4 LTS
Green
1
Не работает для обновленного Linux,
ChikuMiku
10

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

sudo ifconfig eth0 down
sudo ifconfig eth0 up

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

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

Эудженио Дезидери
источник
5
Это то, что я склонен делать после любых изменений в сети, которые я обычно помещаю &&между двумя командами, чтобы сделать его однострочным.
Arronical
11
Если только ты не ошибаешься ... ты ssh'd в машину удаленно?
sharky
при подключении через удаленный ssh, перезагрузка может быть такой же (небезопасной), как и остановка / запуск сети вручную (потому что, конечно, после выключения сети вы отключаетесь и не можете включить его снова - или даже перезагрузка!). Однако, чтобы выполнить ifconfigdown + up, затем используйте что-то вроде gnu screen (или tmux) и запустите обе команды одновременно, ifconfig up && ifconfig downили поместив их в двухстрочный сценарий оболочки и запустив его. Затем снова подключитесь к сеансу gnu screen / tmux - если все пойдет хорошо.
Майкл
3

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

Tritof
источник
3

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

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

$ hostname

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

varshneydevansh
источник
2

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

$ pkill -HUP dnsmasq
Андрей Стародубцев
источник
0

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

1coolbox
источник