2013-02-21 2 views
5

나는 paramiko SFTP를 사용하여 큰 파일 (~ 650mb) 파일을 복사하려고합니다. 작은 파일을 복사 할 수 있지만 큰 파일을 복사하려고하면 다음 오류가 표시됩니다. sftp를 직접 사용하여 파일을 복사 할 수 있습니다.paramiko SFTP 서버 연결이 끊어졌습니다

Traceback (most recent call last): 
    File "/usr/lib/python2.7/threading.py", line 551, in __bootstrap_inner 
    self.run() 
    File "/usr/lib/python2.7/threading.py", line 504, in run 
    self.__target(*self.__args, **self.__kwargs) 
    File "/usr/lib/python2.7/dist-packages/paramiko/sftp_file.py", line 453, in _prefetch_thread 
    self.sftp._async_request(self, CMD_READ, self.handle, long(offset), int(length)) 
    File "/usr/lib/python2.7/dist-packages/paramiko/sftp_client.py", line 656, in _async_request 
    self._send_packet(t, str(msg)) 
    File "/usr/lib/python2.7/dist-packages/paramiko/sftp.py", line 172, in _send_packet 
    self._write_all(out) 
    File "/usr/lib/python2.7/dist-packages/paramiko/sftp.py", line 136, in _write_all 
    n = self.sock.send(out) 
    File "/usr/lib/python2.7/dist-packages/paramiko/channel.py", line 701, in send 
    self.transport._send_user_message(m) 
    File "/usr/lib/python2.7/dist-packages/paramiko/transport.py", line 1426, in _send_user_message 
    self._send_message(data) 
    File "/usr/lib/python2.7/dist-packages/paramiko/transport.py", line 1406, in _send_message 
    self.packetizer.send_message(data) 
    File "/usr/lib/python2.7/dist-packages/paramiko/packet.py", line 310, in send_message 
    self.write_all(out) 
    File "/usr/lib/python2.7/dist-packages/paramiko/packet.py", line 260, in write_all 
    raise EOFError() 
EOFError 

Traceback (most recent call last): 
    File "./extract.py", line 107, in <module> 
    main() 
    File "./extract.py", line 81, in main 
    getFiles() 
    File "./extract.py", line 58, in getFiles 
    'ABC.zip') 
    File "/usr/lib/python2.7/dist-packages/paramiko/sftp_client.py", line 614, in get 
    data = fr.read(32768) 
    File "/usr/lib/python2.7/dist-packages/paramiko/file.py", line 153, in read 
    new_data = self._read(read_size) 
    File "/usr/lib/python2.7/dist-packages/paramiko/sftp_file.py", line 152, in _read 
    data = self._read_prefetch(size) 
    File "/usr/lib/python2.7/dist-packages/paramiko/sftp_file.py", line 132, in _read_prefetch 
    self.sftp._read_response() 
    File "/usr/lib/python2.7/dist-packages/paramiko/sftp_client.py", line 668, in _read_response 
    raise SSHException('Server connection dropped: %s' % (str(e),)) 
paramiko.SSHException: Server connection dropped: 

또한 특정 바이트 수를 읽은 후에 만 ​​발생합니다. 나는 sftp_client.py 내부에 인쇄 성명을 발표하고이 출력 (바이트)

reading bytes data_size: 11 
reading bytes data_size: 28 
reading bytes data_size: 28 
reading bytes data_size: 32776 
reading bytes data_size: 32776 
reading bytes data_size: 32776 
reading bytes data_size: 32776 
reading bytes data_size: 32776 
reading bytes data_size: 32776 
reading bytes data_size: 32776 

연결이 파일의 중간에 떨어됩니다 왜 나에게 분명하지 않다입니다. 이것을 처리하는 방법에 대한 제안?

감사합니다.

+0

이것에 대한 개발이 있으십니까? 나는 같은 문제와 싸우고있다. – Etienne

+0

@Etienne 나는 아직도 이것을 기다리고 있으며 다른 해결책은 모른다. – user868643

+0

어제 나는 여기에 버그 보고서를 제출했다 : https://github.com/paramiko/paramiko/issues/151 – Etienne

답변

관련 문제