![www-data가 폴더를 소유하고 있어도 파일을 생성할 수 없습니다.](https://linux55.com/image/126755/www-data%EA%B0%80%20%ED%8F%B4%EB%8D%94%EB%A5%BC%20%EC%86%8C%EC%9C%A0%ED%95%98%EA%B3%A0%20%EC%9E%88%EC%96%B4%EB%8F%84%20%ED%8C%8C%EC%9D%BC%EC%9D%84%20%EC%83%9D%EC%84%B1%ED%95%A0%20%EC%88%98%20%EC%97%86%EC%8A%B5%EB%8B%88%EB%8B%A4..png)
Debian 9.3 기반 Docker 컨테이너에서 실행되는 웹 서버를 설정하고 tmp 폴더를 구성하려고 하는데 해당 폴더에 www-data 파일을 생성할 수 없습니다.
tmp와 모든 하위 디렉터리는 www-data:www-data의 소유이며 모든 것을 777로 설정하려고 시도했지만 소용이 없었습니다. 파일이 생성되지 않는지 확인하기 위해 www-data로 로그인했습니다. SELinux가 설치되어 있지 않습니다. 파일이 이미 존재하는 경우 www-data에 쓰는 데 문제가 없습니다.
www-data@8c22a401af40:/srv/www/is/app/tmp/cache/persistent$ ls -lah
total 16K
drwxrwxrwx 2 www-data www-data 4.0K Jan 31 21:37 .
drwxrwxrwx 20 www-data www-data 4.0K Jan 31 21:37 ..
-rwxrwxrwx 1 www-data www-data 2.8K Jan 31 19:08 myapp_cake_core_file_map
-rw-r--r-- 1 www-data www-data 7 Jan 31 21:38 test
www-data@8c22a401af40:/srv/www/is/app/tmp/cache/persistent$ touch test2
touch: cannot touch 'test2': Permission denied
편집: 언급하는 것을 잊었지만 777도 설정하고 모든 상위 폴더의 소유권을 www-data로 변경했습니다.
편집 2: 출력 root@8c22a401af40:/# getfacl -R /srv/www/
:
# file: srv/www//is/app/tmp
# owner: www-data
# group: www-data
user::rwx
group::rwx
other::rwx
출력은 모든 1271개 파일에 대해 동일합니다.
또한 이 출력을 가져오면서 이 문제를 집에서 재현할 수 없다는 것을 깨달았습니다. 확실히, 나는 직장에서 내 컴퓨터에 SSH를 연결하고 컨테이너를 처음부터 다시 만든 다음 다시 시도하여 동일한 결과를 얻었습니다. 컴퓨터는 Debian 9를 실행하고 있고 내 노트북은 Mac OS 10.12를 실행하고 있습니다.
편집 3: 데비안 9를 실행하는 다른 컴퓨터에서 시도해 보았으나 다시 재현할 수 없었습니다. 이제 문제는 내 Docker 이미지가 아닌 호스트 시스템에 있는 것으로 의심됩니다.