RDP リモートデスクトップ経由で2GB以上のデータをコピー時にエラーで失敗

構築作業などや、日々の運用の中で、リモートデスクトップ接続でWindowsサーバーなどを操作する機会があると思います。


そこで、私がよく利用するのが、リモートデスクトップクリップボード経由でデータのコピーです。


先日、いつも通り、データをコピーしていると以下のエラーに遭遇。

「ファイルまたはフォルダーのコピー エラー(エラーを特定できません)」

f:id:merrywhite:20200411231734j:plain



実は、自宅の検証環境で、3GB程度のisoイメージを、リモートデスクトップ経由でコピーしていて発生したのですが、実はこれ、リモートデスクトップの仕様でした。以下は、マイクロソフトのサイトです。


>>リモート デスクトップ サービスまたはターミナル サービス経由で 2 GB を超えるファイルをコピー (コピーおよび貼り付け)、クリップボードのリダイレクトを使用して、セッションは自動的に失敗します。

 


【現象】
ある 2 GB を超える、リモート デスクトップ サービスまたはターミナル サービス セッションでクリップボードのリダイレクト (コピーと貼り付け) で RDP クライアント 6.0 またはそれ以降のバージョンを使用してファイルをコピーしようとすると、ファイルはコピーされません。エラー メッセージは表示されません。


そして、これは既知の問題で、2GB以上のデータはコピーできないとあります。解決方法としては、ドライブのリダイレクトか、xcopyなどのコマンドを使用する事だそうです。


【解決方法①】
2 GB より大きいファイルを転送する場合は、リモート デスクトップ サービスまたはターミナル サービス セッションで、ドライブのリダイレクトを使用します。

 

【解決方法②】
リモート デスクトップ サービスまたはターミナル サービス セッションで 2 GB を超えるファイルをコピーするのにXCopyなどの代替コマンド ラインを使用します。たとえば、次のコマンドを使用できます。

\\tsclient\c\ の xcopymyfiles\LargeFile d:\temp


2GBを超えるデータをリモートデスクトップ経由でコピーしたい場合は、上記解決方法か、ファイル共有などを利用してコピーする事ですね。RDPってそもそもファイル転送用のプロトコルではないので、作業に応じて使い方を考える必要がありますね。