Я предполагаю, что у вас возникли проблемы, потому что WinSCP удаляет существующие файлы перед загрузкой новых - что никогда не должно произойти если у вас нет прав на запись старого файла, и в этом случае удаление и замена-единственный способ для WinSCP загрузить ваши файлы.
при создании нового файла в Linux основной группой создателя будет группа файлов1, и разрешения будут расчитываться2 используя (0666 & ~umask). Владелец может изменять разрешения, но может только изменить группу файла в группу, к которой он сам принадлежит.
в случае веб-сайта, я обычно устанавливаю setgid
немного в каталогах, так что все файлы, которые я создаю внутри, становятся собственностью этой группы:
sudo chown -R :www-data public_html/
find public_html/ -type d -exec chmod g+s {} \;
если в файловой системе сервера включены списки управления доступом, можно также указать разрешения по умолчанию для группы:
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
set по умолчанию разрешения.)
- если в каталоге нет setgid bit, в результате чего вновь созданные файлы наследуют группу каталога.
- можно изменить с помощью списков ACL по умолчанию для каталога.