GNU/Linux >> Linux の 問題 >  >> Linux

コア ダンプ ファイルの場所 (および名前) を設定する方法は?

CentOS 6 でコア ダンプの場所を設定するには、/etc/sysctl.conf を編集します。 .たとえば、/var/crash でコア ダンプが必要な場合 :

kernel.core_pattern = /var/crash/core-%e-%s-%u-%g-%p-%t

変数の場所:

<ブロック引用>

%e ファイル名です
%g プロセスが実行されていた gid です
%p プロセスのpidです
%s ダンプの原因となったシグナル
%t ダンプが発生した時刻
%u プロセスが実行されていた uid です

また、 /etc/sysconfig/init を追加する必要があります

DAEMON_COREFILE_LIMIT='unlimited'

新しい変更を適用します:

$ sysctl -p

しかし、この方法には注意点があります。 /etc/sysctl.conf で値を手動で指定した場合でも、カーネル パラメーター kernel.core_pattern が常にリセットされ、再起動時に次の構成に上書きされる場合 :

|/usr/libexec/abrt-hook-ccpp %s %c %p %u %g %t e

要するに abrtd.service の場合 kernel.core_pattern を開始します インストールされたシステムによって自動的に上書きされます abrt-addon-ccpp .これを解決するには 2 つの方法があります:

<オール>
  • 設定 DumpLocation /etc/abrt/abrt.conf のオプション 構成ファイル。宛先ディレクトリは、DumpLocation =/var/crash を設定することで指定できます /etc/abrt/abrt.conf で 構成ファイル、および sysctl kernel.core_pattern の表示値は同じですが、実際には /var/crash 配下のディレクトリにコアファイルが作成されます .

    また、SELinux を有効にしている場合は、以下を実行する必要があります:

    $ semanage fcontext -a -t public_content_rw_t "/var/crash(/.*)?"  
    $ setsebool -P abrt_anon_write 1
    

    最後に abrtd.service を再起動します :

    $ service abrtd.service restart
    
  • abrtd サービスを停止します。 kernel.core_pattern 上書きされません。 - (私はテストしたことがありません)。


  • Linux
    1. Imgファイルのタイプを見つけてマウントする方法は?

    2. コアダンプの場所の変更

    3. Windows と Unix/Linux 形式の間でテキスト ファイルの改行を変換する方法は?

    1. Bash スクリプトのスクリプト ファイル名を知るにはどうすればよいですか?

    2. ファイルを分割し、各部分の最初の行を保持する方法は?

    3. Linux pthreads でスレッドの名前を設定するには?

    1. ロケールを設定する方法とその意味は何ですか?

    2. ls をファイル拡張子でソートしてから名前を付ける方法は?

    3. ファイルを gunzip して .gz ファイルを保持するにはどうすればよいですか?