目次
##問題の説明" > ##問題の説明
解決策のアイデアと方法" >解決策のアイデアと方法
abrtd" >abrtd
ホームページ 運用・保守 Linuxの運用と保守 Linux abrtd とはどのようなサービスですか?

Linux abrtd とはどのようなサービスですか?

Mar 27, 2023 am 09:19 AM
linux abrtd

linux abrtd は、アプリケーションのクラッシュを監視するデーモンです。クラッシュが発生すると、クラッシュしたアプリケーションを収集し、「/etc」にある abrt.conf 構成ファイル内のクラッシュ構成のタイプに基づいて対策を講じます。 /abrt" ディレクトリには、その設定 "abrt.conf" などが含まれます。

Linux abrtd とはどのようなサービスですか?

#このチュートリアルの動作環境: linux5.9.8 システム、Dell G3 コンピューター。

abrtd サービスはシステム リソースでいっぱいですか?

##問題の説明

開発環境に特にリソースを消費するプロセスがあります。理由の分析を手伝ってもらえますか?これはオンサイトやパブリック クラウドで何度か発生しており、最終的にはこのプロセスによってマシンのメモリがいっぱいになり、ダウンタイムが発生します。今、現場でこの問題を発見しました。

Linux abrtd とはどのようなサービスですか?

解決策のアイデアと方法

プロセスがいっぱいになったときに最初に行うことプロセス名を見てみましょう。目視検査は終了しました。

top -pH 48297 を初めて確認しました。特定のプロセスのどのスレッドに問題があるかを確認し、スレッドがないプロセスが 1 つだけであることを確認します


Linux abrtd とはどのようなサービスですか?

ps このサービスのディレクトリがどこにあるか見てください

[root@yq01-kg-section1-bud3 libexec]# ps -ef | grep  abrt-hook-ccpp
root     45733 11797  0 12:18 pts/8    00:00:00 grep --color=auto abrt-hook-ccpp
root     48297     2 99 Nov16 ?        15:42:50 /usr/libexec/abrt-hook-ccpp 11 0 8669 0 0 1605530067 e 8669 8669
ログイン後にコピー
手がかりがありません。 ! Baidu で検索を開始したところ、次のことがわかりました。

abrtd

abrtd は、アプリケーションのクラッシュを監視するデーモン プロセスです。クラッシュが発生すると、クラッシュ (コア) を収集します。ファイル コマンド ラインなど)アプリケーションを実行し、クラッシュのタイプと abrt.conf 構成ファイルの設定に基づいてアクションを実行します。プラグインにはさまざまなアクションがあります。たとえば、bugzilla はクラッシュを報告し、ファイルを転送します。レポート、または ftp または scp 経由のレポート。マニュアル ページで対応するプラグインを確認してください。

abrtd: 自動的にバグ レポート デーモン。自動バグ レポート デーモン
Linux のデバッグ プログラムで最も厄介なのは、プログラムがが異常終了しますが、コア ファイルが見つかりません。これは非常に難しい位置決めの問題です。ただし、コア ファイルを使用すると、見つけるのがはるかに簡単になります。

通常、環境変数に ulimit -c unlimited を設定できます。ただし、現場の実装者はこのコマンドの設定を忘れることがあります。ではどうすればよいでしょうか? Linux の abrt サービスを設定することで実現できます。

abrt-action-save-package-data.conf ファイルを変更します

次のように変更します:

vi /etc/abrt/abrt-action-save-package-data.conf

# With this option set to "yes",
# only crashes in signed packages will be analyzed.
# the list of public keys used to check the signature is
# in the file gpg_keys
#
OpenGPGCheck = no


# Blacklisted packages
#
BlackList = nspluginwrapper, valgrind, strace, mono-core


# Process crashes in executables which do not belong to any package?
#
ProcessUnpackaged = yes


# Blacklisted executable paths (shell patterns)
#
BlackListedPaths = /usr/share/doc/, /example*, /usr/bin/nspluginviewer, /usr/lib/xulrunner-*/plugin-container


还可以调整core文件的大小:

