1. 問題の発見[root@zwlbs3 ~]# トップ i. プロセスの CPU 使用率が 700% で、COMMAND がランダムな文字列で構成されていることがわかりました。これで終わりです! 最初に考えたのは、それを強制終了することでした。 [root@zwlbs3 ~]# kill -9 "PID" ii. しかし、殺害された後、しばらく静かになった後、再びプロセスが開始されたことが判明しました。 注:古いイメージが再利用され、PID とコマンドが変更されています。 2. プロセスの詳細情報を表示する[root@zwlbs3 ~]# cd /proc/748/ [root@zwlbs3 748]# ls -ial # 「748」はプロセスのPIDです。PIDに応じて確認できます。 図に示すように: プロセスが /dev/shm ディレクトリにあることがわかりました。/dev/shm とは何ですか? インターネットから引用して/dev/shmについて説明しましょう 1) まず、/dev/shm はデバイス ファイルであることがわかります。/dev/shm はシステム メモリへの入り口と考えることができます。これは、物理ストレージ デバイス、つまり tmp ファイルシステムと考えることができます。このデバイスを使用して、メモリへのファイルの読み取りと書き込みを行うことで、大きなファイルの頻繁なオープン、書き込み、読み取りなどの特定の高 I/O 操作を高速化できます。 2) Oracle は /dev/shm を使用すると言われています (shitou は Oracle を使用したことがありません)。mount コマンドを使用して、現在マウントされている /dev/shm ファイルシステムを一覧表示できます。 3) メモリベースのファイルシステムであるため、システムを再起動すると /dev/shm の下のファイルは存在しなくなります。デフォルトの Linux (CentOS) /dev/shm パーティション サイズはシステムの物理メモリの 50% ですが、/dev/shm を使用するとファイル操作の効率が大幅に向上します。ただし、現在、これを使用しているソフトウェア ディストリビューションはほとんどありません (上記の Oracle を除く)。ls /dev/shm を使用して、その下にファイルがあるかどうかを確認できます。ない場合は、現在のシステムがデバイスを使用していないことを意味します。 /dev/shmディレクトリに関連ファイルがあるかどうかを確認します [root@zwlbs3 ~]# ls -a /dev/shm/ . .. # 関連ファイルがありません。おかしいですね。
3. 解決策i. プロセス内のスレッド占有分析を表示する [root@zwlbs3 ~]# top -H -p "PID" ii. 関連するプロセスが多数あるため、すべて終了する iii. 数分後に再度確認し、システム負荷が正常に戻ったことを確認します。 解決したと思ったのですが、数時間後に確認したらまた表示されました。しまった。 本番環境ではサーバーを再起動するのは不便なので、再起動の方法を試すしかありませんでした。 4. 大法を再開するサーバーを再起動してから 1 時間後に再度確認したところ、正常に戻っていました。再起動しても問題なく動作します。 この悪意のあるプログラムは何をするのでしょうか?なぜ CPU リソースだけを消費するのでしょうか?関連するファイル情報が見つからなかったため、現時点では理由は不明です。 知っている方がいたら教えてください、よろしくお願いします! 要約する 以上がこの記事の全内容です。この記事の内容が皆様の勉強や仕事に何らかの参考学習価値をもたらすことを願います。123WORDPRESS.COM をご愛顧いただき、誠にありがとうございます。 以下もご興味があるかもしれません:
|
<<: MySQL フェイルオーバー ノート: アプリケーション対応設計の詳細な説明
序文:前回の記事では、MySQL システムでよく使用されるログをいくつか説明しました。実は、トランザ...
目次操作方法操作プロセス既存のテーブルにパーティション テーブルを作成し、データを新しいテーブルに移...
これはモーダル ボックスのドラッグのケースです。ここで実装する関数は次のとおりです。 1. ポップア...
さっそく、コードを直接投稿します。具体的なコードは次のとおりです。 パーレル # # https:/...
序文:非常に遅いクエリとリクエストのタイムアウトのアラートを受け取りました。メトリックを通じて My...
目次序文-リンクカスタムネットワーク質問する序文前回は、 -Linkパラメータを使用してコンテナ間の...
ナビゲーションバーのサブメニューを再帰的に生成すると、メニューは正常に生成できるが、マウスをホバーす...
検証できるデータの種類は次のとおりです a = [1,2,3,4,5,6]とします。 b = [とし...
目次概要1. グローバル登録2. 現地登録3. モジュールシステムへのローカル登録概要コンポーネント...
ElementUIは、参考のためにテーブルツリーリストの読み込みチュートリアルを実装しています。具体...
Vite とは何ですか? (フロントエンドの新しいおもちゃです) Vite は、ネイティブ ES モ...
参考までに、HTMLフォームの使い方を9つの簡単な例で分析します。具体的な内容は次のとおりです。 1...
vue3.0 への最初の試みを記録します。プロジェクトを開始したときに、「モジュール 'wo...
最初のステップは、対応するデータベースモジュール(sql)をプロジェクトファイル( .pro )に追...
1. 今日の午後、コースの要件により、Ubuntu で FTP サーバーを設定する実験を行う必要が...