位置: 编程技术 - 正文

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

发布时间:2024-01-29

推荐整理分享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常用语句)

  • 企业的进项税额怎么算
  • 普通发票作废要收回吗
  • 继续教育报名发什么文件
  • 保函费用是用来干什么的
  • 土地增值税清算是什么意思
  • 一般存款账户的主要用途
  • 计划成本法委托加工物资例题
  • 清包工一般纳税人简易计税能开专票
  • 原材料呆滞物料处理方法
  • 美金报关出口能不能收跨境人民币
  • 企业代缴个人所得税打印完税证明
  • 小企业发生销售折让的原因
  • 企业所得税费用税率
  • 小规模纳税人开票额度
  • 物业公司要怎么开水电费证明
  • 临时工怎样做账
  • 管理不善造成的损失怎么处理
  • 外国人的纳税人识别号是护照号吗
  • 企业的固定资产可以按照其价值和使用情况
  • 金税盘开票信息修改
  • 税务局不备案可以吗
  • 民办非企业单位和私营单位的区别
  • 认证未抵扣往哪里记
  • 三方转账协议应该怎么写
  • 外购固定资产入账
  • kazaalite.exe是什么进程 kazaalite进程有什么用
  • php中session使用
  • phpseessid
  • 增值税发票查询结果不一致是什么意思
  • dom-to-image原理
  • php基于mcrypt_encrypt和mcrypt_decrypt实现字符串加密解密的方法
  • Code For Better 谷歌开发者之声——初识Web与谷歌,拉起兴趣之心。
  • 承租方的物品如何处理
  • linux时间12小时制
  • 一阶段目标检测算法
  • vue3 $bus
  • 研发支出资本化支出属于什么科目
  • 阿里规则官方头条
  • 专家咨询费比例不能超过多少
  • 自由会计服务类工作者
  • 实收资本核算有哪些要求
  • 非盈利机构怎么说
  • 金蝶kis固定资产反结账
  • 实收资本不能动吗
  • 生育津贴到公司账户了多久给个人
  • 土地增值税间接转让怎么算
  • 支付定金的账务怎么处理
  • 财产租赁合同印花税申报期限
  • 房地产企业怎么交房产税
  • 分公司与总公司的责任承担
  • 赠送油卡需要代理吗
  • 其他应付重分类到其他应收
  • 期间费用率怎么算
  • mac设置启动系统
  • ubuntu安装教程20.04 u盘
  • centos编译器
  • 文件选项夹在哪里
  • linux shell awk 流程控制语句(if,for,while,do)详细介绍
  • linux怎么禁用命令
  • win10 rs5
  • win10输入框在哪里
  • windows8.1开机
  • win8windows设置在哪里
  • win10怎么添加打印机
  • win7系统如何添加虚拟网卡
  • win7 32位旗舰版电脑城下载
  • 微软 系统设计
  • ExtJs扩展之GroupPropertyGrid代码
  • cocos屏幕适配方案
  • javascript正则匹配两个点
  • bat注销命令
  • Scrapy框架可以用于数据挖掘、监测和自动化测试
  • jquery图片轮播无缝连接
  • nodejs事件循环和js事件循环
  • python基础入门教程
  • Android Studio --自动删除没有用的资源,给APK减减肥
  • jquery绑定数据
  • 常规巡察和专项巡察相结合
  • 租房减免税收
  • 云南省2021年退休金计发基数
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号