openSUSEでハードウェア情報を簡単に取得する
橋本修太です。
このブログは「openSUSE Advent Clendar 2018」の4日目の記事です。
アドベントカレンダー完走目指して、急遽入れさせて頂きました。
初日から、覆面君さん、川上さん、鹿野月美さんと、レベルの高いブログが続き、私は非常に興奮しております。
が、ここで一息入れさせて頂きましょう。今日の話題はコンソールコマンドです。(タイトル詐欺感はご了承を・・・)
ある日、本家のサポートMLの、コンソールのフォントサイズだかの話題に、以下のような文章が現れました。
【意訳】
「今だったら、皆(バージョンにもよるけど)、vttyの行数、桁数は、次のコマンドで取得できるよ。
inxi -Gxx か、inxi -Fxz でね。」
ここで私は思うわけです。
(inxiってなに?)
というわけで、使ってみました。
使ってみる
さっそく、Leap 15のコンソールで実行。
$ inxi
しかし、こんなメッセージが。
If ‘inxi’ is not a typo you can use command-not-found to lookup the package that contains it, like this: cnf inxi
言わずと知れた、コマンドが無かった時のメッセージですね。
こうなると、次にすることはパッケージの検索。次のコマンドで検索します。
zypper se inxi
すると、該当パッケージが表示されます。これをインストールしましょう。
sudo zypper in inxi
zypperの使い方は、いずれどなたかがアドベントカレンダーしてくれると期待しています。
本題 inxiとは?
実行してみます。
inxi
すると、私の環境では以下のように出力されました。
Resuming in non X mode: glxinfo not found. For package install advice run: inxi –recommends
CPU~Quad core Intel Core i5-2400 (-MCP-) speed/max~3092/3400 MHz Kernel~4.12.14-lp150.12.25-default x86_64
Up~3:22 Mem~2698.9/7952.8MB HDD~1012.2GB(40.4% used) Procs~281 Client~Shell inxi~2.3.40
どうやら、ハードウェア情報を簡単に取得して出力してくれるようです。
マニュアルを見てみますと、
$ man inxi
頭に次のような説明が。
inxi – Command line system information script for console and IRC
IRC!? それはさておき、システム情報を出力してくれるスクリプトのようですね。
ちなみに、コマンドの場所を確認し、
which inxi
そのコマンドが何かを調べてみますと、
file /usr/bin/inxi
以下のように出力されました。
/usr/bin/inxi: Bourne-Again shell script, UTF-8 Unicode text executable, with very long lines, with escape
sequences
どうやら、シェルスクリプトのようです。思い切って中身を見てみましょう。
less /user/bin/inxi
すると、先頭に見慣れた次の一行が。
#!/usr/bin/env bash
そう、シェルスクリプトの先頭に記述する一行ですね。つまり、inxiはシステム情報を取得・出力してくれる、シェルスクリプトでした。
コマンドを実行した結果の所に、glxinfoが無いよ、といった警告が出ていたことに気付きましたでしょうか。システム情報の収集は、inxiが他のコマンドを呼び出すなりして行う為、そのコマンドが無かったりすると警告となるわけです。
以上、簡単にハードウェア情報(というか、システム情報でしたね)を取得する、inxiコマンドの紹介でした。
MLにあった、inxi -Gxx や、 inxi -Fxz、試してみると面白いですよ。
ううむ、このブログ、inxiの紹介では無くて、見慣れないコマンドを見た時の遊び方のチュートリアルみたいになってしまいましたねぇ。
という事で、近いうちにcnfでも遊びたいと思っています。