SCPで試しましたが、「負のファイルサイズ」が表示されます。
>scp matlab.iso xxx@xxx:/matlab.iso
matlab.iso: Negative file size
また、SFTPを試してみましたが、2 GBのファイルが転送されるまでうまく機能して停止しました。
sftp> put matlab.iso
Uploading matlab.iso to /home/x/matlab.iso
matlab.iso -298% 2021MB -16651.-8KB/s 00:5d
o_upload: offset < 0
何が間違っているのか知っていますか? SCPとSFTPは2GBを超えるファイルをサポートしていませんか?それでは、SSHを介して大きなファイルをどのように転送しますか?
ターゲットファイルシステムはext4です。 LinuxディストリビューションはCentOS 6.5です。ファイルシステムには現在(アクセス可能な)大容量ファイル(最大100 GB)があります。
ベストアンサー1
SCPとSFTPのファイルサイズの制限は不明ですが、分割を使用して問題を解決できます。
split -b 1G matlab.iso
これにより、defaultという名前の1GiBファイルが作成されますxaa, xab, xac, ...
。その後、scpを使用してファイルを転送できます。
scp xa* xxx@xxx:
次に、リモートシステムでcatを使用して元のファイルを再作成します。
cat xa* > matlab.iso
もちろん、この回避策のコストは、分割操作とキャット操作にかかる時間だけでなく、ローカルシステムとリモートシステムの両方に必要な追加のディスク容量です。