[root@xx-host2 abrt]# cat abrt.conf 
# Enable this if you want abrtd to auto-unpack crashdump tarballs which appear
# in this directory (for example, uploaded via ftp, scp etc).
# Note: you must ensure that whatever directory you specify here exists
# and is writable for abrtd. abrtd will not create it automatically.
#
#WatchCrashdumpArchiveDir = /var/spool/abrt-upload


# Max size for crash storage [MiB] or 0 for unlimited
#
MaxCrashReportsSize = 1000


# Specify where you want to store coredumps and all files which are needed for
# reporting. (default:/var/spool/abrt)
#
# Changing dump location could cause problems with SELinux. See man abrt_selinux(8).
#
#DumpLocation = /var/spool/abrt


# If you want to automatically clean the upload directory you have to tweak the
# selinux policy.
#
DeleteUploaded = no
ログイン後にコピー
abrtd サービスを再起動します: service abrtd restart

コア ファイルがある場合は、時間内に削除する必要があるため、abrt-cli リストでファイル パッケージを確認し、abrt-cli rm [ファイル パッケージ] を使用します。

プログラムがクラッシュすると、abrt-hook-ccpp は CPU を過剰に使用し、IO が高くなりすぎて、システムがいっぱいになります。これを非アクティブ化するだけです。

systemctl stop abrt-ccpp.service
systemctl disable abrt-ccpp.service
systemctl status abrt-ccpp.service

systemctl status abrt-ccpp.service を確認したところ、そのようなサービスはまったく存在しないことがわかりました

Baidu をもう一度確認しました

usr/libexec/abrt-hook-ccppこのプロセスが増加し続けるのはなぜですか

ccpp ファイルを作成できないためです

/etc/abrt/abrt-action-save- を変更する必要がありますpackage-data.conf の ProcessUnpackated パラメータ。

/etc/abrt/abrt-action-save-package-data.conf の ProcessUnpackages パラメータを変更します

sed -i 's/ProcessUnpackaged = no/ProcessUnpackaged = yes/g' /etc/abrt/abrt-action-save-package-data.conf&& service abrtd restart
ログイン後にコピー
変更後も動作しません。システム ログを確認してください

Nov 17 13:15:15 yq01-kg-section1-bud3 abrtd: Lock file '.lock' is locked by process 48297
Nov 17 13:15:15 yq01-kg-section1-bud3 abrtd: Lock file '.lock' is locked by process 48297
Nov 17 13:15:16 yq01-kg-section1-bud3 abrtd: Lock file '.lock' is locked by process 48297
Nov 17 13:15:16 yq01-kg-section1-bud3 abrtd: Lock file '.lock' is locked by process 48297
Nov 17 13:15:17 yq01-kg-section1-bud3 abrtd: Lock file '.lock' is locked by process 48297
Nov 17 13:15:17 yq01-kg-section1-bud3 systemd: abrtd.service stop-sigterm timed out. Killing.
Nov 17 13:15:17 yq01-kg-section1-bud3 systemd: abrtd.service: main process exited, code=killed, status=9/KILL
Nov 17 13:15:17 yq01-kg-section1-bud3 systemd: Unit abrtd.service entered failed state.
Nov 17 13:15:17 yq01-kg-section1-bud3 systemd: abrtd.service failed.
Nov 17 13:15:17 yq01-kg-section1-bud3 abrtd: Lock file '.lock' is locked by process 48297
ログイン後にコピー
サービスが利用できないことがわかり、再起動すると、このプロセスによってロックされており、このプロセスが多くのリソースを消費していることがわかります

kill -9 48297
ログイン後にコピー
再起動service

サービスの状態を確認する

Linux abrtd とはどのようなサービスですか?

トップへ プロセスをもう一度見てみましょう。


Linux abrtd とはどのようなサービスですか?

推奨される学習: 「

linux ビデオ チュートリアル

以上がLinux abrtd とはどのようなサービスですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Dockerデスクトップの使用方法 Dockerデスクトップの使用方法 Apr 15, 2025 am 11:45 AM

Dockerデスクトップの使用方法は? Dockerデスクトップは、ローカルマシンでDockerコンテナを実行するためのツールです。使用する手順には次のものがあります。1。Dockerデスクトップをインストールします。 2。Dockerデスクトップを開始します。 3。Docker Imageを作成します(DockerFileを使用); 4. Docker画像をビルド(Docker Buildを使用); 5。Dockerコンテナを実行します(Docker Runを使用)。

