файл sftp не записывается на диск

245
user1334007

У меня настроен sftp на экземпляре aws ec2. Клиент, передающий файл размером 20–30 МБ каждую ночь. Примерно половину времени передача не работает, и я не могу понять, почему. Я сам пробовал это у разных клиентов и никогда не видел, чтобы это не работало. Сегодня я был на сервере во время передачи файлов и смотрел журналы в прямом эфире. Вот пример вывода:

Aug 17 09:01:19 internal-sftp[16260]: session opened for local user someuser from [55.66.77.88] Aug 17 09:01:19 internal-sftp[16260]: received client version 4 Aug 17 09:01:19 internal-sftp[16260]: realpath "." Aug 17 09:01:19 internal-sftp[16260]: debug1: request 3294: sent names count 1 Aug 17 09:01:19 internal-sftp[16260]: opendir "/somedir" Aug 17 09:01:19 internal-sftp[16260]: debug1: request 1110: sent handle handle 0 Aug 17 09:01:19 internal-sftp[16260]: debug1: request 3021: readdir "/somedir" (handle 0) Aug 17 09:01:19 internal-sftp[16260]: debug1: request 3021: sent names count 3 Aug 17 09:01:19 internal-sftp[16260]: debug1: request 3021: readdir "/somedir" (handle 0) Aug 17 09:01:19 internal-sftp[16260]: sent status End of file Aug 17 09:01:20 internal-sftp[16260]: closedir "/somedir" Aug 17 09:01:20 internal-sftp[16260]: sent status Success Aug 17 09:01:20 internal-sftp[16260]: open "/somedir/thefile.zip" flags WRITE,CREATE,TRUNCATE mode 0666 Aug 17 09:01:20 internal-sftp[16260]: debug1: request 1383: sent handle handle 0 Aug 17 09:01:20 internal-sftp[16260]: debug1: request 1234: write "/somedir/thefile.zip" (handle 0) off 0 len 32739 Aug 17 09:01:20 internal-sftp[16260]: sent status Success Aug 17 09:01:20 internal-sftp[16260]: debug1: request 1234: write "/somedir/thefile.zip" (handle 0) off 32739 len 32739 Aug 17 09:01:20 internal-sftp[16260]: sent status Success (more of the same...) Aug 17 09:01:54 internal-sftp[16260]: debug1: request 1234: write "/somedir/thefile.zip" (handle 0) off 27238848 len 10072 Aug 17 09:01:55 internal-sftp[16260]: sent status Success Aug 17 09:01:55 internal-sftp[16260]: close "/somedir/thefile.zip" bytes read 0 written 27248920 Aug 17 09:01:55 internal-sftp[16260]: sent status No such file Aug 17 09:01:55 internal-sftp[16260]: debug1: read eof Aug 17 09:01:55 internal-sftp[16260]: session closed for local user someuser from [55.66.77.88] 

Если вы сравните эти журналы с журналами для успешной передачи файлов, разница будет только в самом конце. Когда передача файла успешно, он говорит

Aug 16 09:01:20 internal-sftp[12200]: sent status Success 

Принимая во внимание, что, когда это терпит неудачу, это говорит

Aug 17 09:01:55 internal-sftp[16260]: sent status No such file 

Файл занимает 20 - 30 секунд, чтобы передавать и не в то время сделал файл на самом деле показать на диске, когда я побежал lsна somedirкаталог. Когда передача прошла успешно, файл сразу же появился на диске, даже до завершения передачи. Таким образом, журнал правильный, там действительно нет файла, но я не могу понять, почему нет. Как вы можете видеть, он записывает на сервер более 27 МБ.

Стоит учесть, что у меня в каталоге работает инструмент s3fs-fuse/somedir . Этот инструмент синхронизирует каталог с корзиной AWS S3, так что все, что записывается или удаляется из каталога, записывается или удаляется из корзины. Я думаю, что это может сделать некоторые вещи низкого уровня с файловой системой. Не уверен, может быть, это как-то связано с этим.

Есть идеи?

0
«Следует учитывать, что у меня есть инструмент s3fs-fuse, работающий в каталоге / somedir». Я предполагаю, что этот процесс (или какой-то другой процесс) отслеживает `/ somdir` и удаляет файл из-под SFTP-сервера. , Kenster 5 лет назад 0

0 ответов на вопрос