2016-04-16 70 views
0

問題:パブリックFTPサイトのローカルミラーを作成しようとしています。 lftpを使用して問題なくミラーを作成しますが、数日後にミラーを更新しようとすると、いくつかのファイルが滞留するため非常に遅くなります。lftpにバイナリ接続を強制しますか?

私はlftpRETRにファイルをいくつかの要求を行うことがわかりますlftp -d実行するが、これらの要求は**** Timeout - reconnectingいくつかのメッセージが表示されるし、約2〜3分後に私は

< --- 150オープニングBINARYモードを参照してください{filename removed}のデータ接続。 '

この最後のコマンドの後、ファイルは正常にダウンロードされ、lftpはさらに進みます。

マニュアルからは、BINARYがlftpのデフォルトモードだと理解していますが、どうにかして早期のリクエストでは機能しないようです。誰かがlftpにすべてのファイルをダウンロードするために常にバイナリモードのデータ接続を開くように強制する方法を提案できますか?

``lftp -d -u anonymous,anonymous -c "open {url}; get {file}"`` 

と応答lftp -dから:

---- Connecting to {url} ({IP}) port 21 
<--- 220 (vsFTPd 3.0.3)       
---> FEAT 
<--- 211-Features:          
<--- EPRT 
<--- EPSV 
<--- MDTM 
<--- PASV 
<--- REST STREAM 
<--- SIZE 
<--- TVFS 
<--- 211 End 
---> USER anonymous 
<--- 331 Please specify the password.    
---> PASS anonymous 
<--- 230 Login successful.          
---> TYPE I 
<--- 200 Switching to Binary mode.       
---> SIZE {file} 
<--- 213 3321            
---> MDTM {file} 
--- 213 20160318190446           
---> PASV 
<--- 227 Entering Passive Mode ({IP}).   
---- Connecting data socket to ({IP}) port 55380 
---- Data connection established         
---> RETR {file} 
**** Timeout - reconnecting          
---- Closing data socket 
---- Closing control socket 

答えて

2

lftpは、デフォルトですべてのファイル転送にバイナリモードを使用し、ディレクトリリストにはasciiモードを使用します。だからバイナリモードはここでは問題ではないはずです。

微妙な接続の問題がある場合があります。net:socket-maxsegを低い値(500など)に設定すると便利なことがあります。

+0

'--ignore-time'を使って私の問題を解決したので、あなたが提案した設定を試しませんでした。バイナリモードが常に使用されていることを明確にしたので、私はあなたの答えを受け入れました。 – econ

0

バイナリモード用のFTPコマンドはbinはそうあなたgetファイルの前にそのコマンドを使用している

はここMWEです。

cd /direc/tory; bin; get file.xml 

問題は、私はあなたの出力に

---> TYPE I 
<--- 200 Switching to Binary mode.       

を参照してくださいということですので、あなたはバイナリモードですでにます。あなたは別の問題があるのだろうか?また、パッシブモード(PASV)を使用していることもわかります。これは、ファイアウォールとNATの周りの受動的な動作のためには役に立ちます。 [1]だから、タイムアウトが発生する別の理由が必要です。

pingまたはnetstatのような他の手がかりはありますか?

+0

私はサーバーによって抑制されていると思われ始めています...その理由は、ftpサーバー上の任意のファイルを開くこと(例えば、lynx経由)は、遅くなります。 – econ

+0

しかし、奇妙なことに、lftpをキャンセルして再起動すると、最初のフォルダから開始し、キャンセルされたセッションから既に更新されたファイルを再インストールします(エラーや遅延はありません)。それを作る。 – econ

+0

また、私は得る: 不明なコマンド 'ビン '。 – econ

関連する問題