Ubuntu20.04虚拟机中Mongod 6.0启动失败求助
MongoDB启动失败(core-dump,signal=ILL)问题原因排查
问题场景
按MongoDB官方Ubuntu安装指引完成安装后,执行启动命令:
sudo systemctl start mongod
无直观报错,但执行状态检查:
sudo systemctl status mongod
返回核心转储错误,关键信息为signal=ILL(非法指令),完整输出如下:
● mongod.service - MongoDB Database Server Loaded: loaded (/lib/systemd/system/mongod.service; enabled; vendor preset: enabled) Active: failed (Result: core-dump) since Mon 2023-01-02 15:14:01 -05; 1s ago Docs: https://docs.mongodb.org/manual Process: 2339 ExecStart=/usr/bin/mongod --config /etc/mongod.conf (code=dumped, signal=ILL) Main PID: 2339 (code=dumped, signal=ILL) ene 02 15:14:01 luis-VirtualBox systemd[1]: Started MongoDB Database Server. ene 02 15:14:01 luis-VirtualBox systemd[1]: mongod.service: Main process exited, code=dumped, status=4/ILL ene 02 15:14:01 luis-VirtualBox systemd[1]: mongod.service: Failed with result 'core-dump'.
已尝试卸载重装,问题未解决。
核心原因分析
1. CPU指令集不兼容(最常见)
MongoDB 5.0及以上版本强制要求CPU支持AVX指令集,如果你的虚拟机(比如VirtualBox)未在CPU设置中启用AVX,或者物理CPU本身不支持该指令集,MongoDB启动时会触发非法指令错误。
- 验证方法:执行
grep avx /proc/cpuinfo,无输出则说明CPU不支持AVX。
2. 安装包与系统架构不匹配
若下载的MongoDB安装包和当前Ubuntu系统架构(如x86_64/arm64/i386)不匹配,会导致二进制文件无法正常执行,触发核心转储。
- 验证方法:执行
dpkg --print-architecture查看系统架构,对比安装包的架构标识。
3. 数据目录异常
即使重装,若原MongoDB数据目录(默认/var/lib/mongodb)存在损坏的文件或权限错误,也会导致启动失败。
- 排查方法:停止服务后备份数据目录,清空目录后尝试重启;检查目录权限是否为
mongodb:mongodb。
4. 系统依赖库不兼容
系统底层依赖库(如libc、openssl)版本过低,与MongoDB二进制文件不兼容,也可能引发该错误。
- 验证方法:执行
ldd /usr/bin/mongod,检查输出中是否有not found的依赖项。
内容的提问来源于stack exchange,提问作者LuisFerchx
相关产品推荐
相关产品推荐

