প্যারামিকো দিয়ে ড্রপবারে কোনও ফাইল স্থানান্তর করার সময় EOFError


0

আমি পরম্পিকো দিয়ে একটি ফাইল একটি ড্রপবার এসএস সার্ভারে স্থানান্তর করতে চাই। আমি এই ফাইলটি ব্যবহার করি (ssh_own.py):

#!/usr/bin/python3.6

import paramiko
import paramiko

from paramiko import client
class ssh:
    client = None

    def __init__(self, address, username, password):
        print("Connecting to server.")
        self.client = client.SSHClient()
        self.client.set_missing_host_key_policy(client.AutoAddPolicy())
        self.client.connect(address,
                username = username,
                password = password,
                look_for_keys=False)

    def sendCommand(self,
                command):
        if(self.client):
            stdin, stdout, stderr = self.client.exec_command(command)

            output = []
            while not stdout.channel.exit_status_ready():
                portion = stdout.readlines()
#               print(portion)
                if len(portion) > 0:
                    output.append(portion)
            result = self.output_to_string(output)
            return result
        else:
            raise Exception("Connection not opened.")

    def output_to_string(self, output):
        result = ""
        for line in output:
            for el in line:
#               result += str(line, "utf8")
                result += el
        return result

এবং অনুরোধটি করার জন্য অন্য একটি ছোট ফাইল (test.py):

#!/usr/bin/python3.6

import ssh_own
import os

home = os.environ["HOME"]

ssh_client = ssh_own.ssh("ip", "username", "password")
ftp_client = ssh_client.client.open_sftp()
ftp_client.put("/home/localuser/README.md", "/home/username/README.md")
ftp_client.close()

আমি ssh_own.py চালানোর সময়, আমি এই ত্রুটিটি পাই:

Connecting to server.
Traceback (most recent call last):
  File "/usr/local/lib/python3.6/dist-packages/paramiko/sftp_client.py", line 103, in __init__
    server_version = self._send_version()
  File "/usr/local/lib/python3.6/dist-packages/paramiko/sftp.py", line 107, in _send_version
    t, data = self._read_packet()
  File "/usr/local/lib/python3.6/dist-packages/paramiko/sftp.py", line 174, in _read_packet
    x = self._read_all(4)
  File "/usr/local/lib/python3.6/dist-packages/paramiko/sftp.py", line 161, in _read_all
    raise EOFError()
EOFError

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "./test.py", line 13, in <module>
    ftp_client = ssh_client.client.open_sftp()
  File "/usr/local/lib/python3.6/dist-packages/paramiko/client.py", line 521, in open_sftp
    return self._transport.open_sftp_client()
  File "/usr/local/lib/python3.6/dist-packages/paramiko/transport.py", line 980, in open_sftp_client
    return SFTPClient.from_transport(self)
  File "/usr/local/lib/python3.6/dist-packages/paramiko/sftp_client.py", line 140, in from_transport
    return cls(chan)
  File "/usr/local/lib/python3.6/dist-packages/paramiko/sftp_client.py", line 105, in __init__
    raise SSHException('EOF during negotiation')
paramiko.ssh_exception.SSHException: EOF during negotiation

পরমাইকো থেকে ড্রপবিয়ার সার্ভারে ফাইল স্থানান্তর করা সম্ভব কিনা তা কি কেউ জানেন? নাকি এটি ঠিক সামঞ্জস্যপূর্ণ নয়? আমি ওপেনশ চালিত অন্য উবুন্টু মেশিনের সাথে এটিও পরীক্ষা করেছি এবং সেখানে এটি দুর্দান্ত কাজ করেছে।


সম্ভবত সম্পর্কিত: stackoverflow.com/questions/38554629/...
hoefling

উত্তর:


0

দেখা যাচ্ছে যে আমাকে স্টেফপি ইনস্টল করতে হয়েছে যেহেতু ড্রপবারের কাছে এটি নেই বলে মনে হচ্ছে এবং প্যারামিকো ফাইল স্থানান্তরের জন্য এসএফটিপি ব্যবহার করে। স্ক্র্যাপ ড্রপবারের সাথে ভাল কাজ করেছে, তবে এটিই আমাকে প্রথম বিভ্রান্ত করেছিল। এসএফটিপি ইনস্টল করার পরে, প্যারামিকো সহ সমস্ত ফাইল স্থানান্তর ভাল কাজ করেছে worked

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.