Rumah  >  Artikel  >  Operasi dan penyelenggaraan  >  Apakah perkhidmatan linux abrtd?

Apakah perkhidmatan linux abrtd?

藏色散人
藏色散人asal
2023-03-27 09:19:243284semak imbas

Linux abrtd ialah daemon yang memantau ranap aplikasi; apabila ranap sistem berlaku, ia akan mengumpul aplikasi ranap dan mengambil langkah berdasarkan jenis konfigurasi ranap sistem dalam fail konfigurasi abrt.conf, yang terletak di "/etc Direktori /abrt" mempunyai konfigurasi "abrt.conf" dan seterusnya.

Apakah perkhidmatan linux abrtd?

Persekitaran pengendalian tutorial ini: sistem linux5.9.8, komputer Dell G3.

Perkhidmatan abrtd sedang menduduki sumber sistem?

Penerangan Masalah

Terdapat proses dalam persekitaran pembangunan kami yang menggunakan sumber khususnya. Bolehkah anda membantu menganalisis sebabnya? Ini telah berlaku beberapa kali sebelum di tapak dan dalam awan awam Akhirnya, proses ini akan mengisi memori mesin dan menyebabkan masa henti. Sekarang saya baru menemui masalah ini di tempat kejadian

Apakah perkhidmatan linux abrtd?

Idea dan kaedah penyelesaian

Perkara pertama yang perlu dilakukan apabila proses penuh adalah untuk melihat nama Proses, pemeriksaan visual telah tamat, kali pertama saya melihat

top -pH 48297. Saya melihat benang mana dalam proses tertentu yang mengalami masalah dan mendapati hanya satu proses tidak mempunyai benang
Apakah perkhidmatan linux abrtd?

ps Sila lihat di mana direktori perkhidmatan ini

[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

Tiada petunjuk! ! Saya mula mencari di Baidu dan mendapati yang berikut

abrtd

abrtd ialah proses daemon yang memantau ranap aplikasi Apabila ranap sistem berlaku, ia akan mengumpul ranap sistem (command baris fail teras, dsb.)aplikasi, dan mengambil tindakan berdasarkan jenis ranap sistem dan berdasarkan konfigurasi dalam fail konfigurasi abrt.conf Terdapat pelbagai tindakan untuk pemalam: contohnya, bugzilla melaporkan ranap sistem. memindahkan laporan melalui ftp atau laporan atau scp Sila semak pemalam yang sepadan dalam halaman manual
abrtd: daemon laporan pepijat automatik
Perkara yang paling menyakitkan tentang program penyahpepijatan Linux program ranap secara tidak normal, tetapi fail teras tidak dapat ditemui, yang merupakan masalah Kedudukan yang sangat sukar. Tetapi dengan fail teras, ia lebih mudah untuk dicari.

Secara amnya, anda boleh menetapkan ulimit -c tanpa had dalam pembolehubah persekitaran. Tetapi pelaksana medan kadangkala terlupa untuk menetapkan arahan ini. Jadi apa yang perlu dilakukan? Ia boleh dicapai dengan menyediakan perkhidmatan abrt Linux.

Ubah suai fail abrt-action-save-package-data.conf

Ubah suai kepada:

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

Mulakan semula perkhidmatan abrtd: service abrtd restart

Jika anda mempunyai fail teras, anda perlu memadamkannya tepat pada masanya Semak pakej fail melalui senarai abrt-cli, dan kemudian gunakan abrt-cli rm [pakej fail].

Apabila program ranap, abrt-hook-ccpp menggunakan terlalu banyak CPU dan IO terlalu tinggi, menyebabkan sistem menjadi penuh Hanya nyahaktifkannya
systemctl stop abrt-ccpp.service
. systemctl disable abrt-ccpp.service
systemctl status abrt-ccpp.service

Saya menyemak status systemctl abrt-ccpp.service dan mendapati perkhidmatan ini tidak tersedia sama sekali

Baidu sekali lagi

usr/libexec/abrt-hook-ccpp Mengapa proses ini terus meningkat
Kerana fail ccpp tidak boleh dibuat

Perlu mengubah suai /etc/abrt/abrt-action-save -package- Parameter ProcessUnpackaged dalam data.conf.

Ubah suai parameter ProcessUnpackaged dalam /etc/abrt/abrt-action-save-package-data.conf

sed -i 's/ProcessUnpackaged = no/ProcessUnpackaged = yes/g' /etc/abrt/abrt-action-save-package-data.conf&& service abrtd restart

Ia masih tidak berfungsi selepas pengubahsuaian

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

Didapati bahawa perkhidmatan belum dimulakan semula, dan ditunjukkan bahawa ia telah dikunci oleh proses ini, dan proses ini adalah yang mengambil banyak sumber

kill -9 48297

Mulakan semula perkhidmatan
Semak status perkhidmatan
Apakah perkhidmatan linux abrtd?

atas Semak kemajuan sekali lagi!
Apakah perkhidmatan linux abrtd?

Pembelajaran yang disyorkan: "tutorial video linux"

Atas ialah kandungan terperinci Apakah perkhidmatan linux abrtd?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel sebelumnya:Adakah redhat linux percuma?Artikel seterusnya:Adakah redhat linux percuma?