首先,如果我做一个简单的,ssh admin@example.com "cat backup.tar" > backup.tar这不会发生!所以,还有其他我不知道的转换它。
我需要提供系统当前状态的备份而不授予对服务器的访问权限。我所做的是以下内容:
usernameauthorized-keys/etc/passwd为自定义脚本usernamestdoutstdout.为了得到你需要做的的数据:ssh username@example.com > backup.tar。
现在,除了行尾被更改外,几乎一切正常。将tar越来越大,我可以看到,每行有DOS行与结束^M的象征。如果我强制dos2unix使用二进制 tar 文件,该文件与服务器上的文件匹配。
为什么会发生这种情况,是什么改变了行尾?我什至将其简化为以下内容:使用上述命令登录并将输出重定向到本地计算机上的文件时,服务器上用于username链接的脚本/etc/passwd只是 make acat .viminfo并且行尾仍然传输错误。sshusername