Як змінити ім'я хоста дистрибутива на основі RHEL?


19

Я ввійшов у перший раз, відкрив термінал і набрав "ім'я хоста". Він повернув "localhost.localdomain.com". Тоді я ввійшов як користувач root у терміналі за допомогою команди «su -», надав пароль кореневому користувачу та використав команду «hostname etest», де etest - це ім’я хоста, яке б я хотів мати у своїй машині. Щоб перевірити, чи правильно я змінив ім'я хоста, я знову набрав "ім'я хоста" на терміналі, і він повернувся etest.

Однак, коли я перезавантажую машину, ім'я хоста повертається до "localhost.localdomain.com".

Ось вся команда, яку я використовував у терміналі.

    [thomasm@localhost ~]$ hostname  
    localhost.localdomain  
    [thomasm@localhost ~]$ su -  
    Password:   
    [root@localhost ~]# hostname etest  
    [root@localhost ~]# hostname  
    etest

У мене виникли ті ж проблеми, коли я встановив RHEL та Ubuntu OS за допомогою VMPlayer.


@ Я новачок із ОС Linux. Якщо потрібно більше деталей, будь ласка, повідомте мене про це.
Томас

Відповіді:


28

На RHEL та похідних, таких як CentOS, вам потрібно відредагувати два файли, щоб змінити ім'я хоста.

Система встановлює ім'я хоста під час завантаження на основі HOSTNAMEрядка в /etc/sysconfig/network. nanoТекстовий редактор за замовчуванням встановлюється на RHEL і його похідних, і його використання є самоочевидним:

# nano /etc/sysconfig/network

Ви також повинні змінити ім'я у /etc/hostsфайлі. Якщо цього не зробити, певні команди раптом почнуть тривати більше часу. Вони намагаються знайти локальний IP-хост від імені хоста, і без входу /etc/hostsвін повинен пройти повний процес пошуку мережевих імен, перш ніж він зможе перейти далі. Залежно від налаштування DNS, це може означати затримку на хвилину або близько того!

Змінивши ці два файли, ви можете або запустити hostnameкоманду, щоб змінити копію імені хоста (який знову був встановлений з /etc/sysconfig/network), або просто перезавантажити.

Ubuntu відрізняється тим, що в ньому зберігається статична копія імені хоста /etc/hostname. З цього приводу багато аспектів конфігурації мережі зберігаються в різних місцях і з різними форматами файлів на Ubuntu порівняно з RHEL.


Дякуємо за розташування файлів. Я дійсно нічого не знаю про Linux або використання терміналу, тому мені потрібні детальні кроки, щоб використовувати текстовий редактор у терміналі. Звідси моя відповідь, розміщена нижче. Але дякую за розташування файлів, які мені потрібно було відредагувати.
Томас

4

Ви можете використовувати hostnamectl.

1. Встановіть ім'я хоста за допомогою:

# hostnamectl set-hostname etest

або

# hostnamectl set-hostname etest.something

2. Вихід та повернення в систему.

3. (Необов’язково) Щоб переглянути інші варіанти:

man hostnamectl

... hostnamectl доступний лише у RHEL 7 та CentOS 7.
Дейл Андерсон

2

Ось кроки, щоб змінити ім'я хоста машини CentOS (або будь-якої іншої похідної RHEL) за допомогою терміналу.

Відкритий термінал. Введіть su -, щоб увійти як корінь. Надавши пароль, введіть vi / etc / sysconfig / network. Це відкриє файл "мережа", використовуючи текстовий редактор vi в командному режимі. Наберіть 'i', щоб перейти в режим вставки vi. Перейдіть до розділу імені хоста у файлі та замініть localhost.localdomain на etest (або необхідне ім’я хоста). Натисніть "Esc", щоб вийти з режиму вставки та повернутися до командного режиму. У режимі командування: wq для збереження змін та виходу vi.

Якщо ви хочете вийти без збереження, введіть: q! в командному режимі.

Аналогічні дії можна виконати для редагування файлу / etc / hosts, якщо потрібно.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.