Назад | Перейти на главную страницу

SFTP обнаруживает недопустимое сообщение

Я загружаю файл через sftp на удаленный сервер. Во время передачи я получил сообщение "завис". Я убил sftp, работающий на моем локальном.

Проблема в том, что я не могу удалить частично загруженный файл. когда я пытаюсь, rm filename.txt возвращает ошибку:

Не удалось удалить файл: плохое сообщение

Уже исправил срыв, попытался повторно загрузить файл и выполнил rm filename.txt, но все равно получил ту же ошибку. Загрузил другой файл и попытался удалить его, и он был удален. Я использую debian 7 Как удалить filename.txt?

Проблема в том, что когда вы завершили «застопорившуюся» сессию (при условии, что вы принудительно убили клиента), дескриптор файла на сервере оставался открытым.

Фактически, в отличие от FTP (S), протокол SFTP требует, чтобы клиент явно закрыл дескриптор файла после его использования. Если клиенту это не удается, файл на сервере остается открытым, и поэтому вы не можете его удалить. В зависимости от того, какое серверное программное обеспечение вы используете, вам может потребоваться остановить / перезапустить серверный процесс, чтобы освободить «зомби» дескрипторы.