После загрузки файла с помощью Net::Sftp файл иногда исчезает

Я использую гем net-sftp для загрузки файла на удаленный сервер.

Net::SFTP.start(host, user, port: port, key_data: [decoded_key], keys: [], keys_only: true, logger: logger, verbose: :debug) do |sftp|
  sftp.upload!(local_file_path, remote_file_path)
end

Иногда это работает, и файл остается на удаленном сервере sftp. А иногда скачивается и вскоре пропадает (через одну-две секунды). Я вижу это, используя FileZilla параллельно.

Иногда один файл может быть успешно загружен с первой попытки, а иногда со второй или третьей и т. д. Если я использую FileZilla вручную или sftp из терминала, все работает нормально. Журнал отладки выглядит одинаково для успешной попытки и для нет. Отсутствие записей в журнале указывает на ошибки.

Версии драгоценных камней:

  • сеть-ssh (5.2.0)

  • сеть-sftp (2.1.2)

Буду признателен за любые мысли по этому вопросу.


person Alexandr Kovalenko    schedule 28.04.2020    source источник
comment
Что, если вы загрузите файл на локальный хост вместо удаленного сервера? Если он по-прежнему исчезает, возможно, проблема связана с вашим кодом, библиотеками или клиентом; если он не исчезает, возможно, проблема с удаленным сервером SSH.   -  person anothermh    schedule 29.04.2020
comment
Возможно ли, что в удаленной системе есть процесс, который удаляет файл?   -  person Kenster    schedule 29.04.2020
comment
@Kenster Я не знаю, сервер не под моим контролем. Но если был такой процесс, то почему он не удаляет файлы, которые я загружаю с помощью FileZilla? Также если файл остался после скачивания (через 1-2 секунды), то он не исчезнет.   -  person Alexandr Kovalenko    schedule 29.04.2020
comment
@anothermh Думаю, мне нужно найти где-нибудь еще один sftp-сервер и протестировать его.   -  person Alexandr Kovalenko    schedule 29.04.2020
comment
Установите SSH-сервер и сделайте это на локальном хосте.   -  person anothermh    schedule 29.04.2020
comment
@anothermh Спасибо. Я так и сделал, на новом сервере все работает. Проблема была с первым сервером.   -  person Alexandr Kovalenko    schedule 01.05.2020


Ответы (1)


Проблема была на стороне сервера. Спасибо вам всем.

person Alexandr Kovalenko    schedule 01.05.2020