답변:
결코 일어나지 않을해야하는 - 나는 WinSCP에 새로운 사람을 업로드하기 전에 기존 파일을 제거하기 때문에이 문제가 발생하는 추측하고있어 하지 않는 한 당신은 이전 파일에 대한 사용 권한을 '쓰기'가없는 삭제 및 교체하는 것이 유일한 방법 인 경우에, WinSCP는 파일을 업로드합니다.
Linux에서 새 파일을 작성할 때 작성자의 기본 그룹은 파일의 그룹 1 이되고 권한은 (0666 & ~ umask)를 사용하여 2 로 계산됩니다 . 소유자는 권한을 수정할 수 있지만 파일 그룹을 자신이 속한 그룹으로 만 변경할 수 있습니다.
웹 사이트의 경우 일반적으로 setgid
디렉토리에 비트를 설정하여 내가 만든 모든 파일이 해당 그룹이 소유하도록합니다.
sudo chown -R :www-data public_html/
find public_html/ -type d -exec chmod g+s {} \;
서버의 파일 시스템에 ACL이 활성화되어 있으면 그룹에 대한 기본 권한을 지정할 수도 있습니다.
setfacl -Rdm g::rX public_html
또는 "setgid"및 "chgrp"단계를 건너 뛰고 원하는 그룹에 기본 권한을 지정하기 만하면됩니다.
setfacl -Rm g:www-data:rX public_html
setfacl -Rdm g:www-data-rX public_html
( 기본 권한 이 -d
설정된 명령 )
임시 파일로 전송하지 않도록 WinSCP를 구성해야합니다 (대상 파일 이름으로 이름이 바 rename). 그런 다음 WinSCP는 대상 파일에 직접 쓰고 권한 / 소유권을 그대로 유지합니다.
폴더의 위치를 설정하면 이제 폴더 그룹이 www-data 인 경우 그룹을 www-data로 유지해야합니다.