hostname -f говорит: «hostname: указанное имя хоста недействительно». Имя хоста (FQDN), указанное в / etc / hostname, также указано в / etc / hosts и доступно для проверки связи. Фактический DNS-сервер еще не знает хоста. Это причина сообщения об ошибке или что-то еще? (ОС - Ubuntu 10.04 Server).
Обновление: регистрация хоста на DNS-сервере (чтобы имя можно было успешно разрешить через Интернет) не помогла.
Из эта ветка на форумах Ubuntu.
Очевидно, подчеркивание - недопустимый символ для имен хостов. У меня был один в моем имени хоста, и он дал мне ваше сообщение об ошибке. Может быть, у вас что-то похожее.
Проверьте конфигурацию:
/etc/host.conf
/etc/nsswitch.conf
host.conf должен иметь как минимум «упорядочить хосты, привязать», а nsswitch.conf должен иметь как минимум «hosts: files dns». Возможно, у вас что-то вышло из строя, что ищет только DNS, а не ваши локальные файлы?
hostname -f
полагается на работу DNS.
Что значит:
host `cat /etc/hostname`
Распечатать?
/ etc / hostname должен содержать только имя хоста, а не полное доменное имя.
Вы можете изменить свое имя хоста на /etc/hostname
или прямо из CLI как это:
echo "<desired_hostname>" > /etc/hostname hostname -F /etc/hostname
Для систем, которые его поддерживают (например, Ubuntu 18.04+), вы также можете использовать hostnamectl
как это:
hostnamectl set-hostname <desired_hostname>
Затем перезагрузитесь или войдите / выйдите из системы, и вы должны увидеть последнее имя хоста, независимо от недопустимых символов, таких как подчеркивания.