7 hostname の結果について

たくさんの Mac を使っている。 デスクトップ型のものは基本的に常時電源ONで、 リモートログインとかして利用するので、 「ここはどこ?」にならないために、名前をつけて区別したい。

hostname コマンドで表示される名前がどうやって決まるのか疑問に思った。 大抵は FDQN が返ってくるのだけれど、 “コンピュータ名” らしきもの (実は LocalHostName) が表示されることもある。 うーん。

実は3つの「名前」があるとか。
scutil --get HostName
scutil --get ComputerName
scutil --get LocalHostName

あろうことか、WWWサーバーの HostName が設定されていなかった! それでも動くんだね、という感想もあるけれど、なんでそうなったんだろう。

HostName には普通は FDQN を設定しておく。HostName が設定されていれば、 hostname コマンドはそれを表示する。 HostName が設定されていなければ、hostname コマンドは LocalHostName を表示する。 LocalHostName は (設定されていなければ) ComputerName から自動的に決定される。

ComputerName も自動的に設定されたりするが (インストール時のユーザーの名前からとか?)、 システム設定で表示して、簡単に変更できるので (実際変更することが多い)、 “自分が決めている” 感が結構ある。

HostName は一度設定しておけばよい (それが記憶される)、というので、 設定されていないということは一度もやらなかった、ということなんだろう。 どうしてそうなったかはさておき、やっておこう。

sudo scutil --set HostName nalab.mind.meiji.ac.jp

ComputerName, LocalHostName も同じように設定できる。


自分なりのまとめ



桂田 祐史