即使是小如只包含“ hello world ”的文本文件都不行,一上传就直接 broken pipe。小弟见识不多,有哪位大神能简单解释一下这是如何做到的?感谢大家!
给谷歌客服提了工单,也没给出什么建设性的建议,目前上传的方法是先从本地上传到谷歌的 Storage ,然后 ssh 到服务器上把文件从 Storage 下下来。。。
1
xiaket 2019-01-24 06:11:28 +08:00
man 5 sshd_config 看下 Subsystem
|
2
OldPanda OP @xiaket 看了下是这个样子的
``` # override default of no subsystems Subsystem sftp /usr/lib/openssh/sftp-server ``` |
3
xiaket 2019-01-24 06:24:03 +08:00
手边没有 gcp 的机器不方便测试了, 你的.bashrc/.bash_profile 最近可改过?
|
4
xiaket 2019-01-24 06:25:45 +08:00
顺便推荐下自己很早以前翻译的 scp 原理: https://blog.xiaket.org/2010/how-scp-protocol-works.html
scp 协议本身很简单, 如果 ssh 能用, 那么 scp 应该能. |
5
ladypxy 2019-01-24 07:33:49 +08:00
最大的可能,是权限问题。。你 ssh 的帐号不是 root,你肯定是在往没有写入权限的目录传文件
|
8
OldPanda OP @ladypxy 并且,如果没有权限的话,报错应该是 Permission denied 而不是 Broken pipe
|
9
reus 2019-01-24 09:17:14 +08:00
可能通讯被干扰了
|
10
chickplilita 2019-01-24 09:31:23 +08:00
mtu 吧,你们中间链路的 mtu 值比较小。
你 ping dst_ip -s 1600 试试,要是 1600 不行,1400 行,肯定是 mtu 的问题。 |
11
OldPanda OP @chickplilita 感谢建议,不过 1600 和 1400 都没问题
|
12
chickplilita 2019-01-24 09:45:51 +08:00
@OldPanda #11 额,那就只能两端抓包,分析一下包才能看出原因了。
|
13
OldPanda OP @chickplilita 已经通过他们的 Storage 服务绕过这个问题了。。
|
14
cdlixucd 2019-01-24 09:55:02 +08:00
你什么客户端?我先把 public-key 上传到 GCE,然后通过 priavte-key 来做验证,可以上传啊
|
15
ihciah 2019-01-24 16:59:32 +08:00
自己 scp 到自己试试先?
|