# apport - automatic crash report generation # # While this job is active, core dumps will captured by apport and # used to generate automatic crash reports. description "automatic crash report generation" start on runlevel [2345] stop on runlevel [!2345] env enabled=1 pre-start script # don't start in containers systemd-detect-virt --quiet --container && exit 0 || true . /etc/default/apport [ "$enabled" = "1" ] || [ "$force_start" = "1" ] || exit 0 mkdir -p -m 1777 /var/crash # check for kernel crash dump, convert it to apport report if [ -e /var/crash/vmcore ] || [ -n "`ls /var/crash | egrep ^[0-9]{12}$`" ] then /usr/share/apport/kernel_crashdump || true fi # check for incomplete suspend/resume or hibernate if [ -e /var/lib/pm-utils/status ] then /usr/share/apport/apportcheckresume || true rm -f /var/lib/pm-utils/status rm -f /var/lib/pm-utils/resume-hang.log fi echo "|/usr/share/apport/apport %p %s %c %P" > /proc/sys/kernel/core_pattern echo 2 > /proc/sys/fs/suid_dumpable end script post-stop script # don't stop in containers systemd-detect-virt --quiet --container && exit 0 || true # Check for a hung resume. If we find one try and grab everything # we can to aid in its discovery if [ -e /var/lib/pm-utils/status ] then ps -wwef > /var/lib/pm-utils/resume-hang.log fi if [ "`dd if=/proc/sys/kernel/core_pattern count=1 bs=1 2>/dev/null`" != "|" ] then exit 1 else echo 0 > /proc/sys/fs/suid_dumpable echo "core" > /proc/sys/kernel/core_pattern fi end script