然而,尽管在核心(8)联机页面中没有提到这一点,apport documentation on the Ubuntu wiki则声称,
Note that even if ulimit is set to Disabled core files (by specyfing a
core file size of zero using ulimit -c 0),apport will still capture
the crash.
我的过程中有没有办法(即不依赖于外部系统的配置),我可以确保从未生成过程的核心转储?
注意:我知道有很多方法(如在下面的评论中提到的方法),具有根或进程所有者权限的用户仍然可以访问敏感数据.我正在瞄准的是通过将敏感数据保存到磁盘,将其发送到Ubuntu的错误跟踪系统或类似的事情来防止意外的暴露. (感谢Basile Starynkevitch做出这一点.)
解决方法 根据 the POSIX spec,核心转储仅在响应其 *** 作是默认动作的信号时发生,其默认 *** 作是“以额外的 *** 作异常终止进程”.所以,如果您在the description of signal.h中向下滚动到列表,“默认 *** 作”列中的所有“A”都是您需要担心的信号.使用sigaction捕获所有这些,只需在信号处理程序中调用exit(或_exit).
我相信这些是POSIX让您生成核心转储的唯一方式.可以想象,linux可能会为此而设立其他“后门”不幸的是,我不够一个内核专家,以确保…
总结以上是内存溢出为你收集整理的如何确保我的Linux程序不产生核心转储?全部内容,希望文章能够帮你解决如何确保我的Linux程序不产生核心转储?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)