Вопрос: На Ubuntu 10.04, должно ли / etc / hostname содержать полное доменное имя сервера?


На Ubuntu 10.04, должно ли / etc / hostname содержать полное доменное имя сервера?


17
2017-12-20 23:53


Источник




Ответы:


Нет, просто часть имени хоста. Согласно страницам Ubuntu's man, /etc/hostname должен содержать только часть имени хоста имени хоста, а не полное доменное имя:

Полное доменное имя

Вы не можете изменить полное доменное имя   (как возвращено именем хоста --fqdn) или   DNS-доменное имя (как возвращено   dnsdomainname) с помощью этой команды.   FQDN системы - это имя, которое   распознаватель (3) возвращается для хоста   имя.

Технически: полное имя FQDN   gethostbyname (2) возвращается для хоста   имя, возвращаемое gethostname (2).   DNS-домен является частью после   первая точка.

Поэтому это зависит от   конфигурации (обычно в   /etc/host.conf), как вы можете изменить   Это. Обычно (если файл hosts   анализируется до DNS или NIS), вы можете   измените его в / etc / hosts.

ЗАМЕТКИ

Имя хоста имен адресов пытается найти полное доменное имя,   псевдонимы    и сетевые адреса хоста определяются   конфигурация    вашего распознавателя. Например, в системах GNU Libc   распознаватель может    получить инструкции по проверке IPv6 сначала с помощью inet6   в файле /etc/resolv.conf.

FILES

/ etc / hosts / etc / hostname Этот файл должен содержать только имя домена   а не полное полное доменное имя.


12
2017-12-21 00:12



Я не думаю, что это так же ясно из справочной страницы, как вам кажется, но я думаю, что буду следовать советам на своем сервере. Благодарю. - RyanTM
"/ etc / hostname Этот файл должен содержать только имя домена, а не полное полное доменное имя.", кажется мне понятным ... но я согласен, это может сбить с толку. - Josh
Ой. Кажется, я случайно не прочитал это предложение. Я думал, что я так внимательно читаю его несколько раз. Я бы предложил снять этот приговор. - RyanTM


Джош указывает, что рекомендует 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, это означает, что ему не нужно пытаться добавить один или несколько доменов: имя однозначно.

Поэтому я бы сказал, что это действительно. Мне было бы очень интересно, если кто-то может продемонстрировать обратное.


6
2017-12-21 01:05



Вы правы, это не сложное и быстрое правило: я переключил свой ответ, потому что некоторые из моих серверов сделал иметь полное имя хоста в /etc/hostname! Только после того, как я ответил и искал ссылки, я понял, что иду против официальных документов. - Josh


С libnss-myhostname вы можете написать fqdn для /etc/hostname и сделать это. В противном случае вам также нужно отредактировать /etc/hosts чтобы сопоставить краткое имя и сопоставить его с полным именем (вы также можете поместить его в dns, но это не безопасно). Используя интерфейс обратной петли без по умолчанию, это выглядит так:

127.0.0.2 hostname.fully.qualified hostname

1
2017-12-16 15:00