You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ubuntu 20.04启动带访问控制的MongoDB报错只读目录无法创建锁文件

报错原因

该报错是因为运行mongod命令的用户,没有MongoDB数据目录/var/lib/mongodb的读写权限,无法创建运行必需的锁文件。
Ubuntu系统中MongoDB默认以mongodb系统用户身份运行,手动用普通用户/root用户执行启动命令时,就会出现权限不匹配的问题。

解决方案

按以下步骤操作即可修复:

  • 先停止所有运行中的MongoDB进程,避免目录被占用
sudo systemctl stop mongod
  • 递归修改数据目录的所属用户和用户组为MongoDB默认运行身份mongodb
sudo chown -R mongodb:mongodb /var/lib/mongodb
  • 修正目录权限,确保运行用户有完整读写权限
sudo chmod -R 755 /var/lib/mongodb
  • 选择合适的方式启动带访问控制的MongoDB实例:
    • 临时手动启动:切换到mongodb用户执行启动命令
    sudo -u mongodb mongod --auth --port 27017 --dbpath /var/lib/mongodb
    
    • 永久配置(更推荐):修改MongoDB默认配置文件开启访问控制,用系统服务管理进程
      编辑配置文件/etc/mongod.conf,找到security段修改为以下内容:
    security:
      authorization: enabled
    
    保存后重启MongoDB服务即可生效:
    sudo systemctl restart mongod
    
  • 验证启动状态
sudo systemctl status mongod

注意:禁止直接用root用户执行mongod命令,会导致数据目录权限被篡改为root所有,后续常规启动都会触发权限错误。

内容的提问来源于stack exchange,提问作者adityabhuvanraj

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.06 00:06:03