Centos 6 изменить hostname

Обновлено: 02.07.2024

. тогда я делаю свой /etc/sysconfig/network файл так .

. тогда я бегу hostname так .

. а потом я запускаю Bash и все, кажется, хорошо .

. но когда я перезагружаю свою сеть, возвращается старое имя хоста:

. Я не могу понять это. Что я тут не так делаю.

Может быть, вещь Centos. Что ваша страница руководства говорит вам о постоянстве, о том hostname somename , что она имеет длительный эффект? (если нет, почему вы делаете этот звонок?) Я думаю, что /etc/hostname в CentOS 7, но не в CentOS 6. Я понимаю, что это старый, но я чувствую запах NetworkManager на работе, либо у вас может быть HOSTNAME = установлено в другом файле, чем в сети (т. Е. В сетевых скриптах). Файл / etc / hostname не используется в CentOS 6 (это системная вещь; это означает CentOS 7 и выше). Проверьте содержимое файла / etc / sysconfig / network-scripts / ifcfg-eth0; что в нем? Примечание. Если вы посмотрите на скрипт if_post Redhat в network-scripts /, вы увидите, что set_hostname просто запускает «hostname $ HOSTNAME», где HOSTNAME - это переменная оболочки, установленная либо в сетевом файле, либо в файле ifcfg-eth0.

Для постоянного изменения имени хоста вам необходимо изменить его в двух местах:

и: хорошая идея, если у вас есть какие-либо приложения, которые должны разрешить IP-адрес имени хоста)

В конце этого двух изменений добавьте hostname newHostName , перезагрузка не нужна, я думаю Ответ принят, но, во-первых, /etc/hosts изменение заключается только в том, чтобы сделать имя хоста разрешаемым, а не изменить его, и /etc/sysconfig/network выглядит так же, как в OP. Может кто-нибудь объяснить, что именно ОП нужно изменить, чтобы он работал? Я думаю, что правильный ответ должен работать как ответ на вопрос. Повторять данные из вопроса хорошо, если в ответе сказано, что OP настроил его правильно, но не выполнил действия, необходимые для загрузки новой конфигурации (например, перезагрузка).

Решение для CentOS 7 можно найти здесь :

«hostnamectl» был единственным рабочим решением для меня в выпуске CentOS Linux 7.2.1511 Я не думаю, что вам нужно перезагрузить компьютер, просто войдите в систему, и это сработает Вопрос про CentOS 6.5. CentOS 7 - совершенно другой зверь, и этот ответ здесь не относится.

Вы можете изменить свое имя хоста с помощью одной команды.

  • Команда: hostname - отображает старое имя хоста
  • Команда: hostname <new name> -это устанавливает новое имя хоста

пример

Для сохранения нового имени хоста при перезагрузке

отредактируйте файл / etc / sysconfig / network так, как показано ниже

Для помощи видео

Я считаю, что это самый правильный ответ. Стоит добавить, что работает: man hostname; показывает больше возможностей для настройки довольно, переходного, статического и т. д. Я думаю, что этого недостаточно, чтобы быть настойчивым при перезагрузке. Вам также необходимо изменить файл / etc / sysconfig / network.

CentOS 7 также имеет инструмент текстового интерфейса пользователя для изменения имени хоста ( и других сетевых настроек ), часть Network Manager:

запускает этот пользовательский интерфейс:

введите описание изображения здесь

который имеет возможность Set system hostname .

Текстовый пользовательский интерфейс NetworkManager установлен по умолчанию в образе CentOS-7-x86_64-DVD-1511.iso, базовая установка. Если у вас его нет, вы можете установить его с помощью следующей команды:

Я должен был сделать это для нескольких машин. Вот простой скрипт на Python, который поможет вам. Просто укажите имя нового хоста в качестве первого аргумента скрипта.

например: если вы назовете скрипт changeHost.py, запустите его как

где NewHostName - желаемое имя хоста.

Также убедитесь, что этот скрипт запущен от имени пользователя root.

