我正在使用XMODEM将二进制文件从Ubuntu VM传输到嵌入式Linux目标,如下所示:
$ sudo screen /dev/ttyUSB0 115200
$ rx test
CTRL-A :
$ exec !! sx -b test
现在,“测试”传输成功,但是当我在VM和目标上检查它时,我得到以下内容:
此外,目标上的权限也会减少。
为什么会这样,以及如何确保传输的文件与源文件相同?
答案 0 :(得分:4)
XMODEM以128字节块传输,因此文件将始终填充到下一个128字节边界。 YMODEM和ZMODEM在协议中包含文件大小并且可以传输正确的字节数,但是如果你只限于XMODEM,我建议使用tar
来包装主机上的文件,这将编码文件大小和烫发,然后在目标上解开它。 tar
可能会抱怨备用填充字节,但它仍然可以正常工作。