2

次のように、XMODEM を使用してバイナリ ファイルを Ubuntu VM から組み込み Linux ターゲットに転送しています。

$ sudo screen /dev/ttyUSB0 115200
$ rx test

CTRL-A:

$ exec !! sx -b test

これで、「テスト」は正常に転送されますが、VM とターゲットの両方で検査すると、次のようになります。

  • VM: サイズ = 22938 バイト
  • ターゲット: サイズ = 23040 バイト

さらに、ターゲットでのアクセス許可が削減されます。

これはなぜですか? また、転送されたファイルがソースと同じであることを確認するにはどうすればよいですか?

4

1 に答える 1

4

XMODEM は 128 バイトのブロックで転送するため、ファイルは常に次の 128 バイト境界までパディングされます。YMODEM と ZMODEM はプロトコルにファイルサイズを含み、正しいバイト数を転送できますが、XMODEM に制限されている場合はtar、ホスト上でファイルをラップするために使用することをお勧めします。これにより、ファイル サイズとパーマがエンコードされ、解凍されます。ターゲットに。tar余分なパディング バイトについて文句を言うかもしれませんが、それでも動作するはずです。

于 2016-03-04T15:16:41.480 に答える