1
1

More than 3 years have passed since last update.

/var/crash と /var/spool/abrtd に同じ vmcore が作られる問題

Posted at

/var/crash と /var/spool/abrtd にも同じ vmcore が残ってるのでなんとかしたい

マジックSysRqキーを使って kdump の動作確認を実施してたら
vmcore が重複して作成されているようだった。

机上とは言え、計算上はギガを超える無駄な重複データが出来てしまう場合もあるのでなんとかしたい。

次のような手順で動作確認していた。

手順

crashdump を手動で出力する。秘孔を突くコマンドでゲロを吐かせます。

[root@localhost ~]# echo c > /proc/sysrq-trigger

起動後に確認すると
/var/crash と /var/spool/abrtd にも同じ vmcore 残ってる

[root@localhost ~]# ls -l /var/spool/abrt/vmcore-127.0.0.1-2019-10-24-20\:15\:10/vmcore /var/crash/127.0.0.1-2019-10-24-20\:15\:10/vmcore
-rw------- 1 root root 73008040 Oct 24 20:15 /var/crash/127.0.0.1-2019-10-24-20:15:10/vmcore
-rw-r----- 1 root abrt 73008040 Oct 24 20:18 /var/spool/abrt/vmcore-127.0.0.1-2019-10-24-20:15:10/vmcore

パーミッション、グループ、作成時間は若干違うようだがファイルサイズはまったく同じ

[root@localhost ~]# diff --binary /var/spool/abrt/vmcore-127.0.0.1-2019-10-24-20\:15\:10/vmcore /var/crash/127.0.0.1-2019-10-24-20\:15\:10/vmcore
[root@localhost ~]#

念のためバイナリデータで比較してもまったく同じ

[root@localhost ~]# egrep -v "^#|^$" /etc/abrt/abrt.conf
MaxCrashReportsSize = 5000
DeleteUploaded = no
AutoreportingEvent = report_uReport
AutoreportingEnabled = no
PrivateReports = yes

ちなみに abrt.conf には

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

と記載しているので 5000MiB がデフォルト設定のようだ。

調査

調べると、abrt の BugFix対応として記載されていた。
https://bugzilla.redhat.com/show_bug.cgi?id=847227

なんかmvしたら /var/crash がぶっ壊れたからコピーにしとくね(超意訳)
ってことらしい。

abrt-harvest-vmcore の config に CopyVMcore ってやつを追加したよ、とのことなのだが、man に書いてた。

[root@localhost ~]# man abrt-harvest-vmcore
ABRT-HARVEST-VMCOR(1)                      ABRT Manual                     ABRT-HARVEST-VMCOR(1)

NAME
       abrt-harvest-vmcore - Converts VMCores to ABRT problems

SYNOPSIS
       abrt-harvest-vmcore

DESCRIPTION
       This script is meant to be run once at system startup after abrtd is up and running. It
       moves all vmcore directories in /var/crash (which are presumably created by kdump) to
       abrtd spool directory.

       The goal is to let abrtd notice and process them as new problem data dirs.

FILES
       /etc/abrt/plugins/vmcore.conf
           Configuration file where user can enable copying or moving VMcore to ABRT problem
           directory

SEE ALSO
       abrt-vmcore.conf(5) abrt.conf(5)

AUTHORS
       ・   ABRT team

abrt 2.1.11                                03/20/2019                      ABRT-HARVEST-VMCOR(1)

/etc/abrt/plugins/vmcore.conf が設定ファイルらしい。

[root@localhost ~]# cat /etc/abrt/plugins/vmcore.conf
# Do you want vmcore to be copied, or moved from /var/crash to /var/spool/abrt?
# (default is to copy, but it may duplicate way too much data)
CopyVMcore = yes

いました。
/etc/abrt/plugins/vmcore.conf の設定を no に書き換えます。
CopyVMcore = no

反映させる必要は特にないので、
もう一度crashdump を手動で出力秘孔を突くする。

[root@localhost ~]# echo c > /proc/sysrq-trigger

/var/crash
には作成されなくなった。

[root@localhost ~]# ls -l /var/crash/ /var/spool/abrt/
/var/crash/:
合計 0

/var/spool/abrt/:
合計 8
drwxr-x--- 2 root abrt 4096 Oct 25 15:21 vmcore-127.0.0.1-2019-10-25-15:21:34

これで良しとするか。

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1