web-dev-qa-db-ja.com

setroubleshooted過度のCPUとメモリ使用量

Centos 7を新規インストールし、CPU使用率が高い場合にsetroubleshootedが表示されます。どうすれば修正できますか?このプロセスは何をしていますか?

2
stiv

まず、SELinuxを無効にしないでください。 setroubleshootdのCPU使用率が高くなる原因は何でしょうか。

sestatusと入力して、マシン上でSELinuxが実行されているモードを確認してください。複数の行が表示されるはずです。興味深い部分はSELinux status:Current Modeで、通常はenabledenforcingです。現在のモードがpermissiveの場合、SELinuxは何もブロックせず、ログを記録するだけです(トラブルシューティングに役立ちます)。

SELinuxが有効で、強制モードになっていると仮定して、ログ/var/log/audit/audit.logを確認します。ファイルのライブ変更を確認するには、tail -f /var/log/audit/audit.logを使用することをお勧めします。

setroubleshootdのCPU負荷が高いため、ファイルに永続的な変更/エントリがあると想定します。つまり、何かがSELinuxポリシーに永続的に違反し、出力から最初の理由がわかります。

より詳細なトラブルシューティングについては、setroubleshoot-serveryum install setroubleshoot-serverとともにインストールできます。このパッケージは、SELinux違反の実際の原因を見つけるのに役立つツールのセットです。ほとんどの場合、正しいSELinux権限を設定せずにシステムにファイルを追加した場合、またはプロセスが一般的でないファイルまたはフォルダーにアクセスしようとした場合に発生します。

最初にSELinuxに関するこのドキュメントを読むこのドキュメント で概要を確認してから、ディストリビューションの このようなドキュメント を確認することをお勧めします。

SELinuxには学習曲線が少しあり、単純な答えには多すぎますが、一般向けのサーバーで無効にすることは決してありません。

2
PCFreak

a)インストールsetroubleshoot.x86_64 GUIの場合。これはtailを使用するよりも簡単かもしれません。

# yum install setroubleshoot.x86_64 setroubleshoot-plugins.noarch

mongodb(およびその他の可能性のある)のSE Linuxポリシーを追加すると、負荷が軽減される可能性があります。

それが行う提案は時々役に立たない/誤解を招く可能性があることに注意してください。

b)setroubleshootdの再インストールはオプションかもしれません:

yum reinstall setroubleshoot-server
0
Martin Zeitler