unameいろいろ
ホスト情報を確認するのによく使われるunameコマンド。
いつも同じオプションでしか利用しなかったりするのだが、改めて調べてみたら
「へぇ〜、こんなことが分かるんだ」なんて思ったりしたので、まとめてみた。
以下は普段自分がよく使用する、ノードネームを表示するオプション。
# uname -n
Node Name
ここで言うノードネームとは、ネットワーク上に存在するホスト名、
ってことになるだろう。
以下は、カーネルのバージョンを表示。
# uname -r
2.6.18-15.e15
以下はカーネルのリリース情報を表示。
# uname -v
#1 SMP Wed Oct 10 16:34:19 EDT 2007
しかしmanの説明と出力結果を照らし合わせると、「バージョン」と「リリース」
が逆になっているような気が・・・?
ちなみに、上記のカーネルバージョン及びリリース情報は # cat /proc/version でも確認可能。
以下は、マシンのハードウェア名(マシンタイプ)を表示
# uname -m
x86_64
ハードウェアプラットフォームを表示
# uname -i
x86_64
プロセッサタイプを表示
# uname -p
x86_64
そう、上記の3つのオプション- m,-i,-pの出力結果はすべて同じなのだった…
つまるところ、どのオプションでも表示されるのは「CPUアーキテクチャ」
ってことみたいなのだが。うーむ???
ちなみに”x86_64″とはつまり64bit版CPUのこと。
x86_64の仕様だとか64bit版CPUってそもそも何、というような話は今回はやめておく。
OS(オペレーティングシステム)を表示
# uname -o
GNU/Linux
カーネル名を表示
# uname -s
Linux
unameのバージョンによる違いについて少し。
-o,-i,-pオプションは1999年版には存在しなかったが、2006年リリース版ではこれら
オプションが追加されている。(あるいはもっと以前から?)
manを読むと、-r,-v,-sオプションは古いバージョンだと”print operating system name”
となっているが、2006年の新しい方だと”print the kernel-name”となっている。
どうも「カーネル」と「OS」、「バージョン」と「リリース」の定義などがごちゃまぜに
なってるみたいで、読んでいると頭痛くなる。深追いはやめよう。
コマンドのバージョンによってmanの説明が大きく変わるので混乱する。
GNU版とBSD版でも記述が微妙に違ってたりするし。
なんかどっちでもいいような気もしてきたが。。
関連記事
hostname
改めて、hostnameとuname -n
LinuxOSのバージョン