Linux コマンドとシェル スキル
top vs htop vs btop: プロセス モニターの比較
ライブサーバーに関するすべての質問はプロセスモニターから始まり、top、htop、btop の 3 つが可読性とユビキタス性のトレードオフとなります。 top はレスキュー イメージを含むすべての Unix ボックスに常駐しており、退屈ではありますが正直です。 htop は、対話型の並べ替え、ツリー ビュー、色を追加して、優先順位付けを迅速化します。 btop は、インストールのフットプリントと広いターミナルを犠牲にして、プロセスごとの詳細を含む完全なダッシュボードを提供します。インターフェイスは最小の部分です。CPU、メモリ、負荷、ディスク待機が、この 3 つのいずれかでほとんどの部分を物語ります。
要点
- top はユニバーサル フォールバックで優れたツールです。P は CPU ごとにソート、M はメモリごとにソート、1 はコアごとに展開し、W はレイアウトを ~/.toprc に書き込み、次のセッションがそれを継承します。
- htop は日常的なツールです。F6 でソート、F4 で文字列によるフィルター、F5 でプロセス ツリーを表示し、午前 3 時に暗い部屋から一目でわかるカラー バーを読み取ります。
- btop はダッシュボードです。より詳細な詳細 (コアごとのグラフ、I/O 統計、ネットワーク レート) が表示されますが、端末スペース、動作する TERM、およびそれを構築したディストリビューションが必要です。窮屈なレスキューコンソールでもトップが勝ちます。
- 負荷平均を正しく読み取る: Linux は無停電ディスク待機を数値に組み込むため、4 コア上の負荷 20 は CPU ではなくストレージ キューである可能性があります。先頭の %wa 行は、iostat が開く前にその引数を解決します。
- メモリの合計は、語彙を知らない人には嘘をつきます。「buff/cache」は再利用可能であり、「available」は正直な数字です。 95% が使用され、4GB の空きがある場合は、ファイルシステムがその仕事を行っているということであり、緊急事態ではありません。
- よく考えて殺す: htop の F9 はツリー内の信号の選択を提供し、top の k は PID を取得し、両方とも 20 人の同一の子を代わりに殺す前にどちらの親が暴走をスポーンしたかを尋ねる報酬を与えます。
- 表示された内容を記録します。インシデント発生時の top -b -n 1 > /tmp/top.state は、ターミナルを閉じても生き残る証拠です。それのないチケットは謎ですが、それのあるチケットは通常自動的に閉じられます。
- スワップ ラインとディスク待機ラインは CPU バーを上回ります。スワップ イン/アウト レート、D ステート数、および iowait は、負荷がかかったときの動作を表します。問題が発生した場合、純粋な CPU パーセントはまさにお世辞です。
現場ノート
かつて、緊急時に 90% の「使用済み」メモリを読み取ると、大量に存在するページ キャッシュのリークを探すのに 1 時間かかりました。 「利用可能」列と D-state 行は、どこを見ればよいか分かれば 5 分で真実を示しました。
よくある質問
負荷平均が高いと自動的に悪影響を及ぼしますか?
いいえ: この数には、実行可能なタスクと中断できないタスクが含まれます。コア数と比較し、先頭の %wa を確認し、iostat または btop の I/O グラフに従ってから、CPU サイジングとストレージ修正のどちらを決定するかを決定します。
100% に近い「使用済み」メモリについてパニックになる必要がありますか?
いいえ: Linux は原則としてページ キャッシュでメモリを埋めます。 「利用可能」は実際の数値であり、「使用済み」の高値と「利用可能」の低値の組み合わせが実際にアクションを保証するものになります。
ジュニアはどのモニターを最初に学ぶべきですか?
htop は毎日の速度、top はレスキュー コンソールが存在する唯一のツールである日の速度を表します。両方のスキルが伝達され、筋肉の記憶のソート/フィルタリングが実際に時間を節約する部分です。
メモリの数値がツールとカラム間で一致しないのはなぜですか?
定義は異なります。RSS は共有ライブラリを二重にカウントし、PSS はそれらを配分し、カテゴリ間でバッファ/キャッシュをスライドさせます。 like と like を比較し、数値を引用する場合は列名を引用します。
linux コマンドとシェル スキル に対するKinetikatechの支援
linux コマンドとシェル スキル の専門家になる必要はありません:管理者がサーバーを操作するかサーバーと戦うかを決定するコマンドとスクリプトの習慣。すべての基本インストールに存在するツールを使用して、テキストとプロセスを検索、変換、転送、監視します。 それがまさにLinuxサーバーセキュリティとサーバー管理が存在する理由です。セットアップ、強化、監視、そして昼夜を問わず駆けつける人間のサポート。