Ubuntu Weekly Recipe

第842回snapにも対応したRust製のシステムモニタリングツールであるMission Centerを試す

システムとは常に監視したい存在です。市民やSNSと同じくらい、コンピューターシステムもいろんな人が監視しています。それはデスクトップでも例外ではなく、たとえばWindowsにおいてもウェブブラウザー、Excel、ゲームに次いでよく起動されているソフトウェアと言えば、タスクマネージャーではないでしょうか。すみません、少し言い過ぎました。

今回はUbuntuデスクトップでも使え、情報量が充実しており、どこかで見たことのあるようなデザインのシステムモニターであるMission Centerを紹介しましょう。

図1 特定のOSのユーザーであればピンとくる見た目のMission Center(中央⁠⁠。左はUbuntu標準のシステムモニターで、右はCLIで人気のあるbashtop

Rust製であのOSにも似たUIを持つMission Center

Mission CenterはRustで作られた「タスク管理・システムモニター」としての機能を備えたGUIアプリケーションです。

システムモニターとはその名の通りシステムの状態を表示するもの全般を示します。たとえばGUIを持つものだけでなく、CLIで動くものやWebアプリケーションとして表示されるものなど、実際にはさまざまな種別が存在するのです。LinuxのCLIに慣れた人なら、一度は「top」コマンドは実行したはずですし、今ならhtopやbashtopといったより情報量の多いツールも存在します。

図2 伝統的なシステムモニタリングCLIツールである「top」
図3 シェルスクリプトで実現された、topよりも高機能な「bashtop」

その中でもMission Centerと直接比較されるべき存在は、デスクトップ版のUbuntuに最初からインストールされているシステムモニター(gnome-system-monitor)でしょう。

図4 デスクトップ版のUbuntuに最初からインストールされているシステムモニター

そんなUbuntu標準のgnome-system-monitorに比べると、Mission Centerは次のような機能を備えています。

  • CPU・メモリ・ストレージ・ネットワークインターフェース・GPU・FANの情報表示
  • その情報をテキスト情報としてコピーする機能
  • GUIアプリケーション単位のシステム使用量の表示
  • ネットワークインターフェース単位の通信状況の表示
  • GPUそのものや、エンコーダー・デコーダー、GPUメモリの使用状況や消費電力の表示
  • systemdサービスの各種管理機能
  • FlatpakやSnap、AppImageパッケージのサポート

gnome-system-monitorでも、CPUやメモリ、ストレージ、ネットワークの使用状況は確認できます。プロセスの閲覧・管理機能も備えているため、普段軽く確認してみる分には十分な機能を備えているでしょう。ただしCPUはコアの数とコア単位の使用状況しかわかりませんし、ネットワークもシステム全体の通信状況しか見えてきません。また、CPUのコア数が増えてくるとグラフはかなり見づらくなりますし、GPUはまだサポートしていません

このあたり、gnome-system-monitor側でも問題点を意識はしていて、GTK4への移行が終わったあとから新しいデザインの検討が始まっているようです。

いずれにせよ、現時点では多コアなCPUを使っていたり、GPUのリアルタイムなモニタリングも行いたいのであれば、Mission Centerがおすすめです。特に最近Snapパッケージも公式に提供されるようになったため、そちらも合わせて使ってみましょう。

Mission Centerのインストール

Mission Centerのインストール方法には次の3種類が存在します。

  • Flatpakパッケージでインストールする
  • Snapパッケージとしてインストールする
  • AppImageパッケージとしてダウンロードする

現時点で一番実績があるのは「Flatpakパッケージ」を使う方法でしょう。こちらはMission Center自身が「Flatpak first」を掲げているように、Flatpakを使ってインストールする方法を推奨しています。

これまで何度か本連載でも取り上げたように、Ubuntuの場合はFlatpakをインストールするのにひと手間必要となります。しかしながら2024年の9月末にリリースされた0.6.0からは、Mission Centerの開発元がSnapパッケージを提供するようになりました。Snap版であればUbuntuでもすぐにMission Centerをインストールできます。

FlatpakやSnapの環境構築を避けたかったり、システムに余計なファイルをなるべくインストールしたくなければ、AppImage版も使えます。ただしUbuntuの場合は、AppImageを使うために「libfuse2」パッケージをあらかじめインストールしておかなくてはいけない点に注意が必要です。

今回は好みにあわせてこれら3種類のインストール方法をそれぞれ紹介しましょう。

Flatpak版のインストール

UbuntuでFlatpakパッケージを使うためには、まずFlatpakのインストール環境を構築しなくてはなりません。次の方法でFlatpakツールをインストールし、リポジトリを登録してください。

$ sudo apt install flatpak
$ flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo

ちなみに「gnome-software-plugin-flatpak」パッケージもインストールすれば、⁠GNOMEソフトウェア」のGUIからFlatpakを検索・インストールできます。これはUbuntuの「アプリセンター」とは別のパッケージ管理ツールです。GUIでFlatpakを検索・インストールしたいのであればこちらもインストールすると良いでしょう[1]

次に本題であるMission Centerをインストールしましょう。ちなみにFlatpakのパッケージ名は「Reverse Domain Name Notation」と呼ばれる命名規則が使われています。名前を重複させないのが目的ですが、CLIから入力するには少しややこしいです。

$ flatpak install flathub io.missioncenter.MissionCenter
$ flatpak run io.missioncenter.MissionCenter

最後のコマンドでは「flatpak run」コマンドでMission Centerを起動していますが、別にアクティビティから「Mission Center」を検索して起動してもかまいません。

Snap版のインストール

Ubuntuは最初からSnapパッケージに対応しているので、Snapパッケージのインストール自体はかんたんです。アプリセンターから「Mission Center」を検索してインストールしても良いし、CLIなら次のコマンドでインストールできます。

$ sudo snap install mission-center
$ mission-center

アプリケーションの起動は「mission-center」を実行するだけです。こちらもアクティビティから「Mission Center」を検索して起動できます。

ただしsnap版は権限が足りないため、Intel製の内蔵GPUのパフォーマンスは表示できない点に注意が必要です。

AppImage版のインストール

AppImage版は基本的には「実行バイナリをダウンロードして実行する」だけで済むのが特徴です。ただしUbuntuの場合は様々な事情で「libfuse2t64パッケージ」をインストールしなくてはなりません。あとはMission Centerのリリースページから、最新のAppImage向けイメージをダウンロードして起動します。

$ sudo apt install libfuse2t64
$ wget https://gitlab.com/mission-center-devs/mission-center/-/jobs/8198461967/artifacts/raw/MissionCenter-x86_64.AppImage
$ chmod +x MissionCenter-x86_64.AppImage
$ ./MissionCenter-x86_64.AppImage

なお、Ubuntu 22.04 LTSなら「libfuse2t64」ではなく「libfuse2」パッケージをインストールしてください。Ubuntu 20.04 LTS以前だと追加のインストールは不要です。

AppImageは余計なパッケージを追加インストールしなくて良いのですが、ソフトウェアの自動アップデートなどには対応していません。必要に応じて最新版をダウンロードしなおして実行する必要がある点に注意しましょう。また、アクティビティ画面にも登録されないので、手動で登録するかCLIからの実行が必要になります。

Mission Centerの使い方

Flatpak版やSnap版、AppImage版でも、インストールしたあとの使い方は同じです。⁠使い方」なんて大層な言い回しをしていますが、おおよそ直感的に使えるでしょう。

図5 起動直後はCPU全体の情報だけを表示する

最近のGNOMEのアプリケーションと同じように、サイドバーはウィンドウのサイズに応じて自動的に表示・非表示されます。サイドバーを見る限り、gnome-system-monitorと異なりネットワークインターフェースごとのパフォーマンスやGPUの状態を確認できることがわかるでしょう。さらにプロセッサの詳細なプロパティも表示してくれています。

図6 左上にあるペンアイコンをクリックすれば、表示非表示や順番を変更できる

CPUをコア単位で表示したい場合は、グラフの上で右クリックし、⁠グラフの変更」から「論理プロセッサ」を選択します。

図7 論理プロセッサにするとCPUの論理コア(HT有効だと2コア扱いになる)ごとのパフォーマンスを表示してくれる

ちなみに同じ右クリックのメニューで「コピー」を選ぶと、ハードウェアの情報をテキスト形式でコピーしてくれます。

CPU

            Intel® Core™ i7-8809G CPU @ 3.10GHz

            Base speed:         3.10 GHz
            Sockets:            1
            Virtual processors: 8
            Virtualization:     KVM / Intel VT-x
            Virtual machine:    いいえ
            L1 cache:           256 KiB
            L2 cache:           1 MiB
            L3 cache:           8 MiB
            Cpufreq driver:     intel_pstate
            Cpufreq governor:   powersave
            Power preference:   balance_performance

            Utilization: 11%
            Speed:       3.43 GHz
            Processes:   475
            Threads:     2341
            Handles:     27424
            Up time:     39:02:45:02

GPU 0

    AMD Radeon RX Vega M GH Graphics

    OpenGL version:    4.6
    Vulkan version:    1.3.255
    PCI Express speed: PCIe Gen 3 x8
    PCI bus address:   1%

    Utilization:   0000:01:00.0
    Memory usage:  3.12 GiB / 4.00 GiB
    GTT usage:     1.22 GiB / 15.6 GiB
    Clock speed:   400 MHz / 1.19 GHz
    Memory speed:  800 MHz / 800 MHz
    Power draw:    8.00 W / 75.0 W
    Encode/Decode: 0% / 0%
    Temperature:   43°C

他のデバイスも見ていきましょう。

図8 メモリの使用率の表示状況
図9 ストレージの使用状況
図10 ネットワークの使用状況
図11 GPUの使用状況

上記のサイドバーだとIntelの内蔵GPUが表示されていますが、snap版だとパフォーマンスは表示できません。これは内蔵GPUの情報を取得する権限がsnap版のパッケージには足りていないためです。上記のスクリーンショットはAppImage版で取得しています。

図12 NVIDIAのGPUであればsnap版でも情報を取得できる。消費電力が表示されないのはドライバ側の問題だ。このシステムではnvidia-smiでも表示されていない

Mission Centerはgnome-system-monitorと同じようにプロセスの管理にも対応しています。ただし単にプロセスリストを表示するだけでなく、GUIアプリケーションのように複数のプロセスから動いているものについては、それをひとまとめに「アプリ」と表示しています。これによりアプリケーション単位の使用状況やコントロールも可能です。

図13 GNOME端末は各種スクリプトとセットで動いているため、⁠Terminal」としてまとめられている。Firefoxも同様

アプリやプロセスを右クリックすると、そのプロセスを終了できます。

図14 Servicesタブでは、systemdのサービス一覧と詳細情報を取得できる

一応、サービスの開始や停止をするためのインターフェースは備わっていますが、snap版だと権限が足りないため無効化されています。これらの機能も使いたいのであればFlatpak版をインストールすると良いでしょう。

図15 Flatpak版だとサービスの開始や停止にも対応している

右上のハンバーガーメニューから「設定」を選ぶと、見た目を少し変えられます。

図16 設定ダイアログはまだ十分には日本語化されていないが、おおよその機能の意味はわかるはず

ちなみに最新版ではファンの情報も取得できます。ただしまだ対応しているシステムが限定されているようです。

このように、Mission Center自体はシンプルなツールではありますが、よりモダンなUIと広範囲のデバイスをサポートした、次世代のシステムモニターと言えるでしょう。特に新しいデバイスを買った時、パフォーマンスのテストを行う時、デバイスの情報と一緒に表示されるのは魅力的です。ぜひ新しいデバイスをデスクトップ版のUbuntuで動作確認する際は、Mission Centerを使ってモニタリングしてみてください。

おすすめ記事

記事・ニュース一覧