共計 950 個字符,預計需要花費 3 分鐘才能閱讀完成。
自動寫代碼機器人,免費開通
本篇文章為大家展示了 Linux 中怎么生成 core 文件,內容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。
臨時設置 core 文件:
1. 查看生成 core 文件的開關是否開啟;
輸入命令# ulimit -a
說明:第一行 core 文件大小為 0,沒有開啟。
2. 使用 #ulimit -c [kbytes] 可以設置系統允許生成的 core 文件大??;
ulimit -c 0 不產生 core 文件
ulimit -c 100 設置 core 文件最大為 100k
ulimit -c unlimited 不限制 core 文件大小
執行命令# ulimit -c unlimited,然后 ulimit - a 查看 core
數據庫進程奔潰就可以生成 core 文件了,這種方法只能在 shell 中生效。
永久設置 core 文件:
1. 修改 /etc/profile 文件添加參數;
vim /etc/profile
在 profile 文件中加入 ulimit -c unlimited
保存退出,重啟服務器,改文件就長久生效,或者 #source /etc/profile,不重啟服務器,使用 source 使文件馬上生效。
2. 指定生成文件的路徑和名字;
執行# vim /etc/sysctl.conf,進入編輯模式,加入下面兩行
kernel.core_pattern=/var/core/core_%e_%p
kernel.core_uses_pid=0
在 var 下創建 core 目錄,用# sysctl –p /etc/sysctl.conf,是修改馬上生效。
core_pattern 的命名參數如下:
%c 轉儲文件的大小上限
%e 所 dump 的文件名
%g 所 dump 的進程的實際組 ID
%h 主機名
%p 所 dump 的進程 PID
%s 導致本次 coredump 的信號
%t 轉儲時刻 (由 1970 年 1 月 1 日起計的秒數)
%u 所 dump 進程的實際用戶 ID
3. 測試結果;
# kill -s SIGSEGV $$,執行命令,可以看到 /var/core 下生成了一個 core 文件,說明已經設置成功。
至此進程出問題就可以用 core 文件調試了。
上述內容就是 Linux 中怎么生成 core 文件,你們學到知識或技能了嗎?如果還想學到更多技能或者豐富自己的知識儲備,歡迎關注丸趣 TV 行業資訊頻道。
向 AI 問一下細節