1

Этот вопрос является дубликатом вопроса в StackOverflow, и мне было рекомендовано задать этот вопрос здесь. Приношу свои извинения, если мультипост нежелателен.

У меня очень странная проблема с FTP, которая вызывает у меня живые дневные света. Это первый раз, когда я видел эту проблему.

Когда я загружаю файл, он не перезаписывает оригинал, а вместо этого переименовывается в [original file.ext] .1 (или [file] .2, если [file] .1 уже существует). Например, если style.css существует на сервере, и я загружаю и редактирую его, когда я загружаю его обратно в положение, он «переименовывается» в style.css.1. Повторная попытка создает третий файл с именем style.css.2.

У меня есть собственное железо, на котором у меня установлена 64-битная версия OpenSUSE 11.4 (сравнительно недавняя установка, только что настроенная). Я использую pure-ftpd и использую панель управления YAST для управления настройками. В частности, для параметра Umask (umask files:umask dirs) установлено значение 000:000 (единственный параметр, который дает загружаемому файлу те же разрешения, что и существующим файлам). У меня есть доступ через Chrooted ftp для всех, и для доступа к FTP /srv /www / я использовал инструкции на этом сайте для монтирования /srv /www / inside / home / [user] / ftp / с помощью операции bind , Следовательно, FTP-доступ предназначен для очень безопасного пользователя, но у него все еще есть доступ к содержимому в /srv /www /.

Я также нашел время, чтобы дать содержимому /srv /www / такие же права доступа и user:group, как и самому пользователю (т. Е. Не должно быть никаких проблем с разрешениями).

Я использую WS_FTP Pro 2007 для доступа к сайту, а также Notepad++ (через NppFTP), и у обоих клиентов одна и та же проблема: я могу загружать файлы очень хорошо, но когда я загружаю их, к ним добавляется «. #» (.1, .2, .3 и т.д.) Вместо перезаписи исходного файла. Эти новые файлы имеют права IDENTICAL и права собственности (user: group) как исходный файл, поэтому я совершенно не знаю, почему при загрузке создается новый файл вместо перезаписи.

Отредактировано, чтобы добавить: с тех пор я попробовал несколько различных клиентов FTP, включая функции FTP в командной строке Windows, с одинаковыми конечными результатами.

1 ответ1

1

В pure-ftpd есть несколько ссылок на функцию "autorename". Это просто вопрос выключения? http://pureftpd.sourceforge.net/README

И хотя описания имен файлов делают это менее вероятным, использует ли клиент ftp опцию STOU? http://www.nsftools.com/tips/RawFTP.htm

В этом вопросе также может быть некоторая помощь. Как FTP-серверы обрабатывают переименование в существующий файл?

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .