저는 Debian Wheezy에서 nginx, PHP-FPM, MySQL을 실행하고 있습니다. debootstrap
NET의 각 개별 가상 호스트에 대해 chroot Jail(사용)을 설정 했습니다 /srv/
. 모든 것이 예상대로 작동하지만 재부팅할 때마다 수동 mount --bind /proc /srv/chrootjail/proc
으로 mount --bind /run/mysqld /srv/chrootjail/run/mysqld
.
그래서 다음 줄을 추가했습니다 /etc/fstab
.
/proc /srv/chrootjail/proc none rw,bind 0 0
/run/mysqld /srv/chrootjail/run/mysqld none rw,bind 0 0
/srv/chrootjail/proc
올바르게 설치되었지만 /srv/chrootjail/run/mysqld
작동하지 않습니다.아니요이유를 찾을 수 없습니다. /srv/chrootjail/run/mysqld
그러나 문제는 해결되었습니다 /run/mysqld
. mount -a
분명한 이유로 이것은 내가 바라던 해결책이 아닙니다.
내가 여기서 뭘 잘못하고 있는지 아는 사람이 있나요?
답변1
실제로 무슨 일이 일어나고 있는지에 대한 나의 지식은 매우 제한적이지만 특히 이 문제에 직면 mount --bind
한 이유를 알아낸 것 같습니다 . /run/mysqld
방금 알아차렸어/run
(이전의 /var/run
)는 tmpfs였습니다.따라서 재부팅하는 동안 지워집니다. 그래서 제 추측으로는 /run/mysqld
파싱할 때 존재하지 않는 것 같아요. /etc/fstab
init 스크립트는 /etc/init.d/mysql
이를 확인하고 필요한 경우 생성합니다./run/mysqld
# Could be removed during boot
test -e /run/mysqld || install -m 755 -o mysql -g root -d /run/mysqld
해결 방법으로 mount -a
해당 줄 뒤에 하나를 추가했습니다. 어디든 만들 수 있을 것 같지만(?) 내부에 /run
(또는 ) /var/run
mysqld 폴더를 만듭니다 . 하지만, 아무도 말해주지 않는다면더 나은 것그렇게 하려면 이 해결 방법을 고수하겠습니다. 시간 내 주셔서 감사합니다!