Хм, это ужасный сценарий. Интересно, будет ли Puppet лучшим инструментом для работы с именем хоста? Этот скрипт примерно в 3 раза дольше, чем нужно. Python - неподходящий инструмент для работы. Сценарий bash будет намного короче, удобочитаемее и удобнее в обслуживании.

Для изменения имени хоста в CentOS 6.5 перезагрузка не требуется.

Следующая команда информирует ядро ​​о новом имени хоста:

Следующая команда, чтобы имя хоста было постоянным при перезагрузке:

Если вы находитесь на Centos 7.x. Вставьте следующую команду.

Он будет иметь возможность установить системное имя хоста . Нажмите Enter на нем.

Имя хоста — это уникальная метка, которая идентифицирует машину в сети.

Должна существовать таблица соответствия между hostname и IP адресом это нужно для для маршрутизации пакетов.

Хост может иметь несколько имён, но предпочтительным является вариант, когда имя одно.

Существует три класса hostname : static , pretty и transient .

Так как CentOS 7 поддреживает только Fully Qualified Domain Names (FQDNs), советую тщательно проверить hostname, который вы планируете использовать.

  • Строчные буквы от a до z
  • Цифры от 0 до 9
  • Точки и дефисы
  • Hostnames может быть от 2 до 63 символов
  • Hostnames должен начинаться и заканчиваться цифрой или буквой

Узнать имя своего хоста

Существует несоколько способов узнать имя своего хоста.

Часто для этого достаточно просто посмотреть в терминал

Пример моего терминала

[andrei@ localhost Downloads]$

andrei - это имя пользователя

localhost - это имя хоста

Downloads - имя текущей директории

Посмотреть порядок можно выполнив

W - Working Directory - Рабочая диретория

Static hostname: localhost.localdomain Icon name: computer-vm Chassis: vm Machine ID: 35e254eda578c54084b96e06d5f285cf Boot ID: afb44fef8d764f30bb89550849b02fde Virtualization: kvm Operating System: CentOS Linux 7 (Core) CPE OS Name: cpe:/o:centos:centos:7 Kernel: Linux 3.10.0-1160.36.2.el7.x86_64

Изменить имя хоста

С помощью команды hostname

hostname dns-server
hostname

Если заново открыть терминал изменения будут видны в командной строке.

Это имя хоста сохранится только до перезагрузки системы

Если выполнить hostnamectl видно, что помянелось только динамическое имя хоста

Если изучить файл hostname , также можно увдиеть отсутствие изменений.

С помощью hostnamectl

Это постоянное изменение. Т.е. новое имя хоста имеет класс persistent.

pretty name

Чтобы задать pretty name нужно воспользоваться кавычками

Появилось pretty hostname а static hostname такое же , но без запрещенных символов

hosts

Изучить информацию об именах других хостов можно в файле hosts

В моём примере в сети есть два хоста:

Зайдём на него с помощью ssh и посмотрим, есть ли у него записи об именах других хостов в сети.

Для наглядности я теперь буду показываеть приглашение терминала чтобы было видно имя хоста.

Выполним ping по IP

PING 192.168.56.149 (192.168.56.149) 56(84) bytes of data. 64 bytes from 192.168.56.149: icmp_seq=1 ttl=64 time=0.650 ms 64 bytes from 192.168.56.149: icmp_seq=2 ttl=64 time=0.731 ms ^C --- 192.168.56.149 ping statistics --- 2 packets transmitted, 2 received, 0% packet loss, time 1000ms rtt min/avg/max/mdev = 0.650/0.690/0.731/0.048 ms

По IP пингуется успешно

И ping по hostname

Это неудивительно - ведь в файле hosts нет про него никаких записей. Проверим содержимое:

127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6

Теперь всё работает

alias

Чтобы не писать длинные имена хостов можно придумать alias

FQDN - Fully Qualified Domain Name - полностью определённое имя домена.

Хоть пинг и был по алиасу, ответ идёт как от static fqdn

В таком случае ответ будет идти от vbdns

