1

我正在使用Renci SSH.NET库进行安全的 ftp 连接。现在我必须检查远程 SFTP 服务器上的可用磁盘空间。我怎样才能做到这一点?

4

1 回答 1

1

正如 Eugene 评论的那样,SFTP 协议实际上有一个 API 来检查可用空间(在draft-ietf-secsh-filexfer-extensions-00中定义的SSH_FXP_EXTENDED请求名称)。space-available

但是 Renci SSH.NET 库不支持扩展。另外值得注意的是,大多数 SSH/SFTP 服务器(尤其是 OpenSSH,作为最普遍的服务器)也不支持此扩展。所以客户端支持在这里不会有太大帮助。

正如 Salva 所评论的,另一方面,OpenSSH 支持statvfs@openssh.com具有与space-available. Renci SSH.NET 库也支持这一点(通过SftpClient.GetStatus)。因此,如果您确定您使用的是 OpenSSH 服务器,则可以使用它。

于 2013-11-04T19:26:45.590 回答