はじめに
以前の記事にてこのようなご質問を頂きました。
【以前の記事】
【Linux】インフラエンジニアの僕が「hostname」コマンドを使わない理由とは?
申し訳ございませんが、FQDNまで考慮しておりませんでした。(業務にてFQDNまで確認するシチュエーションがなかったため。)
せっかくなので、検証してみようと思います。
今回検証するOS等の情報
[root@tspdev01 ~]# cat /etc/redhat-release
CentOS Linux release 7.8.2003 (Core)
[root@tspdev01 ~]#
※事前に/etc/hostname
をこのようにしました。
[root@tspdev01 ~]# cat /etc/hostname
tspdev01.example.com
[root@tspdev01 ~]#
**「そもそもrootユーザーでやらないだろ!」** そのような声もよくわかります。(既存サーバには、基本的にrootログインしません。)
しかし、今回は検証用のためrootユーザーでやってみたいと思います。
そもそも、「hostname -f」の出力結果とは?
hostname -f
[root@tspdev01 ~]# hostname -f
tspdev01.example.com
[root@tspdev01 ~]#
実行結果を確認すると、FQDN(tspdev01.example.com)
にて表示されております。
#他のコマンドで試してみる
他のコマンドでFQDNを確認してみたいと思います。
質問にあったコマンドにて実行
質問にあったコマンドを実行してみる。
echo `uname -n`.`dnsdomainname`
実行結果は、こんな感じです。
[root@tspdev01 ~]# echo `uname -n`.`dnsdomainname`
tspdev01.example.com.example.com
[root@tspdev01 ~]#
結果、ドメインが2回表示されています。
「uname -n」にて実行してみる
こちらのコマンドにて実行
uname -n
実行結果はこちらになります。
[root@tspdev01 ~]# uname -n
tspdev01.example.com
[root@tspdev01 ~]#
FQDNにて表示されました!
ホスト名を短縮名で表示してみる
通常のホスト名の短縮名表示
hostname -s
実行結果はこちらになります。
[root@tspdev01 ~]# hostname -s
tspdev01
[root@tspdev01 ~]#
ホスト名の短縮系のみ表示される。
awkを使った短縮ホスト名確認方法
uname -n | awk -F "." '{print $1}'
実行結果はこちらになります。
[root@tspdev01 ~]# uname -n | awk -F "." '{print $1}'
tspdev01
[root@tspdev01 ~]#
このように、短縮されたホスト名のみ表示させることができます。
※tspdev01.example.com
の.
で区切っています。
ドメイン名のみ確認
通常のドメイン名確認方法
hostname -d
実行結果は、こちらになります。
[root@tspdev01 ~]# hostname -d
example.com
[root@tspdev01 ~]#
安全なドメイン名確認方法
echo `dnsdomainname`
実行結果は、こちらになります。
[root@tspdev01 ~]# echo `dnsdomainname`
example.com
[root@tspdev01 ~]#
ドメイン名のみ表示されております。
まとめ
FQDNでの表示方法
uname -n
短縮ホスト名のみ表示
uname -n | awk -F "." '{print $1}'
ドメイン名のみ表示
echo `dnsdomainname`
おそらく、他にも方法があると思われます。
まだまだ勉強不足なので、これからもキャッチアップしていく所存です。