MongoDB 服务:无法打开日志文件权限被拒绝

时间:2021-06-07 06:49:15

标签: mongodb

我正在尝试用 bindip、复制名称等替换 mongod.conf 文件后重新启动 mongodb 服务。但不幸的是,它失败了,并声明无法打开日志文件权限被拒绝。

cat /etc/mongod.conf
systemLog:
  destination: file
  path: "/data/log/test.log"
  logAppend: true
net:
  bindIp: 0.0.0.0
  port: 27017
storage:
  dbPath: "/data/dbdata/"

replication:
  replSetName: "rs0"

错误信息:

msg":"Error during global initialization","attr":{"error":{"code":38,"codeName":"FileNotOpen","errmsg":"Failed probe for \"/data/log/test.log\": Permission denied"}}}

服务器权限:

ls -la /data/log
total 0
drwxrwxrw-. 2 mongod mongod 22 Jun  7 06:33 .
drwxrwxrw-. 5 mongod mongod 42 Jun  7 05:34 ..
-rwxrwxrwx. 1 mongod mongod  0 Jun  7 06:33 test.log
ls -la /data/
total 0
drwxrwxrw-.  5 mongod mongod  42 Jun  7 05:34 .
dr-xr-xr-x. 18 root   root   236 May  4 17:30 ..
drwxrwxrw-.  2 mongod mongod   6 Jun  7 05:34 dbdata
drwxrwxrw-.  2 mongod mongod  22 Jun  7 06:33 log
ls -ld /data
drwxrwxrw-. 5 mongod mongod 42 Jun  7 05:34 /data

注意:/data/dbdata,/data/log 是挂载点

1 个答案:

答案 0 :(得分:0)

按照官方文档中提供的 selinux 设置所需的步骤修复了该问题

https://docs.mongodb.com/manual/tutorial/install-mongodb-on-red-hat/#std-label-install-rhel-configure-selinux

yum install -y policycoreutils-python-utils

semanage fcontext -a -t mongod_var_lib_t /data/dbdata.*
semanage fcontext -a -t mongod_log_t /data/log.*


chcon -Rv -u system_u -t mongod_var_lib_t /data/dbdata
chcon -Rv -u system_u -t mongod_log_t /data/log


restorecon -R -v /data/dbdata
restorecon -R -v /data/log
相关问题