W przypadku nieoczekiwanego wyłączenia się programu, automatycznie uruchamiany jest proces coredump, który powoduje zrzut różnych informacji, które programistom mogą pomóc w rozwiązaniu problemu. Niemniej jednak, dla zwykłego użytkownika jest to proces zbyteczny, zajmuje miejsce, a nadto w owych zrzutach mogą być różne informacje, do których niekoniecznie chcielibyśmy, by ktokolwiek miał dostęp (co prawda są one niby czytelne wyłącznie dla roota, jednakże nie jest to w zasadzie żadne zabezpieczenie przed osobą, która potrafi się do partycji głównej "dobrać", nawet nie znając hasła root). Dodatkowo zrzuty zabierają jeszcze miejsce na dysku, czego niekoniecznie musimy sobie życzyć.
Z punktu widzenia zatem zwykłego użytkownika usługa ta może być po prostu zbędna.
Wyłączenie można przeprowadzić na - w zasadzie - dwu poziomach. W przestrzeni użytkownika (userspace) oraz pozostałej. Wyłączenie pierwszej powoduje, że programy uruchamiane w userspace nie będą dokonywały zrzutów, jeśli niespodziewanie się wyłączą. Wyłączenie również drugiej powoduje, że coredump jest wyłączone dla wszystkich sytuacji.
1.
Wyłączenie coredump w userspaceDokonujemy edycji pliku /etc/systemd/coredump.conf, odnajdujemy linijkę, którą domyślnie ma postać:
# Storage=external
i zmieniamy na:
Storage=none
Teraz jeszcze musimy o tym poinformować systemd:
# systemctl daemon-reload
2.
Zerujemy przestrzeń dyskową dla zrzutówEdytujemy plik /etc/security/limits.conf i dopisujemy:
* hard core 0
pod sekcją, która wygląda tak:
#<domain> <type> <item> <value>
3.
Zmieniamy ustawienia sysctlEdytujemy bądź tworzymy plik: /etc/sysctl.conf
i dopisujemy w nim:
fs.suid_dumpable = 0
Można też przekompilować kernel i w ogóle wyłączyć taką możliwość.
Na podstawie:
http://www.cyberciti.biz/faq/linux-disable-core-dumps/https://wiki.archlinux.org/index.php/Core_dump