解决Ubuntu重启后,core_pattern失效问题——手动关闭apport

云主机重启后,core_pattern,即/proc/sys/kernel/core_pattern/etc/sysctl*配置失效,被系统自动修改。
配置后,重启后core_pattern被重写
cat /etc/sysctl.conf

定位过程

定位到的原因是系统的apport服务导致的问题。

apport服务启动配置文件中/etc/init/apport.conf

apport将其自身注册为系统的核心转储处理程序, 它强制覆盖用户在/etc/sysctl.conf中指定的设置,并且不使用/etc/sysctl.d。
因此,它将覆盖启动和关闭时在其他位置配置的设置。

apport的功能是上报内部错误, 关闭后并不影响作为纯server使用的ubuntu系统的正常工作。
所以,为了解决这个问题,需要手动关闭apport服务。

ubuntu12.04 14.04

ucloud, tencent云主机已测试通过

service apport stop   #临时关闭
sudo update-rc.d -f apport remove
sed -i 's@enabled=1@enabled=0@g' /etc/default/apport  #永久关闭
sysctl -p

ubuntu18.04

sudo systemctl stop apt-daily.timer
sudo systemctl stop apt-daily.service

sudo systemctl stop apt-daily-upgrade.timer
sudo systemctl stop apt-daily-upgrade.service

sudo systemctl disable apt-daily.service
sudo systemctl disable apt-daily.timer
sudo systemctl disable apt-daily-upgrade.timer
sudo systemctl disable apt-daily-upgrade.service

systemctl stop apport.service
systemctl disable apport.service
sed -i 's@enabled=1@enabled=0@g' /etc/default/apport 

sysctl -p

参考:
https://bugs.launchpad.net/ubuntu/+source/apport/+bug/1080978

posted @ 2019-11-26 10:35  faithfu  阅读(1619)  评论(0编辑  收藏  举报