我正在使用ruby库Net-SFTP上传文件的文件夹到使用上传的远程服务器!命令,并发现当我重新获得控制权时,该文件夹尚未完成上传。除了我需要更改此文件夹的权限以及由于远程服务器上的umask而无法通过上载命令完成这些操作之外,这并不重要。我在远程服务器上没有root帐户,所以基本上我需要等待该文件夹在那里,然后更改其权限。当我尝试更改权限时,有时该文件夹还没有出现,但最终会显示出来。我想我的问题是双重的。上传的Net-SFTP没有阻塞
1.)为什么不阻止上传!实际上阻塞直到文件夹被创建。 2.)是否有某种方式强迫它阻塞一个较低级别的呼叫,还是必须等待几秒钟,然后轮询以查看文件夹是否在那里?
更新:我怀疑真正的问题是因为我试图通过单独的ssh连接更改权限,这可能与我登录到群集时可能是相同的机器。换句话说,该文件夹已经在一台机器上创建,但是当我尝试更改权限时,该文件夹并未被复制。有什么方法可以解决问题吗?
你使用的是哪个版本的net/sftp,以及如何你的代码看起来像?我在2.0.2版本中尝试了它,并以阻塞方式进行上载。你确定使用“上传”吗? (而不是“上传”)? –