位置: 编程技术 - 正文

CentOS 7系统下SELinux阻止MongoDB启动的问题详解(centos7.1)

编辑:rootadmin

推荐整理分享CentOS 7系统下SELinux阻止MongoDB启动的问题详解(centos7.1),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:centos7 ll,centos7 ll,centos7 softwareselection,centos7.6,centos7 7.6,centos7.0,centos7 softwareselection,centos7 softwareselection,内容如对您有帮助,希望把文章链接给更多的朋友!

问题描述:

最近发现了一个问题,在新装的CentOS7上,安装了MongoDB3.4,挂载了一个大的数据盘后,修改/etc/mongo.conf,将配置文件中的log和data目录放在新的数据盘下,并修改文件的访问权限。

改完后的mongo.conf:

文件权限:

执行systemctl start mongod命令后,查看状态发现并没有启动,查看/var/log/message,发现以下错误

从提示中可以看出是SELinux的防护功能,阻止了访问。

SELinux

SELinux的全称是Security Enhanced Linux, 就是安全加强的Linux。在SELinux之前,root账号能够任意的访问所有文档和服务;如果某个文件设为,那么任何用户都可以访问甚至删除;这种方式称为DAC(主动访问机制),很不安全。

DAC 自主访问控制: 用户根据自己的文件权限来决定对文件的操作,也就是依据文件的own,group,other/r,w,x权限进行限制。Root有最高权限无法限制。r,w,x权限划分太粗糙。无法针对不同的进程实现限制。

SELinux则是基于MAC(强制访问机制),简单的说,就是程序和访问对象上都有一个安全标签(即selinux上下文)进行区分,只有对应的标签才能允许访问。否则即使权限是,也是不能访问的。

CentOS 7系统下SELinux阻止MongoDB启动的问题详解(centos7.1)

在SELinux中,访问控制属性叫做安全上下文。所有客体(文件、进程间通讯通道、套接字、网络主机等)和主体(进程)都有与其关联的安全上下文,一个安全上下文由三部分组成:用户(u)、角色(r)和类型(t)标识符。但我们最关注的是第三个部分

当程序访问资源时,主体程序必须要通过selinux策略内的规则放行后,就可以与目标资源进行安全上下文的比对,若比对失败则无法存取目标,若比对成功则可以开始存取目标,最终能否存取目标还要与文件系统的rwx权限的设定有关。所以启用了selinux后出现权限不符的情况时,你就得一步一步的分析可能的问题了。

解决过程:

/var/log/message中的信息看起来比较费劲,里面有一句提示:

根据提示执行:

其中 FILE_TYPE 为以下内容之一:mongod_log_t, mongod_tmp_t, mongod_var_lib_t, mongod_var_run_t, tmp_t, var_lib_t, var_log_t, var_run_t。

然后执行:

上面提示输出中已经包含了,解决方法:

上面命令执行完毕后,就解决了/data/mongodb/log目录的文件权限问题。

同样的方法,再解决/data/mongodb/data和/data/mongodb/run目录的问题。

启动mongod,问题解决。

P.S. 除了上面通过提示信息解决问题外,还有一个比较暴力的方法,直接关闭SELinux,但是不太建议。

上面是临时关闭,如果是永久关闭,就需要编辑/etc/selinux/config文件,将SELINUX=enforcing改为SELINUX=disabled,但是只有重启后才会发挥作用。

总结

标签: centos7.1

本文链接地址:https://www.jiuchutong.com/biancheng/312085.html 转载请保留说明!

上一篇:Centos7安装和卸载Mongodb数据库的方法(centos7.0安装)

下一篇:MongoDB日常使用的技巧与注意事项汇总(mongodb常用语句)

  • 小规模结转增值税会计科目有哪些
  • 待抵扣进项税的账务处理
  • 材料报废是否可以税前扣除
  • 纳税人资格是什么意思
  • 小规模纳税人怎么办理
  • 计提工会经费的科目
  • 预收款增值税纳税义务发生时间与确认收入时间
  • 预计产品质量保证损失是什么意思
  • 购买礼品送客户个人所得税
  • 可辨认净资产和所有者权益的区别
  • 货运代理开票系统如何开票
  • 30万免税超过30万
  • 营业税金及附加借贷方向
  • 以前年度损益调整
  • 收回多借差旅费
  • 商标注册费用计入会计科目二级
  • 生产的产品不合格作废会计分录
  • 受托委托加工物资成本包括什么
  • 单位收到社保补缴通知书后怎么办
  • 行政事业单位会计的工作内容
  • 税控发票系统
  • 建筑企业管理部门
  • 同一控制下企业合并入账价值
  • 销售库存商品是什么凭证
  • 房地产企业开具零税率发票
  • 办公用品收据可以入账吗
  • 委托招聘服务费怎么算
  • 代缴的五险一金能贷款吗
  • 固定资产的处理方法
  • Win11 Build 22449.1000更新里哪些内容?Win11 Build 22449更新介绍与安装方法
  • 企业将自有房产全部租出去房产税如何征收
  • 生产企业出口退税的计算方法
  • umi ts
  • 分享php守护进程失败
  • 有限公司股权转让怎么办理流程
  • 企业股股票
  • css加小手
  • Vue 3 介绍
  • Python web开发基础教程的心得
  • php文件怎么浏览
  • 公司主营业务怎么介绍
  • 出租改自用房产税
  • 招待费进项转出填表二哪里
  • 固定资产投资入股是否缴纳增值税
  • python中的split函数
  • mongodb $nin
  • 非营利组织缴纳增值税账务处理
  • 合并会计报表编制实例
  • 增量留底退税额计算
  • 应收账款在贷方为负数表示什么
  • 红冲凭证怎么做分录
  • 税收返还要交税费吗
  • 负数发票开错了是否可以作废?
  • 长期股权投资全部亏损汇算清缴怎么填
  • 职工医保报销会扣医保卡的钱吗
  • 小微企业即征即退
  • 预收账款借方和贷方表示什么
  • 内部无形资产交什么税
  • 年终奖和工资一起发吗
  • 废品损失明细账应选择三栏式
  • sqlyog存储过程
  • CentOS 7中安装mysql server的步骤分享
  • 光盘安装系统怎么操作
  • win8禁用网络之后如何开启
  • ubuntu2004分区教程
  • 桌面开始菜单跑到右边去了怎么办
  • 如何改变linux终端界面的颜色
  • linux groupmod命令参数及用法详解(linux修改组信息命令)
  • 导入extjs、jquery 文件时$使用冲突问题解决方法
  • jquery的实现原理
  • node.js和go
  • 批处理查找字符中含有等号的子串
  • linux的cp和mv
  • jquery异步提交表单
  • Nodejs之http的表单提交
  • jQuery实现获取table表格第一列值的方法
  • js实现类
  • 国家税务局内蒙古税务
  • 增值税税控开票软件密码不知道了怎么办
  • 车船税保险公司代收代缴后,单位还申报不?
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设