Назад | Перейти на главную страницу

Имя хоста не меняется (Ubuntu 14.04)

Когда я настраиваю VPS, я устанавливаю имя «main», чтобы в моих файлах / etc / hosts и / etc / hostnames была одна запись (то есть «main»). Итак, я установил root-доступ по ssh и набрал «hostname», и он дал мне «main». То же самое, когда я набираю "hostname -f".

Ну, я пытаюсь настроить Exim4 для отправки почты из моего приложения Django (мне нужно только отправлять, а не получать), и я добавил следующее в /etc/hosts.

127.0.1.1 main.mydomain.com main
<myip> main.mydomain.com main

Затем я казнил service hostname restart и hostname -f только вернулся main. Я даже перезагрузился (чего я стараюсь избегать), но он все равно возвращается main. Не уверен, почему это так ... В самих файлах отображаются мои новые записи, но я не могу получить фактические hostname или hostname -f Приказ измениться ради моей жизни.

Я предполагаю, но не уверен на 100%, поэтому, когда использую команду echo test message | mail -s test email@email.com Я не получаю письмо на email@email.com (слишком много писем?). Если не обязательно настраивать имена хостов для использования exim, я бы хотел избежать этого, потому что это доставило мне такую ​​головную боль.

Любая помощь сделает меня бесконечно благодарным за ваше великолепие.

Чтобы установить имя домена, вы можете использовать одноименную программу domainname:

sudo domainname example.com

Чтобы запросить фактически установленное значение, вызовите его без параметров.

Также добавьте необходимость запустить hostname.sh скрипт (зависит от ОС), чтобы изменения вступили в силу:

/etc/init.d/hostname.sh

В Debian и производных есть также /etc/mailname который должен содержать домен отправителя по умолчанию для исходящих писем.

Я не могу сделать заявление о Exim, но я думаю, что значения по умолчанию в exim для host- и domainame должны указывать на настройки ОС.

Чтобы процитировать справочную страницу hostname:

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

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

Технически: полное доменное имя - это имя, возвращаемое getaddrinfo (3) для имени хоста, возвращаемого gethostname (2). Доменное имя DNS - это часть после первой точки.

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

Если почта отправляется через postfix, вам также следует отредактировать /etc/postfix/main.cf иметь правильное значение для myhostname = xyz