改めて、hostnameとuname -n
以前Linuxサーバのホスト名を確認するコマンドとして、「hostnameは何かと問題が
あるからuname -nにするべきだ」という話をチラッと耳にしたことがあり、その時は
「そういうものか」と流してしまったのだが、はて、実際はどうなんだろう?
以前の投稿でhostnameやuname -nについて書いており、当時は先ほどの話があったため、
なんとなくこの2つは違うものだと思っていたのだが….
こちらを参照したところ、hostnameはunameへのラッパーらしいのだ。
つまり、hostnameはuname -nを参照しているだけ。
その辺、ググっても他にあまり詳しい話が出てこないので、深追いはしないでおいたけど、
うーん、ならば、hostnameでもuname -nでも同じじゃないか?
(でもオリジナルがunameなら、やはりunameの方がいいような気も。。)
で、unameは/etc/sysconfig/networkファイルに記述されたホスト名を参照しているらしい。
(Red Hat系の場合。他のディストリビューションだと、/etc/hostnameとか)
ちなみにホスト名を恒久的に定義するには、/etc/sysconfig/network
ファイルに HOSTNAME=open-groove.net などと記述し、再起動する。
…と、ここまで書いてちょっと気になるページを発見。
こちらの記事UNIXコマンド hostnameによると、hostnameコマンドにより誤った
ホスト名に変更してしまう恐れがあるためunameを推奨する場合もあるとか。
引数なしでhostnameを実行するつもりが、手元がくるって変なキーを押してしまったら…
ってっことか!?なるほど〜。
まとめると、hostnameコマンドはuname -nから情報を取得しており、unameは設定
ファイルから情報を取得している、と。これでいいだろうか。
これらの動きにはまだ疑問点が残るのだが、今回はこれ以上追求しないでおく。
Linuxについては、他にも知りたいことが沢山ありすぎるので…
関連記事:
hostname
unameいろいろ