scp зависает после загрузки - PullRequest
0 голосов
/ 27 февраля 2019

Настройка:

Когда мы используем SCP на нашей виртуальной машине CentOS Hyper-V для копирования файлов в целевой (SunOS), он достигает 100%, а затем зависает, не закрываяподключение.Когда мы наконец используем ctrl+C для выхода, файл на удаленном конце пустой.

Весь процесс отлично работает с очень маленькими файлами, но если это несколько десятков строк, он начинает зависать.

В окне CentOS используется переключатель по умолчанию.

SSH прекрасно работает как с виртуальной машиной CentOS, так и с ней.

Источник : CentOS 7.6ВМ работает на Hyper-V (Windows 10 Ent.)

Назначение : SunOS 5.6 x64 Machine

Журнал:

scp -vvv tst.txt user@target.domain:/tmp/
...
debug1: Sending command: scp -v -t /tmp/
debug2: channel 0: request exec confirm 1
debug3: send packet: type 98
debug2: callback done
debug2: channel 0: open confirm rwindow 0 rmax 32768
debug3: receive packet: type 4
debug1: Remote: Missing locale support for LANG=en_US.UTF-8
debug2: channel 0: rcvd adjust 201600
debug3: receive packet: type 99
debug2: channel_input_status_confirm: type 99 id 0
debug2: exec request accepted on channel 0
Sending file modes: C0664 12840 test.txt
test.txt                                                     100%   13KB   0.1KB/s   02:52

strace :

Соответствующим разделом является следующий блок, который зацикливается бесконечно, когда файл имеет какой-либо значительный размер:

write(1, "\rtest.txt                       "..., 185) = 185
rt_sigaction(SIGALRM, NULL, {0x555900a4ebf0, [], SA_RESTORER|SA_INTERRUPT, 0x7fc354919280}, 8) = 0
alarm(1)                                = 0
rt_sigreturn({mask=[]})                 = -1 EINTR (Interrupted system call)
read(7, 0x7ffe718fdb0f, 1)              = ? ERESTARTSYS (To be restarted if SA_RESTART is set)
--- SIGALRM {si_signo=SIGALRM, si_code=SI_KERNEL} ---```
...