繁体   English   中英

C# SFTP 没有这样的文件

[英]C# SFTP No Such File

我正在使用SSH.NET 库连接到远程 SFTP 服务器。 我正在尝试使用非常基本的代码,但它不起作用

using (var client = new SftpClient(host, username, password))
{
    client.Connect();   
    client.ChangeDirectory(@"sftp://server.example.com/other_directory");
}

但是,这会引发异常,说明ChangeDirectory方法上No Such File

我对 Curl 尝试了同样的方法,但出现错误提示

curl: (51) SSL 对等证书或 SSH 远程密钥不正确

但是,我添加了 curl 的--insecure参数,并且一切正常。

--insecure部分是否与SSH.NET库不工作的原因有关还是有其他原因? 有没有办法模拟--insecure在 C# 中的作用?

谢谢

如果其他人遇到此问题,结果是 ChangeDirectory 和 UploadFile 等任何方法都需要一个相对于WorkingDirectory属性的路径。 结果,我通过将其更改为

client.ChangeDirectory(@"/other_directory");

希望能帮助别人

就我而言,问题是用户“用户名”的权限。 var client = new SftpClient(host, username, password)

因此,用户“username”必须对文件夹 other_directory 具有必要的权限,才能使以下代码正常工作。

client.ChangeDirectory(@"/other_directory");

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM