SELinux阻止PostgreSQL启动,如何在不关闭SELinux的前提下解决?
PostgreSQL启动关联SELinux错误问题解决
问题现象
- 尝试使用PostgreSQL搭建Oracle兼容服务时,执行启动命令
sudo systemctl start postgresql报错,数据库无法正常启动 - 初步排查确认问题与SELinux相关,关闭SELinux后数据库可正常启动
- 错误日志中仅提示
error while loading shared libraries:,未展示具体的异常共享库名称,无法直接定位问题库 - 数据库安装在默认路径
/var/lib/pgsql下,报错前未修改任何配置文件
排查过程
- 按操作指引采集了SELinux的AVC日志用于进一步排查权限异常
最终解决方案
问题根源为第三方非官方仓库提供的PostgreSQL 10版本未适配当前系统的SELinux规则,解决步骤如下:
- 彻底卸载从第三方仓库安装的旧版PostgreSQL
- 从PostgreSQL官方仓库下载安装最新稳定版本
- 保持SELinux为enforcing强制模式,数据库可正常运行
内容的提问来源于stack exchange,提问作者pydev95
相关产品推荐
相关产品推荐

