Centos8.1更新Selinux后,导致seafile7.1.4的systemctl自启文件失效

根据提示操作后一而再受限:

seafile目录里直接执行./seafile.sh start ;./seahub.sh start 均正常。

只是在开启Selinux下(除非Permissive模式下才可以)无法用systemctl seafile.service;systemctl seahub.service服务自启功能!

问题原因可能是Selinux规则更新后导致没有RPM信息验证的systemctl服务读取目标将被受限,望求个解决办法或下个版本能解决。

周末抽空自己解决了。

思路是:1、先要看懂selinux日志大意参考http://c.biancheng.net/view/1155.html文章
2、得出这也是selinux的主体安全上下文类型不匹配导致的
3、查下官方服务器手册里关于建议安装的目录位置是/opt,用ls -Z显示安全文本类型是usr_t,所以可以尝试把/home/seafile改成usr_t。
4、查阅书籍使用chcon -R -t usr_t /home/seafile后重启一切正常
5、但是可以肯定每次更新版本后还必须再执行一次修改安全文本类型命令,因为/home的默认安全文本类型没有改变。所以没必要更改官方推荐的安装路径以免自讨麻烦…(我当时安装的想法是seafile程序和data放一起毕竟/home空间大,程序和数据分开绑定嫌麻烦)。

使用环境Centos版本:8.1.1911 Seafile版本:7.1.4