В Ubuntu 10.04 должно ли / etc / hostname содержать полное доменное имя сервера?
Нет, только часть имени хоста. Согласно страницам руководства Ubuntu, /etc/hostname
должен содержать только часть имени хоста, а не полное доменное имя:
Полное доменное имя
Вы не можете изменить полное доменное имя (возвращаемое параметром hostname --fqdn) или имя домена DNS (возвращаемое dnsdomainname) с помощью этой команды. Полное доменное имя системы - это имя, которое преобразователь (3) возвращает для имени хоста.
Технически: полное доменное имя - это имя, возвращаемое gethostbyname (2) для имени хоста, возвращаемого gethostname (2). Доменное имя DNS - это часть после первой точки.
Следовательно, это зависит от конфигурации (обычно в /etc/host.conf), как вы можете ее изменить. Обычно (если файл hosts анализируется до DNS или NIS) вы можете изменить его в / etc / hosts.
НОТЫ
Имя хоста семейств адресов пытается найти полное доменное имя, псевдонимы и сетевые адреса хоста определяются конфигурацией вашего преобразователя. Например, в системах GNU Libc распознаватель может быть проинструктирован сначала попробовать поиск IPv6, используя параметр inet6 в /etc/resolv.conf.
ФАЙЛЫ
/ etc / hosts / etc / hostname Этот файл должен содержать только имя домена, а не полное доменное имя.
Джош указывает на то, что рекомендует Ubuntu, но я не уверен, что это жесткое правило.
/etc/hostname
используется для установки имени хоста системы, которое то же самое, что напечатано hostname
или uname -n
. Это имя будет использоваться при запросах на вход, например на виртуальной консоли или на экране входа в Gnome GDM.
Как говорится на странице руководства, он также используется в качестве входных данных для DNS-запроса при выполнении hostname --fqdn
или dnsdomainname
.
Technically: The FQDN is the name gethostbyname(2) returns for the host name
returned by gethostname(2). The DNS domain name is the part after the first dot.
Это означает, что если это просто слово, преобразователь добавит домены, перечисленные в search
или domain
установка в /etc/resolv.conf
чтобы попытаться найти полное доменное имя. Если у вас есть полное доменное имя в / etc / hostname, это означает, что вам не нужно пытаться добавить один или несколько доменов: имя однозначно.
Так что я бы сказал, что оба варианта верны. Мне было бы очень интересно, если бы кто-нибудь мог продемонстрировать обратное.
С участием libnss-myhostname установлен, вы можете записать fqdn в /etc/hostname
и готово. В противном случае вам также необходимо отредактировать /etc/hosts
чтобы сопоставить короткое имя и сопоставить его с полным именем (вы также можете поместить его в DNS, но это небезопасно). При использовании интерфейса обратной петли, отличного от стандартного, это выглядит так:
127.0.0.2 hostname.fully.qualified hostname