【问题标题】:Alternative to Net::SFTP替代 Net::SFTP
【发布时间】:2012-06-19 13:26:06
【问题描述】:

我想将文件上传从 FTP 切换到 SFTP。但我无法安装Net::SFTP,因为我们的系统管理员不喜欢它(阅读:NO!)。它很旧,似乎没有维护,并且在 CPAN say it is buggy 上评级。有没有可用的替代品?还是我过于偏执而实际上效果很好?

编辑:我应该提到我需要一个无需用户输入即可处理密码身份验证的设备。

【问题讨论】:

    标签: perl ftp sftp


    【解决方案1】:

    如果只是Net::SFTP 中的错误问题,您可以尝试Net::SFTP::Foreign 等替代方案 或Net::SSH2。请参阅Net::SFTP::Foreign Vs. Net::SFTP Vs. Net::SSH2::SFTP 进行简要比较。

    【讨论】:

    • 我没看过Net::SFTP::Foreign。不过,我已经在 lib-dir 中看到过它。我去看看,谢谢!
    • 我花了一些时间来获取Net::SFTP::Foreign 的所有依赖项。仍然存在一些问题,因为到目前为止我尝试过的所有服务器都不喜欢它放在ssh 命令行上的-s sftp 子系统。我需要弄清楚这一点,但我仍然相信这是要走的路。谢谢你指点我。
    • @simbabque:对于那些不喜欢-s sftp 的服务器,使用ssh1 => 1 调用Net::SFTP::Foreign 构造函数
    • @salva:我们试过了,没用。它说#23759 1341227061.00000 _conn_lost: _conn_lost #23759 1341227061.00000 _set_status: _set_status code: 6, str: No connection 和“与远程服务器的连接停止”
    • @simbabque:您是否能够使用任何其他 SFTP 客户端(即 OpenSSH sftp 或 PuTTY psftp)连接到这些服务器?他们有什么特别之处吗?
    【解决方案2】:

    期望、Net::SCP 或 Net::SCP::期望。我没有使用过这些模块,所以我不能为它们做担保,但试一试也无妨。您应该能够通过 Makefile.pl 或 cpan shell 使用 PREFIX 在您的主目录中安装模块,然后进行试验。

    perl Makefile.PL INSTALL_BASE=/home/<you>/lib
    
    o conf makepl_arg INSTALL_BASE=/home/<you>/lib
    

    【讨论】:

    • 我会看看Net::SCP::Expect。谢谢。
    猜你喜欢
    • 1970-01-01
    • 2015-09-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多