Opensourcetechブログ

OpensourcetechによるNGINX/Kubernetes/Zabbix/Neo4j/Linuxなどオープンソース技術に関するブログです。

CentOS7 のホスト名設定について(hostname / nmcli / nmtui / hostnamectl / uname)

 

こんにちは、鯨井貴博@opensourcetechです。

 

今回は、CentOS7におけるホスト名の確認や変更・設定ファイルなどについてみていきます。

 

CentOS6とCentOS7のホスト名設定の違い

CentOS6の場合、

以下のように /etc/sysconfig/networkにあるHOSTNAME変数がホスト名になります。

[root@localhost ~]# hostname
localhost.localdomain
[root@localhost ~]# cat /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=localhost.localdomain・・・ここです!
NTPSERVERARGS=iburst

 

 CentOS7の場合、/etc/hostnameに変更されています。

[root@localhost ~]# hostname
localhost.localdomain
[root@localhost ~]# cat /etc/sysconfig/network
# Created by anaconda・・・/etc/sysconfig/networkにはない!
[root@localhost ~]# cat /etc/hostname
localhost.localdomain・・・ここです!

 

ホスト名の確認

CentOS7では、

hostname や uname の他に hostnamectl を使用しホスト名確認ができます。

[root@localhost ~]# hostname
localhost.localdomain
[root@localhost ~]# hostnamectl status
Static hostname: localhost.localdomain・・・ここ!
Icon name: computer-vm
Chassis: vm
Machine ID: 68be80e92f0047bcae0a83e5cec82c25
Boot ID: 45754605f995467ca4cd29647f10db2c
Virtualization: kvm
Operating System: CentOS Linux 7 (Core)
CPE OS Name: cpe:/o:centos:centos:7
Kernel: Linux 3.10.0-693.el7.x86_64
Architecture: x86-64
[root@localhost ~]# uname -a
Linux localhost.localdomain 3.10.0-693.el7.x86_64 #1 SMP Tue Aug 22 21:09:27 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux

 

 

一時的なホスト名の変更

CentOS7において、

一時的なホスト名変更をする場合、hostnameコマンドを使用します。

なお、/etc/hostname内の設定を上書きすることはないので、

再起動等で元の状態に戻すことができます。

[root@localhost ~]# hostname www.testserver.local・・・ホスト名変更
[root@localhost ~]# hostname
www.testserver.local
[root@localhost ~]# cat /etc/hostname
localhost.localdomain・・・変わっていない

 

 

恒久的なホスト名の変更

CentOS7において、

恒久的にホスト名変更をする場合、いくつかの方法があります。

 

①/etc/hostnameを書き換える

 お好きなエディターで書き換えてください。そのやんけという声が聞こえてきそうです(笑

 なお、プロンプトの表示については一度ログアウトして、再ログインすれば変更されます。

 

②hostnamectlコマンドを使用する

 hostnamectl set-hostnameで変更します。

   なお、細かい話になりますがホスト名は --static / --transient / --prettyの3種類があります。

   --static:/etc/hostnameに記載されるホスト名

  --transient:カーネルによって保持される一時的なホスト名

  --pretty:自由形式のUTF8ホスト名

  なお、プロンプトの表示については一度ログアウトして、再ログインすれば変更されます。

[root@localhost ~]# hostnamectl --help
hostnamectl [OPTIONS...] COMMAND ...

Query or change system hostname.

-h --help Show this help
--version Show package version
--no-ask-password Do not prompt for password
-H --host=[USER@]HOST Operate on remote host
-M --machine=CONTAINER Operate on local container
--transient Only set transient hostname
--static Only set static hostname
--pretty Only set pretty hostname

Commands:
status Show current hostname settings
set-hostname NAME Set system hostname
set-icon-name NAME Set icon name for host
set-chassis NAME Set chassis type for host
set-deployment NAME Set deployment environment for host
set-location NAME Set location for host
[root@localhost ~]# hostnamectl status --static
localhost.localdomain・・・/etc/hostnameにあるホスト名
[root@localhost ~]# hostnamectl status --transient
www.testserver.local・・・一時的なホスト名
[root@localhost ~]# hostnamectl status --pretty

         ・・・自由形式のホスト名(ここでは設定されていない)

[root@localhost ~]#

 設定を変更してみると、

--static と --transient のみが影響を受けていることがわかります。

[root@localhost ~]# hostnamectl set-hostname centos7server
[root@localhost ~]# hostnamectl status
Static hostname: centos7server・・・変更された
Icon name: computer-vm
Chassis: vm
Machine ID: 68be80e92f0047bcae0a83e5cec82c25
Boot ID: 45754605f995467ca4cd29647f10db2c
Virtualization: kvm
Operating System: CentOS Linux 7 (Core)
CPE OS Name: cpe:/o:centos:centos:7
Kernel: Linux 3.10.0-693.el7.x86_64
Architecture: x86-64
[root@localhost ~]# cat /etc/hostname
centos7server
[root@localhost ~]# hostnamectl status --static
centos7server・・・変更された
[root@localhost ~]# hostnamectl status --transient
centos7server・・・変更された
[root@localhost ~]# hostnamectl status --pretty

       ・・・変更されず

[root@localhost ~]#

 

 ③nmcliコマンドを使用する

    nmcliを使って変更した場合、/etc/hostnameも併せて変更されます。

    なお、プロンプトの表示については一度ログアウトして、再ログインすれば変更されます。

[root@localhost ~]# nmcli general hostname testserver
[root@localhost ~]# hostname
testserver・・・変更された
[root@localhost ~]# cat /etc/hostname
testserver・・・変更された

 

 

④nmtuiコマンドを使用する

    nmtuiを使って変更した場合、/etc/hostnameも併せて変更されます。

    なお、プロンプトの表示については一度ログアウトして、再ログインすれば変更されます。

[root@localhost ~]# nmtui

タンジブルUI(テキストUI)で設定変更します。

f:id:opensourcetech:20180508160352p:plain

f:id:opensourcetech:20180508160403p:plain

f:id:opensourcetech:20180508160413p:plain

f:id:opensourcetech:20180508160417p:plain

[root@localhost ~]# hostname
tekito_server・・・変更された
[root@localhost ~]# cat /etc/hostname
tekito_server・・・変更された

 

 

www.slideshare.net

github.com

www.facebook.com

twitter.com

www.instagram.com

 

 

にほんブログ村 IT技術ブログ Linuxへ
Linux

にほんブログ村 IT技術ブログ オープンソースへ
オープンソース

 

Opensourcetech by Takahiro Kujirai