Я использую smbclient для переноса набора больших файлов (80 ГБ) по ночам из системы Linux в общую папку Windows. В последнее время, по любой причине, я получаю тайм-ауты ввода / вывода:
cli_push returned NT_STATUS_IO_TIMEOUT
что приводит к тому, что активная передача файлов прерывается и удаляется из общего ресурса Windows.
Это может быть связано с нерешенной ошибкой Samba 8498 (а может и нет). Система Windows не находится под моим контролем, поэтому я не могу установить ssh-сервер (для использования scp или sftp) и не хочу зависеть от реализации Microsoft NFS.
Есть ли другая простая, стандартная альтернатива, которая позволила бы мне регулярно и надежно перемещать 80 ГБ данных из Linux в Windows по сети (сеть ГБ Ethernet, поэтому пропускная способность не является проблемой)?
windows
samba
file-sharing
Экс Умбрис
источник
источник
Ответы:
Попробуйте использовать эти параметры сокета в smbclient
Я регулярно копирую файлы 40+ ГБ с Windows на медиа-сервер Linux без ошибок, типичная скорость передачи данных составляет 85 МБ / с на машинах, подключенных через гигабитный коммутатор
источник
С помощью
curl
Я использую smbclient версии 4.9.4, пытаюсь перенести файл 97 МБ из Arch Linux в Windows и вызываю smbclient,
--socket-options='TCP_NODELAY IPTOS_LOWDELAY SO_KEEPALIVE SO_RCVBUF=131072 SO_SNDBUF=131072'
поскольку пользователь, рекомендованный bsd, все еще не работаетcli_push returned NT_STATUS_IO_TIMEOUT
.Начиная с версии 7.40 , curl поддерживает протокол smb .
Таким образом, я использовал это для загрузки
moderately_sized_file
из Linux в службуOurRemoteDirectory
на компьютере с Windows по адресу172.16.17.52
:Для меня curl загрузил файл надежно каждый раз, а также отображает ход загрузки, что приятно.
Обратите внимание, что curl еще не поддерживает создание каталогов на удаленном хосте.
Следовательно, вам может потребоваться создать
/Path/To/Dir/
с помощью следующей команды (но доsmbclient mkdir
сих пор работало без проблем):источник
Может быть, вы можете установить ftp- сервер на ваш linux-сервер и попросить администратора Windows отправить файл ночью?
FTP имеет несколько полезных функций для передачи больших файлов и механизм паузы / возобновления. Для файлов этого большого, вы должны позаботиться , чтобы не иметь сетевое оборудование выключая неактивные соединения слишком рано. Он может закрыть ваше контрольное соединение до окончания передачи.
источник
если
все еще возвращается
cli_push returned NT_STATUS_IO_TIMEOUT
просто добавьте время ожидания
-t <timeout in seconds>
Это помогает мне копировать огромные файлы (> 200 ТБ) виртуальных машин
источник