Jak zmienić nazwę hosta dystrybucji opartej na RHEL?

19

Zalogowałem się po raz pierwszy, otworzyłem terminal i wpisałem „nazwa hosta”. Zwrócił „localhost.localdomain.com”. Następnie zalogowałem się jako użytkownik root w terminalu, używając polecenia „su -”, podając hasło użytkownika root i użyłem polecenia „hostname etest”, gdzie etest to nazwa hosta, którą chciałbym, aby moja maszyna. Aby sprawdzić, czy moja nazwa hosta została zmieniona poprawnie, ponownie wpisałem „nazwa hosta” na terminalu i zwróciła etest.

Jednak po ponownym uruchomieniu komputera nazwa hosta powraca do „localhost.localdomain.com”.

Oto cała seria poleceń, których użyłem w terminalu.

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

Zetknąłem się z tym samym problemem, kiedy konfigurowałem RHEL i Ubuntu OS z VMPlayerem.

Tomasz
źródło
@ Jestem nowicjuszem w systemie Linux. Jeśli potrzebujesz więcej informacji, daj mi znać.
Thomas

Odpowiedzi:

28

W przypadku RHEL i pochodnych, takich jak CentOS, musisz edytować dwa pliki, aby zmienić nazwę hosta.

System ustawia swoją nazwę hosta podczas uruchamiania na podstawie HOSTNAMElinii w /etc/sysconfig/network. nanoEdytor tekstu jest domyślnie zainstalowany na RHEL i jej pochodnych, a jego użycie jest oczywista:

# nano /etc/sysconfig/network

Musisz także zmienić nazwę w /etc/hostspliku. Jeśli tego nie zrobisz, niektóre polecenia nagle zaczną działać dłużej. Próbują znaleźć adres IP hosta lokalnego z nazwy hosta i bez wpisu /etc/hostsmusi przejść pełny proces wyszukiwania nazwy sieci, zanim będzie mógł przejść dalej. W zależności od konfiguracji DNS może to oznaczać około minutowe opóźnienia!

Po zmianie tych dwóch plików możesz albo uruchomić hostnamekomendę, aby zmienić kopię nazwy hosta w czasie wykonywania (która ponownie została ustawiona /etc/sysconfig/network) lub po prostu zrestartować komputer.

Ubuntu różni się tym, że przechowywana jest statyczna kopia nazwy hosta /etc/hostname. W związku z tym wiele aspektów konfiguracji sieci jest przechowywanych w różnych miejscach i przy użyciu różnych formatów plików w systemie Ubuntu w porównaniu do RHEL.

Warren Young
źródło
Dzięki za lokalizację plików. Naprawdę nie wiem nic o Linuksie ani używaniu terminala, dlatego potrzebowałem szczegółowych kroków, aby użyć edytora tekstu w terminalu. Stąd moja odpowiedź opublikowana poniżej. Ale dziękuję za lokalizację plików, które musiałem edytować.
Thomas
4

Możesz użyć hostnamectl.

1. Ustaw nazwę hosta za pomocą:

# hostnamectl set-hostname etest

lub

# hostnamectl set-hostname etest.something

2. Wyloguj się i zaloguj ponownie.

3. (Opcjonalnie) Aby zobaczyć więcej opcji:

man hostnamectl
jtlindsey
źródło
... hostnamectl jest dostępny tylko w RHEL 7 i CentOS 7.
Dale Anderson
2

Oto kroki, aby zmienić nazwę hosta maszyny CentOS (lub dowolnej innej pochodnej RHEL) za pomocą terminala.

Otwórz terminal. Wpisz su -, aby zalogować się jako root. Po podaniu hasła wpisz vi / etc / sysconfig / network. Spowoduje to otwarcie pliku „sieciowego” za pomocą edytora tekstu vi w trybie poleceń. Wpisz „i”, aby przejść do trybu wstawiania vi. Przejdź do sekcji nazwy hosta pliku i zastąp localhost.localdomain etest (lub wymaganą nazwą hosta). Naciśnij „Esc”, aby wyjść z trybu wstawiania i wrócić do trybu poleceń. W trybie komend wpisz: wq, aby zapisać zmiany i wyjść z vi.

Jeśli chcesz wyjść bez zapisywania, wpisz: q! w trybie komend.

W razie potrzeby można wykonać podobne kroki, aby edytować plik / etc / hosts.

Tomasz
źródło