Как поменять название хоста в shell

  • 2 Декабрь, 2012

У меня появилось 3 сервера, все на том же hetzner. Тк по умолчанию названия у них почти одинаковые (название ОС + архитектуры) можно запутаться с каким сервером работаешь в shell. Чтобы этого избежать выполняем такую команду:

hostname SOMENAME

После чего, перезагружаем shell (у меня — bash):

exec bash -l

к слову, стандартная перезагрузка (shell source ~/.bashrc) не изменяет название хоста.
К сожалению приведенные выше команды изменяют название до следующей перезагрузки ОС. Чтобы сделать изменения перманентными — задаем необходимое название в этом файле:

/etc/hostname

После этого, перезапуск apache может выдать такую ошибку: «apache2: apr_sockaddr_info_get() failed for somename» — пропишите в /etc/hosts строку «127.0.0.1 somename».
У вас также может быть ошибка «apache2: Could not reliably determine the server’s fully qualified domain name, using 127.0.0.1 for ServerName» чтобы избавиться добавьте строку ServerName localhost в файл /etc/apache2/httpd.conf .
В итоге у меня все работает по такому принципу: я даю серверу имя в панели управления hetzner, затем прописываю это имя в конфиге ssh (статья как работать с ssh) и наконец: изменяю имя хоста на самом сервере, как я описал выше.