Вопрос: Установка нового имени хоста в CentOS, он возвращается после перезапуска


На CentOS (5.x) У меня есть VPS, у которого есть имя хоста, установленное на «olddomain.com», по крайней мере, это домен, который я получаю при вводе команды «hostname».

Я хочу изменить его на localhost.localdomain, потому что я думаю, что он более общий и надежный.

localhost.localdomain уже существует в этих файлах: / etc / sysconfig / network AND / etc / hosts

NETWORKING=yes
NETWORKING_IPV6=no
HOSTNAME=localhost.localdomain
GATEWAY=95.xx.xx.xx

А ТАКЖЕ

# Do not remove the following line, or various programs
# that require network functionality will fail.
127.0.0.1               localhost.localdomain localhost
::1             localhost6.localdomain6 localhost6

Поэтому я попробовал следующие команды:

hostname localhost.localdomain

А ТАКЖЕ

hostname -v localhost.localdomain

Команда «hostname» теперь возвращает это новое значение. Но после перезагрузки он возвращается к olddomain.com или по крайней мере это возвращает команда «hostname».

Что-нибудь еще для редактирования?


6
2018-01-11 14:37


Источник


Вы также изменили имя / etc / hostname? - clmssz
Включен ли NetworkManager? Если это так, NM иногда будет мешать вашей ручной конфигурации. Сделайте chkconfig NetworkManager --list чтобы убедиться, что он включен. - Stefan Lasiewski
В нем говорится: NetworkManager 0: выкл. 1: выкл. 2: выкл. 3: выкл. 4: выкл. 5: выкл. 6: выкл. - adrianTNT
@spud вы имеете в виду файл / etc / hosts? Я не редактировал его, потому что он уже содержит «localhost.localdomain». - adrianTNT


Ответы:


Добавьте следующие строки в свой /etc/sysctl.conf Файл конфигурации.

kernel.hostname = hostname
kernel.domainname = domain.com

И выполните команду sysctl -p /etc/sysctl.conf читать и применять изменения /etc/sysctl.conf Файл конфигурации.


7
2018-01-11 16:42



Правильно ли это? kernel.hostname = localhost; kernel.domainname = localhost.localdomain - adrianTNT
На самом деле, нет. Во-первых, не требуется пол-двоеточия. Во-вторых, каждый параметр должен быть в отдельной строке. В-третьих, нет смысла иметь FQHN «localhost.localhost.localdomain». - bintut


Вы редактировали файл / etc / sysconfig / network? Или вы просто показываете его содержимое? Команда hostname фактически не редактирует эти файлы. Когда система запускает сценарии инициализации, прочитайте имя хоста из файлов конфигурации, и этот параметр затем передается команде hostname. В дополнение, как упоминалось в других сообщениях, обязательно отредактируйте свой файл hosts так, чтобы сопоставление для вашего имени хоста <-> ip было правильным на локальном хосте.

Дополнительная информация доступна в Документация Red Hat

Также вы используете Network Manager для управления сетевыми интерфейсами? Если это так, вам нужно будет отправиться в NM и убедиться, что настройки там тоже есть.


2
2018-01-11 16:40



Я не пользовался сетевым менеджером. Я смог решить эту проблему после изменения двух конфигурационных файлов на другое значение, после чего перезагрузился, а затем вернулся к localhost.localdomain, и он остался таким. Благодарю. - adrianTNT


Я не редактировал файлы /etc/sysconfig/network а также /etc/hosts потому что эти уже содержится имя хоста, которое я хотел (localhost.localdomain), поэтому просто по команде hostname localhost.localdomain он не сохранился после перезагрузки.

Но то мой хост отредактировал эти два файла на другое имя хоста, перезагрузил сервер (без какой-либо другой команды, просто редактировался) и новое имя хоста было применено и оставалось изменено. Затем я снова отредактировал файлы и установил их в localhost.localdomain, поскольку они находятся на каком-то другом моем VPS, и теперь они обновились и остались на локальном хосте, как я хотел.


2
2018-01-12 10:07





Я уверен, что /etc/sysconfig/network не рекомендуется. Пытаться /etc/sysconfig/networking/profiles/default/hosts а также /etc/sysconfig/networking/profiles/default/network,


0
2018-01-11 14:41



/ etc / sysconfig / networking / profiles / default / hosts - это то же самое, что и предыдущие хосты (в нем нет old_domain), а второй не существует: / etc / sysconfig / networking / profiles / default / network - adrianTNT
/etc/sysconfig/network не является устаревшим. Это правильное место для установки некоторых настроек. Видеть docs.redhat.com/docs/en-US/Red_Hat_Enterprise_Linux/5/html/... - Stefan Lasiewski