Linux下如何產生coredump(gdb調試用)

來源:互聯網
上載者:User

任務發生異常,需要記錄遺言資訊,利用gdb調試,因此需要記錄coredump檔案。

設定查看:

在root使用者下執行sysctl -a | grep core,查看core檔案的配置是否正確

命令設定:

1)使用命令 ulimit -c unlimited 設定coredump檔案可以使用最大空間;

  或去vi /etc/security/limits.conf修改

2)/proc/sys/kernal/core_pattern 可以設定coredump產生的路徑和檔案名稱格式。如果不修改,預設在程式執行目錄下產生。

   或使用命令修改:

    sysctl -w kernel.core_pattern=/core/core.%e.%p

如果設定了上述兩點,還是不能產生coredump,可能是以下原因:

1) 有些訊號量預設是不產生coredump的,可以用 man signal  看一下。

2) 硬碟空間不夠了,coredump需要佔用很大的硬碟空間(上G的空間);

3) ulimit -c 命令只在當前terminal上有效,也就是程式啟動的terminal設定該命令才有效。該命令無效,當然就不能產生coredump了。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.