Linuxは、強力なセキュリティ機能を備えた非常に安定したオペレーティングシステムです。場合によっては、システムのパフォーマンスを監視する必要があります。これは、技術的な不具合が原因であるか、定期的な健康診断の一環である可能性があります。パフォーマンス測定により、システムの動作をすばやく把握できます。パフォーマンスログは、実行中のプロセス、使用中のメモリ量、使用中のCPU量などを示します。この情報は、効果的なリソース計画、システム問題のデバッグなどに関連する決定を下すのにも役立ちます。ほとんどのLinuxディストリビューションはコマンドを提供します-このタスクを実行するためのラインツールとグラフィカルツール。これらの一部はOSにあらかじめ付属しており、インストールが必要な場合があります。これらのツールは、リアルタイム監視ツールまたはログベースのツールのいずれかに分類されます。
リアルタイム監視ツールは、その名前が示すように、現在の状態のシステムに関する情報を提供します。結果は継続的に更新されます。
ログベースのツールは、パフォーマンス結果をファイルに保存します。このファイルは、後で処理、分析、または別のアプリケーションでの作業のために取得できます。
ここで何をしますか?
このガイドでは、システムパフォーマンスを監視するために一般的に使用されるコマンドラインベースのツールのいくつかを紹介します。このガイドではUbuntu20.04OSを使用していますが、これから説明するツールはほとんどのLinuxベースのディストリビューションで利用できます。
頭に浮かぶかもしれない明らかな質問の1つは、なぜコマンドラインベースのツールに関心があるのかということです。最初の理由は、グラフィカル環境を機能させることが常に幸運であるとは限らないことです。作業しているシステムは、おそらくリモートの実稼働サーバーであり、グラフィカルインターフェイスを備えていません。しばらくの間、ローカルシステムを使用している場合は、グラフィカルインターフェイスをインストールする権限がない可能性があります。もう1つの理由は、コマンドラインインターフェイスを使用するとマルチタスクを実行できることです。 Tmuxは、複数のシステムを同時に監視できるアプリケーションです。
1。トップ
このコマンドは、リアルタイムのシステムステータスの概要を表示します。出力には、さまざまな目的で使用されているシステムメモリ(RAM)の量、使用されているCPUの割合、スワップメモリ、およびその他の情報が表示されます。メモリとCPU使用率に関するプロセス統計も、オプションなしでtopコマンドを実行するだけで表示されます。
「top」の実行中に「f」と入力して、「top」出力に表示する列を選択することもできます。新しい画面で、「スペースバー」または「d」を押して列を選択または選択解除し、「esc」を押して戻ります。下の画像では、いくつかの列を削除し、新しい列(GID)を追加しています:
2。 Htop
Htopコマンドは、より有益でインタラクティブな方法でデータを表示します。プロセス名はよりわかりやすく、マウスの統合は「top」コマンドにはない追加機能です。マウスを使用して、端末出力に表示されるさまざまな列を選択できます。もう1つの利点は、出力を簡単に把握して分析するための色分けを提供することです。 「htop」は、次のコマンドを使用してUbuntu20.04にインストールできます。
$ sudo apt install htop
さまざまな設定を調整するために、Htopはファンクションキーを使用します。たとえばF3を使用して、コンソールに表示される出力を検索できます。特定のユーザーが所有するプロセスを一覧表示するには、使用するコマンドは次のとおりです。
$ htop -u User_Name
rootユーザーの場合、コマンドは次のようになります。
$ htop -u root
Htopをモノクロモードで起動するには、次を使用します。
$ htop -C
4。 ps
「ps」コマンドの実装は、Unixシステムによって大きく異なります。どちらの場合も出力が同じであっても、あるシステムで1つのフラグ(オプション)を使用し、別のシステムで別のフラグを使用する場合があります。 「ps」コマンドの場合、リアルタイムの更新を取得する「top」や「htop」とは異なり、出力は静的です。オプションが渡されない場合、「ps」コマンドはアクティブなシェルと最終的なプロセスの名前を返します。
他のユーザー(所有者)が所有するプロセスを含む、実行中のすべてのプロセスを表示するには、次のコマンドを使用します。
$ ps aux
「u」オプションを使用したため、ユーザーの名前も表示されます。システムで実行されているプロセスのリストを表示する別の方法は、次のコマンドを使用することです。
$ ps -A
'ps'コマンドの出力は一般的に大きいことに気付いたでしょう。分析またはフィルタリング作業を簡素化するために、「grep」コマンドを使用できます。たとえば「/usr/ lib / firefox / firefox」プロセスをフィルタリングするには、次を使用します:
$ ps aux | grep ‘/usr/lib/firefox/firefox/
同様に、出力を端末に表示するのではなく、ファイルにリダイレクトできます。次に例を示します:
$ ps -aux > output.txt
上記のコマンドは、出力をファイル「output.txt」に送信します。
4。 Vmstat
仮想メモリレポーターまたはvmstatは、CPU、仮想メモリ(swapd)、ブロックI / O、ディスクなどに関するデータを収集します。オプションが使用されていない場合は、これらのパラメーターに関する平均情報が表示されます。平均は、システムが最後に再起動されたときから取得されます。サンプリングレートを指定すると、データが端末に表示されます。
$ vmstat 2
「-a」オプションを使用すると、アクティブおよび非アクティブなシステムメモリが提供されます。 「ps」コマンドと同様に、「vmstat」の出力はプラットフォームによって異なります。測定回数を指定することもできます:
$ vmstat 1 4
最初のパラメーター「1」はサンプリングレートを指定し、2番目のパラメーター「4」はサンプリングレートを指定します。出力に表示される測定値の数。
これは、ほとんどのLinuxベースのディストリビューションで通常使用され、利用できる4つのコマンドラインベースのツールについての簡単な説明です。信頼できるツールはまだたくさんあります。各ツールには独自の長所と制限があり、特定のツールを選択するかどうかはアプリケーションのポイントによって異なります。これらのツールの概要を説明するために表面に触れたところです。マニュアルページを参照すると、使用する詳細情報とオプションを見つけることができます。