/ etc / hosts, / etc / sysconfig / network и имя хоста?

12

Мне нужно изменить имя хоста на сервере Centos, который будет обслуживать www.myserver.com

Что мне нужно сделать /etc/hosts, /etc/sysconfig/networkи с помощью hostnameкоманды?

В /etc/sysconfig/networkмне нужно написать это:

HOSTNAME=www.myserver.com

или это :

HOSTNAME=myserver.com

В /etc/hostsмне нужно написать это:

XXX.XXX.XXX.XXX     myserver.com

или это :

XXX.XXX.XXX.XXX     wwww.myserver.com www

Мне нужно сделать sudo hostname www.myserver.comили sudo hostname myserver.com?

Большое спасибо!

ОБНОВИТЬ :

Есть ли что-то еще, что мне нужно настроить относительно имени хоста?

benjisail
источник
я даже не понимаю, почему кто-то может заняться этим. Я вижу упоминание ниже об использовании, hostname -fтак что, я думаю, вы получите правильно работающую hostnameкоманду, но что еще?
Рэнди Л

Ответы:

10

Файл / etc / sysconfig / network является источником, из которого сценарии запуска принимают аргументы команды hostname. И это должно быть просто имя машины, а не полностью. Доменная часть обычно определяется в файле /etc/resolv.conf.

Предполагая, что полное имя хоста - «lemon.example.com» («www» не выглядит для меня как хорошее имя хоста), тогда:

  • / И т.д. / sysconfig / сети: HOSTNAME=lemon
  • /etc/resolv.conf (вдоль правого «сервера имен»): search example.com
  • / etc / hosts (не требуется, если DNS работает нормально): XXX.XXX.XXX.XXX lemon.example.com lemon

Если все настроено правильно, hostnameкоманда вернет «lemon» и hostname -fвернет «lemon.example.com».

В вашем случае может показаться, что имя хоста - «www» в домене «myserver.com»… Я не думаю, что это именно то, что вы хотите. 'www' может быть псевдонимом (DNS CNAME) ... если вы хотите его в файле / etc / hosts, просто добавьте его в строку с вашим IP:

XXX.XXX.XXX.XXX lemon.example.com lemon www.myserver.com

Настройки из / etc / sysconfig / network будут применены после перезапуска сети. Вы можете установить имя хоста немедленно с помощью hostnameкоманды. Изменения / etc / hosts и /etc/resolv.conf вступают в силу немедленно (за исключением приложений, которые хранят старые данные в кэше).

Яцек Конечны
источник
0

ваши настройки должны выглядеть так:

  • /etc/sysconfig/network: HOSTNAME=www.myserver.com
  • /etc/hosts: XXX.XXX.XXX.XXX wwww.myserver.com www

Вы также можете позвонить hostname, но это изменит только имя хоста, пока вы не перезапустите сервер в следующий раз.

насколько я помню, это все изменения, которые вы должны сделать.

Кристиан
источник
3
Если вы поместите полное доменное имя в / etc / sysconfig / network, то команды 'hostname' и 'hostname -f' вернут одно и то же значение FQDN. Это не совсем правильно. 'hostname' в идеале должно просто возвращать фактическое имя хоста.
Шон Дьюберри