一个可怜的老非 root 用户如何获得 systemd 的核心转储?

ein*_*lum 5 core-dump systemd not-root-user

正如我们所知systemd核心转储不仅会写入当前目录,还会写入一些晦涩的日志。现在,我在某台机器上是一个可怜的老非 root 用户,而且 - 我想要我的核心转储!我无法按照建议以root身份编辑文件/etc或运行systemd实用程序。我还能以某种方式获取我的核心转储文件吗?

PS - 如果重要的话,我在 Fedora 22 上。

meu*_*euh 7

使用 systemdcoredumpctl列出和检索您的核心转储。使用程序的 PID 或名称来选择一个转储(到文件-o ...)或运行gdb

$ coredumpctl list
TIME                            PID   UID   GID SIG PRESENT EXE
Mon 2016-04-11 11:18:23 CEST  21538  1000  1000  11 * /usr/bin/sleep
$ coredumpctl info 21538
           PID: 21538 (sleep)
           UID: 1000 (meuh)
           ...
$ coredumpctl -o core dump sleep
$ coredumpctl gdb 21538
Run Code Online (Sandbox Code Playgroud)

( systemd 的一些中间版本使用名称systemd-coredumpctl)。您的用户 ID 必须在组中systemd-journal才能在不成为 root 的情况下执行此操作。