2

ftp サーバーに接続するスクリプトを作成した場合、自分の PC でローカルにテストして動作をテストしましたが、サーバーでは次のように表示されます: (113、「ホストへのルートがありません」)。シェルごとにftp XX.XX.XX.XXで接続すると、正常に動作します! これは私がPythonで接続しようとする方法です:

            import ftplip
            meinftp = ftplib.FTP(ip)
            meinftp.login(user,password)
            meinftp.cwd(ftpdirectory)

ホストへのルートが得られない理由はありますか? ファイアウォールはブロックしていません。

4

4 に答える 4

2

ここではstraceが優れたツールであることに同意しますが、straceに精通していない場合、または少なくともCに精通していない場合は、少し気が遠くなる可能性があります。

デバッグのためのstraceおよび同様のツールの使用について: http ://stromberg.dnsalias.org/~strombrg/debugging-with-syscall-tracers.html

于 2012-05-09T13:54:06.413 に答える
1

pythonは、DNS名が使用可能であっても、113'ホストへのルートがありません'を返しますが、サービスは機能していません。

FTPパッシブオプションに固有の場合があります。

'strace'を使用してスクリプトを実行すると、失敗しているシステムコールを確認できます。

strace -fo / tmp / log python yourscript.py

于 2012-05-09T12:38:37.777 に答える
0

これはファイアウォールの問題である可能性が高いので、ファイアウォールを無効にしてみてください。

于 2012-05-09T12:38:17.370 に答える