나는 그것을 밖으로 내보내지 않고 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
시작하면 시작 시 폴더가 다시 생성되었기 때문인 것 같습니다.
- 소켓 파일을 이동할 수 있습니까?
- 어떤 다른 옵션을 사용할 수 있나요?
(chroot에서 postfix를 허용하는 것에 대해 알고 있지만 그럴 필요가 없기를 바랍니다.)
마운트 바인드 솔루션이 service mysql restart
.