我希望postfix
能够与其交谈mysql
,但又不让它失控chroot
。
我猜测将套接字文件移入chroot
应该可以解决这个问题,但这并不容易。
如果我尝试更新我能找到/var/run/mysqld
的 所有参考资料/var/spool/postfix/var/run/mysqld
。
Mysql 想要启动,并要求我运行systemctl status mysql.service
,然后我得到:
● mysql.service - MySQL Community Server
Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: enabled)
Active: activating (start-post) (Result: exit-code) since tis 2016-09-06 08:46:34 CEST; 7s ago
Process: 2747 ExecStart=/usr/sbin/mysqld (code=exited, status=1/FAILURE)
Process: 2743 ExecStartPre=/usr/share/mysql/mysql-systemd-start pre (code=exited, status=0/SUCCESS)
Main PID: 2747 (code=exited, status=1/FAILURE);
: 2748 (mysql-systemd-s)
CGroup: /system.slice/mysql.service
└─control
├─2748 /bin/bash /usr/share/mysql/mysql-systemd-start post
└─2790 sleep 1
sep 06 08:46:34 kglive systemd[1]: Starting MySQL Community Server...
sep 06 08:46:36 kglive systemd[1]: mysql.service: Main process exited, code=exited, status=1/FAILURE
并grep ERROR /var/log/mysql/error.log
重复:
2016-09-06T06:41:24.615150Z 0 [ERROR] Could not create unix socket lock file /var/spool/postfix/var/run/mysqld/mysqld.sock.lock.
2016-09-06T06:41:24.615154Z 0 [ERROR] Unable to setup unix socket lock file.
2016-09-06T06:41:24.615158Z 0 [ERROR] Aborting
目前,我在目录之间使用手动挂载绑定,但每次重启后都必须重新执行此操作,使用ln -s /var/spool/postfix/var/run/mysqld /var/run/mysqld
或放入挂载/etc/fstab
没有帮助,我猜这是因为启动 mysqld/var/run/mysqld
在启动时重新创建了文件夹。
- 可以移动套接字文件吗?
- 还有什么其他选择?
(我知道如何让 postfix 脱离 chroot,但我希望不需要这么做)
我认为 mount-bind 解决方案在 上会停止工作service mysql restart
。