はじめに
一昨日、このような記事を投稿したところ、有難いことに反響が大きかったです。
【Linux】インフラエンジニアの僕が「hostname」コマンドを使わない理由とは?
今回の記事では、Linuxでのhostname
コマンド以外のホスト名確認方法について紹介していきたいと思います。
hostnameコマンド以外のホスト名確認方法
uname -n
uname
とはシステム情報を表示するコマンドになります。
こちらのコマンドに、-n
のオプションを付けると、ホスト名を表示させることができます。
uname -n
[root@tspdev01 ~]# uname -n
tspdev01
[root@tspdev01 ~]#
hostnamectl status
Linux7系(RHEL/CentOS)にて使用できるホスト名確認コマンドになります。
hostnamectl status
[root@tspdev01 ~]# hostnamectl status
Static hostname: tspdev01
Icon name: computer-vm
Chassis: vm
Machine ID: 4ac15a471f30914187be09916857cdb9
Boot ID: bedcdc6861c34bc5881a2ddb91c7955c
Virtualization: kvm
Operating System: CentOS Linux 7 (Core)
CPE OS Name: cpe:/o:centos:centos:7
Kernel: Linux 3.10.0-1127.13.1.el7.x86_64
Architecture: x86-64
[root@tspdev01 ~]#
echo $HOSTNAME
変数HOSTNAMEの値を確認することによって、ホスト名を確認することができます。
echo $HOSTNAME
[root@tspdev01 ~]# echo $HOSTNAME
tspdev01
[root@tspdev01 ~]#
【番外編】テストユーザーを作成して「hostname i」と実行してみる。
ホスト名がi
になるのか検証してみます。
OSはこちらになります。
[dev@tspdev01 ~]$ cat /etc/redhat-release
CentOS Linux release 7.8.2003 (Core)
[dev@tspdev01 ~]$
1.ユーザー作成
devユーザーを作成する。
useradd -m dev
[root@tspdev01 ~]# useradd -m dev
[root@tspdev01 ~]#
2.作成したユーザーにパスワードを設定
devユーザーにパスワードを設定する。
passwd dev
[root@tspdev01 ~]# passwd dev
ユーザー dev のパスワードを変更。
新しいパスワード:
新しいパスワードを再入力してください:
passwd: すべての認証トークンが正しく更新できました。
[root@tspdev01 ~]#
3.devユーザーにスイッチ
rootユーザーからdevユーザーにスイッチします。
su - dev
[root@tspdev01 ~]# su - dev
[dev@tspdev01 ~]$
4.hostname i
と実行する。
[dev@tspdev01 ~]$ hostname i
hostname: you must be root to change the host name
[dev@tspdev01 ~]$
結果的に、rootユーザーが求められて変更できませんでした。
まとめ
○hostname
コマンド以外のホスト名確認コマンド
- uname -n
- hostnamectl status
- echo $HOSTNAME
○一般ユーザーでhostname i
を入力するとどうなる?
root権限が求められ、ホスト名が変更できなかった。
参考記事
変数 HOSTNAME
6.3. HOSTNAMECTL を使用したホスト名の設定
実は簡単!Linuxユーザの作成方法と追加方法