根據core的檔案,內核模式中的 %e 代表“行程或執行緒的通信值”。此外,核心 comm 值被定義為 /proc/[pid]/comm 回傳的任何值。然而,在我的機器(CentOs)上,盡管內核模式被定義為 core-%e 并且 comm 值只回傳行程名稱,PID 仍然附加到核心名稱。為什么檔案和實際行為之間存在這種差異?
[root@mde-segment-bouretskey dump]# cat /proc/sys/kernel/core_pattern
/tmp/dump/core-%e
[root@mde-segment-bouretskey dump]# ls /tmp/dump/core-*
/tmp/dump/core-a.out.42098 /tmp/dump/core-a.out.43097
[root@mde-segment-bouretskey dump]#
[root@mde-segment-bouretskey crashtest]# cat /proc/45301/comm
a.out
uj5u.com熱心網友回復:
您需要設定kernel.core_uses_pid=0以避免在%p缺少pid 時附加 pid 。
從核心(5):
為了向后兼容,如果 /proc/sys/kernel/core_pattern 不包含 %p 并且 /proc/sys/kernel/core_uses_pid(見下文)非零,則 .PID 將附加到核心檔案名。
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/363910.html
上一篇:如何在Flutter-SQLite-Dart應用程式中保存資料庫時加密密碼?
下一篇:sed用當前目錄替換路徑的一部分
