我正在使用 Centos 7 运行本地 vagrant 设置。我最近更改了数据目录以在盒子被破坏时保留数据。但是,现在 MariaDB 不会在重启时启动。我的设置如下。
.cnf
文件/etc/my.cnf.d
(肯定正在加载)
- 通过 yum 安装 MariaDB
systemctl enable mariadb.service
systemctl start mariadb.service
因此,初始时vagrant up
服务会启动并可与正确数据联系。但是,之后vagrant halt
,所有后续启动都不会自动启动该服务。
任何想法都将不胜感激。假设这是愚蠢的事情,但我为此绞尽脑汁太久了。
答案1
您的问题的根源有一个名字:selinux
一个快速而又非常粗暴的解决方案是,以 root 身份“setenforce 0”。要使此更改永久生效,您必须编辑“/etc/sysconfig/selinux”并将“enforcing”更改为“permissive”,或者(从在线手册中复制):
在系统菜单上,指向管理,然后单击安全级别和防火墙以显示安全级别配置对话框。
单击 SELinux 选项卡。
在 SELinux 设置中选择“禁用”、“强制”或“宽容”,然后单击“确定”。
如果从“启用”更改为“禁用”或反之亦然,则需要重新启动机器才能使更改生效。
要想按部就班地解决问题,您必须创建新的 selinux 策略,这本身就是一项艰巨的任务。如果您有时间并且足够好奇,请尝试一下。