Re: Core Dump Location & systemd

Preuße, Hilmar <[email protected]> Tue, 31 Dec 2024 00:09:12 +0100
Newsgroups gmane.user-groups.linux.dresden
Message-ID <[email protected]>
On 30.12.2024 13:03, Christian Perle wrote:
> On Sun, Dec 29, 2024 at 23:49:29 +0100, Preuße, Hilmar wrote:

Moin,

>> ich habe ein RH8 System und will beeinflussen, wo (potentielle) Core
>> Dumps abgelegt werden. Nach einigem Herumsurfen komme ich zu dem
>> Ergebnis, daß diese auch mit systemd über den Kernel-Parameter
>> "kernel.core_pattern" gesteuert wird:
>>
>> kernel.core_pattern = |/usr/lib/systemd/systemd-coredump %P %u %g %s
>> %t %c %h %e
>>
>> Von hier aus lande ich bei [1], finde aber nicht die Stelle, wo man
>> die Lokation des Core Dumps steuern kann (außer natürlich
>> "kernel.core_pattern" selber anpassen).
> 
> Die Manpage systemd-coredump(8) verweist auf coredump.conf(5).
> Dort gibt es in der Section [Coredump] das Setting Storage=...
> Damit sollte es konfigurierbar sein.
> 

AFAICT leider nicht. [1] sagt:

      Storage=
            Controls where to store cores. One of "none", "external", and
            "journal". When "none", the core dumps may be logged
            (including the backtrace if possible), but not stored
            permanently. When "external" (the default), cores will be
            stored in /var/lib/systemd/coredump/. When "journal", cores
            will be stored in the journal and rotated following normal
            journal rotation patterns.

Ich kann also nur festlegen, daß es nicht ins Journal soll, nicht aber 
wo konkret hin.


> Der sysctl kernel.core_pattern hat ueber die Jahre immer mehr
> Features bekommen. Zuerst kam core_uses_pid dazu, dann Format Strings,
> dann die Moeglichkeit fuer einen optionalen Coredump-Helper im Userspace.
> 
> Grundsaetzlich unterscheidet der Kernel beim sysctl kernel.core_pattern
> zwischen Strings, die mit dem Pipe-Symbol beginnen und solchen, die
> einen absoluten oder relativen Pfad fuer den Core-Dateinamen
> beschreiben. Klassisches UN*X-Verhalten ist, dass der Kernel selbst
> eine Coredump-Datei "core" ins Working Directory des betreffenden
> Prozesses schreibt, sofern fuer den Owner des Prozesses die
> Berechtigungen ausreichen.
> 

Vielen Dank für die Erläuterungen, aber das war mir schon alles klar. 
Hätte ich ggf. dazu schreiben sollen, sorry! Wenn man im core_pattern 
auf ein Pipe Zeichen trifft, wundert man sich als Erstes, was das zu 
sagen hat und wird neugierig.

Hilmar

[1] https://www.man7.org/linux/man-pages/man5/coredump.conf.5.html
-- 
sigfault
OpenPGP_signature.asc (application/pgp-signature, 840 B)
-----BEGIN PGP SIGNATURE-----

wsF5BAABCAAjFiEEaXGmC/nkbIhxf16kxiZYRqvgLIsFAmdzKBkFAwAAAAAACgkQxiZYRqvgLItZ
IA/9HTGBK4ztjsGAGmEBd4F49caWrON/MLdTdTzwQHvlnz0jnKQnwBdZPNvsoC7hbRdsRfF9HU0o
R+BDpkZqnn7bqhRyLEYJlH86HpZwiIduak2e7On8Rl6ONGNgfsgAZla505B/M+ctr4em6DkyXYle
JNLvPhKQSo/LP+botGNMWrGieLrinBlGxT2glh+qpafIXgbJLWZM4gPk/iVIdk7MT44oa1E7GR9U
NKykg7KOQbgxrsXugNYQ6NDNjkBy3uvjjgMzmdXzStcBkiELahWjYXfKON48XjPdOgvRgBdaSr9T
ZDL7y5n6+Mw/IKX9js5efduy3V7SVHJXkkdFcKHOTljVr6x26RTC4ywKntZIJZHAU/1SIg0ynH9E
pqShHOZvOTokZoPgSJnopHTek/mtxTKvnfy8QuVxiritU9Cptm864UDo2/BZl4KtUwSu8gM/uxCA
v7lg4W4elRFxHi5GR0lysUDZbWfY9T4ixiuesOsBnX13fJaEkwrStKjitKQLQoJ6j8ydHVU/eI7a
B5tgOE1TLpW0CTVdLmvdTscUi4OdJWM46itJE9ekyN3j37r4bMat9d7M44nR7IKVRgCxmw94bFFj
6jd57WqIJQxWOysYZo/4km3IpEtI+Ly5DQDRUUwT2eDuSF9IiFZTwIBuZ3eMe3SpjGGS/0nTB1ja
eBQ=
=Fxp/
-----END PGP SIGNATURE-----