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