协议错误:尝试从远程服务器传输文件夹/文件到本地时,mtime.sec不存在。

9

我在阿里云上使用Ubuntu 20系统,在尝试使用cl从sftp远程服务器复制到本地时遇到了问题:

scp -r -P 22 sftpibas@localhost:/sftpibas dev

但它引起了

protocol error: mtime.sec not present

如果你想查看我的配置,这里附上我的sshd_config:

Include /etc/ssh/sshd_config.d/*.conf

PermitRootLogin yes

ChallengeResponseAuthentication no

UsePAM yes

PrintMotd no

AcceptEnv LANG LC_*

Subsystem       sftp    /usr/lib/openssh/sftp-server

Match group sftp
ChrootDirectory /home
X11Forwarding no
AllowTcpForwarding no
ForceCommand internal-sftp

我从远程服务器复制文件的方法是否有误?欢迎提供建议。

4个回答

10
我尝试运行scp -v。这为我提供了更多的信息:
Sink: This service allows sftp connections only.
protocol error: mtime.sec not present

我尝试使用sftp,它可以正常工作。


2

在重新构建服务器后,我在我的 Redat 8 箱子上遇到了同样的问题。

我运行了 scp -v 命令,并注意到 'Sink:' 显示了一个状态消息,这是我在 .bashrc 文件中添加的 (echo "...")。

一旦我删除了 echo 语句,scp 就可以正常运行。


1
sshd_config强制连接到sftp,而(斜体)错误就是其结果。
删除此行,然后重新加载/重启sshd:
ForceCommand internal-sftp

0

我遇到了这个错误,然后在scp命令中添加-v后,我发现这个错误是由于我的帐户登录到远程服务器太多次导致的。

scp -v example.com:/tmp/example .
debug1: Sending command: scp -v -f /tmp/example
Sink: Too many logins for 'user1'
protocol error: mtime.sec not present

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接