在 Debian(及其他 Linux 发行版)上,“进程崩溃”是一个比较宽泛的说法,原因可能来自系统、资源、软件本身、依赖或外部信号等多个层面。下面按常见原因分类说明,并给出排查思路。
✅ 表现:
Segmentation fault (core dumped)✅ 排查:
dmesg | grep -i oom
journalctl -k | grep -i oom
Debian 默认或管理员设置了限制:
✅ 查看:
ulimit -a
cat /etc/security/limits.conf
.so 文件缺失或版本不匹配✅ 示例错误:
error while loading shared libraries
symbol lookup error
✅ 排查:
ldd /path/to/program
常见信号:
SIGSEGV:段错误SIGABRT:主动 abortSIGKILL:强制杀(通常是 OOM)SIGTERM:正常终止请求✅ 查看退出原因:
echo $?
137 → SIGKILL(9 + 128)139 → SIGSEGV(11 + 128)/tmp 不可写✅ 检查:
df -h
ls -l /var/log
✅ 查看:
systemctl status xxx
journalctl -u xxx -b
✅ 检查:
dmesg
smartctl -a /dev/sda
memtester
journalctl -xe
dmesg | tail
echo $?
ulimit -c unlimited
崩溃后分析:
gdb /path/to/bin core
systemctl status 服务名
journalctl -u 服务名
你可以告诉我:
core dumped 或 killed我可以直接帮你定位原因或给修复方案。