lxc 容器中存储的核心文件在哪里?
Where are core files stored in a lxc container?
当我 运行 在一个容器上编写代码时,我无法在我的容器上找到它(或者核心文件没有被存储)。
ulimit -c
设置为 unlimited
/proc/sys/kernel/core_pattern
设置为
|/usr/share/apport/apport %p %s %c %P
(|
是什么意思?)
我是否需要对主机系统进行任何更改in/to?
|
表示程序应该处理核心转储。它不会将核心转储保存到文件中,而是通过管道传输到该程序的输入中。意味着如果 core_pattern
设置为 |... apport
apport
将处理核心转储。
不幸的是,apport
将仅为 installed
包创建核心转储。我会将模式设置为文件名,如下所示:
echo '/tmp/cores/core.%e.%p.%t' > /proc/sys/kernel/core_pattern
他们会给你像 /tmp/core.program.pid.012345678
这样的核心转储,其中 program
是程序名称,pid
程序的 pid 加上最后的时间戳。
查看 man core
了解更多信息(尤其是有关可在核心模式中使用的元字符的信息。
当我 运行 在一个容器上编写代码时,我无法在我的容器上找到它(或者核心文件没有被存储)。
ulimit -c
设置为unlimited
/proc/sys/kernel/core_pattern
设置为|/usr/share/apport/apport %p %s %c %P
(|
是什么意思?)
我是否需要对主机系统进行任何更改in/to?
|
表示程序应该处理核心转储。它不会将核心转储保存到文件中,而是通过管道传输到该程序的输入中。意味着如果 core_pattern
设置为 |... apport
apport
将处理核心转储。
不幸的是,apport
将仅为 installed
包创建核心转储。我会将模式设置为文件名,如下所示:
echo '/tmp/cores/core.%e.%p.%t' > /proc/sys/kernel/core_pattern
他们会给你像 /tmp/core.program.pid.012345678
这样的核心转储,其中 program
是程序名称,pid
程序的 pid 加上最后的时间戳。
查看 man core
了解更多信息(尤其是有关可在核心模式中使用的元字符的信息。