
あるサーバーから別のサーバーに SFTP しようとしたときにプロトコル エラーが発生しました。Google で検索してみましたが、見つかりません。どなたか助けていただける方がいらっしゃいましたら教えてください。
rel@kingfisher:/kingfisher_bft/hme/rel> sftp [email protected]
Need basic cursor movement capability, using vt100
error: Could not open connection to `[email protected]': Protocol error
答え1
リモート マシンに SFTP するために使用しているマシンにncurses
ライブラリが不足しているようです。 でインストールするapt-get install libncurses5
か、ディストリビューションの Web ページからダウンロードしてください。
[ から:http://ftp.vim.org/security/ssh/README.SSH2]
sftp2 が「vt100 を使用した基本的なカーソル移動機能が必要です」のようなメッセージを表示する場合、 ./configure を実行したときに tgetent() 関数を含むライブラリが見つかりませんでした。Linux システムを使用している場合は、termcap-devel または ncurses-devel パッケージがインストールされていない可能性があります。このメッセージを表示しないようにしたい場合、またはより特殊な端末機能を使用したい場合、いずれかのパッケージをインストールする必要があります。(これらのパッケージを探すには、ディストリビューションの Web ページが便利です。)
答え2
SFTP は SSH プロトコルのサブシステムであり、独自のプロトコルを持っています。実際には、SFTP プロトコル バージョンは 7 つ (0 から 6)、SSH プロトコル バージョンは 2 つ (SSH-1 と SSH-2) あります。
上記を見ると、クライアントとサーバーが共通のプロトコルをネゴシエートできないように見えますが、これにはいくつかの理由が考えられます。