我在这里面临一个棘手的局面。我有一个基于Java的应用程序,试图scp远程机器来复制某些文件。执行这些任务时,我从应用程序端发现以下错误消息。
scp protocol error mtime.sec not present
但是当我手动尝试从服务器scp到端点机器时,我能够毫无问题地完成它。
我用于手动测试的命令是scp localfile user@hostname:/tmp/
我不确定错误消息mtime.sec is not present
。有没有人可以在这里投光。我无法从网上找到有用的信息,任何专家的想法都会有所帮助。
由于SCP使用手动过程正常工作,我不确定SCP是否有问题。
答案 0 :(得分:35)
我遇到了同样的问题。如果我scp到ubuntu 12.04,它对我有用。当我对ubuntu 14.04这样做时,它失败了同样的消息。
我根据这个例子http://www.jcraft.com/jsch/examples/ScpTo.java.html编写了scp代码。我猜你也是。
如果我删除以下行中“T”之后的空格,它将起作用 如果我改变:command =“T”+(_ lfile .... to command =“T”+(_ lfile
要么这样做,要么设置ptimestamp = false
答案 1 :(得分:6)
像上面的ZZapper写道。
我遇到了与上面相同的问题,尝试使用scp连接到远程站点,它也告诉我 “协议错误:mtime.sec未分隔”
在“服务器端”运行scp with -vvvv
,他们不允许我使用scp并告诉我使用sftp。
答案 2 :(得分:3)
我从我的stftp服务器仅允许sftp连接这一事实中学到了我的问题。不允许使用scp。
debug2: channel_input_status_confirm: type 99 id 0
debug2: exec request accepted on channel 0
Sink: This service allows sftp connections only.
protocol error: mtime.sec not present
答案 3 :(得分:2)
protocol error: mtime.sec not delimited
我用Google搜索并了解到这是一个错综复杂的错误消息。我们最近通过制作“nologin'”来禁用我们的root登录。我忘了更新仍在尝试以root用户身份登录的scp脚本。当我更新它使用新的登录一切都很好。 (对不起与Java无关)