PING vbdns (192.168.56.149) 56(84) bytes of data. 64 bytes from vbdns (192.168.56.149): icmp_seq=1 ttl=64 time=0.721 ms 64 bytes from vbdns (192.168.56.149): icmp_seq=2 ttl=64 time=1.01 ms ^C --- vbdns ping statistics --- 2 packets transmitted, 2 received, 0% packet loss, time 1004ms rtt min/avg/max/mdev = 0.721/0.866/1.012/0.148 ms

. тогда я делаю свой файл /etc/sysconfig/network таким образом .

. тогда я запускаю hostname , как это .

. и затем я запускаю bash, и все кажется хорошо .

. но при перезагрузке сети возвращается старое имя хоста:

. Я не могу понять. Что я делаю неправильно здесь.

, чтобы изменить имя хоста постоянно, вам нужно изменить его в двух местах:

и: хорошая идея, если у вас есть приложения, которым необходимо разрешить IP-адрес имени хоста)

Решение для CentOS 7 можно найти здесь:

Вы можете изменить имя хоста одной командой.

  • Команда: hostname - отображает старое имя хоста
  • Команда: hostname <new name> - это устанавливает новое имя хоста

Пример

Для сохранения нового имени хоста при перезагрузке

отредактируйте файл /etc /sysconfig /network , чтобы он выглядел ниже

Для справки по видео

CentOS 7 также имеет текстовый интерфейс для изменения имени хоста ( и других сетевых параметров ), часть Network Manager:

запускает этот пользовательский интерфейс:

 введите описание изображения здесь>> </a> </p> <p>, у которого есть опция <code>Установить системное имя хоста</code>. </p> <p> Текстовый пользовательский интерфейс NetworkManager устанавливается по умолчанию в файле CentOS-7-x86_64-DVD-1511.iso, базовая установка. Если у вас его нет, вы можете установить его с помощью следующей команды: </p> <pre><code>yum install NetworkManager-tui </code></pre></body></html>

Я должен был сделать это для кучки машин. Вот простой скрипт python, который поможет вам. Просто укажите имя нового хоста в качестве первого аргумента сценария.

например: если вы назовете скрипт changeHost.py, запустите его как

, где NewHostName - ваше имя хоста.

Также запустите этот скрипт как root.

Если вы находитесь на Centos 7.x. Вставьте следующую команду.

У него будет опция установить системное имя хоста . Нажмите Enter на нем.

Favorite

Добавить в избранное

Главное меню » Операционная система Ubuntu » Как изменить имя хоста на CentOS и Ubuntu

Как изменить имя хоста на CentOS и Ubuntu

И мя хоста используется для идентификации сервера, когда он подключен к сети и настроен при первоначальной настройке сервера. Изменение начального имени хоста сервера является задачей, которую вы могли бы выполнить при использовании сервера и на этом уроке мы покажем вам, как изменить имя хоста на Linux VPS под управлением CentOS 7 или Ubuntu 16.04 в качестве операционной системы.

Что такое имя хоста?

Hostname является меткой, используемой для идентификации машины и поможет вам легко отличить сервер от другого. Имя хоста должно быть полным доменным именем (FQDN) и должен указывать на IP-адрес сервера, так что вы можете получить доступ к серверу, используя его.

Проверьте текущее имя хоста

Изменение имени хоста является довольно простым процессом, и требует всего несколько минут вашего времени. Вам нужно будет подключиться к серверу через SSH, чтобы быть в состоянии сделать это изменение. Если вы не знаете, как подключиться к серверу через SSH, вы можете использовать наш гид, который доступен здесь.

После того как вы войдете, вам необходимо определить текущее имя хоста. Если вы используете CentOS 7 VPS или Ubuntu 16.04 VPS, вы можете использовать команду hostnamectl .

Вывод должен быть похож на результат ниже:

Значение static hostname это значение на которое вы должны смотреть.

Изменение текущего имени хоста

Чтобы изменить имя хоста на вашей машине CentOS или Ubuntu, вы должны выполнить следующую команду:

Дополнительные параметры командной строки

Для получения дополнительных опций команды вы можете добавить флаг --help в конце.

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Читайте также: