Festlegen der Standardberechtigungen für Kerndateien

8

Der Prozess, den ich ausführe, generiert manchmal eine Kerndatei, und diese Datei verfügt über die folgenden Dateiberechtigungen:

server:~ # ls -l /mnt/process/core/core_segfault 
-rw------- 1 root root 245760 Dec  2 11:29 /mnt/process/core/core_segfault

Das Problem ist, dass nur rootBenutzer es zur Untersuchung öffnen können, während ich möchte, dass jeder, der Zugriff darauf hat, es lesen kann, ohne dass ich die Berechtigungen immer manuell einstelle.

Wie kann ich Standardberechtigungen für so etwas wie -rw-rw-rw- festlegen ?

Crollywood
quelle

Antworten:

13

Da Kerndateien das vollständige Speicherlayout des Prozesses zum Zeitpunkt des Absturzes enthalten, können sie vertrauliche Informationen enthalten. Aus diesem Grund werden Kerndateien erstellt, deren Besitz zum Zeitpunkt des Absturzes auf die UID des Prozesses festgelegt ist, und die Berechtigungen sind eher restriktiv. Es gibt keine Einstellung, um dies so einfach zu ändern.

Sie können jedoch die kernel.core_patternsysctl-Einstellung auf ein Programm setzen (das mit einem Pipe-Zeichen beginnen muss |). Der Kernel ruft dieses Programm dann auf, wenn eine Kerndatei generiert wird, anstatt sie auf die Festplatte zu übertragen. Dieses Programm sollte in der Lage sein, die Kerndatei mit den gewünschten Berechtigungen zu generieren.

Beispiele für Programme, die dies tun, sind systemd-coredumpund apport.

Wouter Verhelst
quelle
Mehr über Pipes in core_patterns finden Sie hier link
crollywood