Dockerプロセスを表示する方法 Dockerプロセスを表示する方法 Apr 15, 2025 am 11:48 AM

Dockerプロセス表示方法:1。DockerCLIコマンド:Docker PS; 2。SystemDCLIコマンド:SystemCTL Status Docker; 3。CLIコマンドを作成するDocker:Docker-Compose PS。 4。プロセスエクスプローラー(Windows); 5。 /procディレクトリ(Linux)。

Docker画像が失敗した場合はどうすればよいですか Docker画像が失敗した場合はどうすればよいですか Apr 15, 2025 am 11:21 AM

障害のあるDocker画像ビルドのトラブルシューティング手順:DockerFileの構文と依存関係バージョンを確認します。ビルドコンテキストに必要なソースコードと依存関係が含まれているかどうかを確認します。エラーの詳細については、ビルドログを表示します。 -targetオプションを使用して、階層フェーズを構築して障害点を識別します。 Dockerエンジンの最新バージョンを使用してください。 -t [image-name]:デバッグモードで画像を作成して、問題をデバッグします。ディスクスペースを確認し、十分であることを確認してください。 Selinuxを無効にして、ビルドプロセスへの干渉を防ぎます。コミュニティプラットフォームに助けを求め、DockerFilesを提供し、より具体的な提案のためにログの説明を作成します。

VSCODEに必要なコンピューター構成 VSCODEに必要なコンピューター構成 Apr 15, 2025 pm 09:48 PM

VSコードシステムの要件:オペレーティングシステム:オペレーティングシステム:Windows 10以降、MACOS 10.12以上、Linux Distributionプロセッサ:最小1.6 GHz、推奨2.0 GHz以上のメモリ:最小512 MB、推奨4 GB以上のストレージスペース:最低250 MB以上:その他の要件を推奨:安定ネットワーク接続、XORG/WAYLAND(Linux)

VSCODEは拡張子をインストールできません VSCODEは拡張子をインストールできません Apr 15, 2025 pm 07:18 PM

VSコード拡張機能のインストールの理由は、ネットワークの不安定性、許可不足、システム互換性の問題、VSコードバージョンが古すぎる、ウイルス対策ソフトウェアまたはファイアウォール干渉です。ネットワーク接続、許可、ログファイル、およびコードの更新、セキュリティソフトウェアの無効化、およびコードまたはコンピューターの再起動を確認することにより、問題を徐々にトラブルシューティングと解決できます。

vscodeはMacに使用できますか vscodeはMacに使用できますか Apr 15, 2025 pm 07:36 PM

VSコードはMacで利用できます。強力な拡張機能、GIT統合、ターミナル、デバッガーがあり、豊富なセットアップオプションも提供しています。ただし、特に大規模なプロジェクトまたは非常に専門的な開発の場合、コードと機能的な制限がある場合があります。

vscodeとは何ですか?vscodeとは何ですか? vscodeとは何ですか?vscodeとは何ですか? Apr 15, 2025 pm 06:45 PM

VSコードは、Microsoftが開発した無料のオープンソースクロスプラットフォームコードエディターと開発環境であるフルネームVisual Studioコードです。幅広いプログラミング言語をサポートし、構文の強調表示、コード自動完了、コードスニペット、および開発効率を向上させるスマートプロンプトを提供します。リッチな拡張エコシステムを通じて、ユーザーは、デバッガー、コードフォーマットツール、GIT統合など、特定のニーズや言語に拡張機能を追加できます。 VSコードには、コードのバグをすばやく見つけて解決するのに役立つ直感的なデバッガーも含まれています。

Linuxの主な目的は何ですか? Linuxの主な目的は何ですか? Apr 16, 2025 am 12:19 AM

Linuxの主な用途には、1。Serverオペレーティングシステム、2。EmbeddedSystem、3。Desktopオペレーティングシステム、4。開発およびテスト環境。 Linuxはこれらの分野で優れており、安定性、セキュリティ、効率的な開発ツールを提供します。

See all articles