SUA 環境で mv コマンド実行時に "Cannot Allocate Memory" で失敗する

現象
SUA 環境で mv コマンドにて一度に大量のファイルを移動しようとすると "Cannot Allocate Memory" が発生することがある
原因
mv コマンドの引数に数千以上の大量のファイル名が渡されるとコマンド実行時の引数の受け渡しの内部処理で、メモリ割り当てに失敗してしまいコマンドの実行が失敗します。
解決方法
本事象に関しましては Windows Server 2008 R2 以降では以下の技術情報にて公開されている修正プログラムにて修正されております。
Windows Server 2008 では回避策にて対応します。

文書番号: 2786401
"Cannot Allocate Memory" error when you run a shell script in Windows 7 SP1, Windows Server 2008 R2 SP1, Windows 8 or Windows Server 2012
http://support.microsoft.com/kb/2786401

回避策
ワイルドカード (*) ですべてのファイルを指定せずに、以下のように選択するファイルを制限して実行します。

(実行例)
ファイル名の先頭が a から始まるファイルすべてを dstdir へ移動しています。

$ mv srcdir/a* dstdir
注意 : これは、マイクロソフトのサポート組織内で直接作成された "緊急公開" の資料です。 この資料には、確認中の問題に関する現状ベースの情報が記載されています。 情報提供のスピードを優先するため、資料には誤植が含まれる可能性があり、予告なしに随時改定される場合があります。 その他の考慮事項については、使用条件を参照してください。
プロパティ

文書番号:2953279 - 最終更新日: 09/20/2016 13:25:00 - リビジョン: 2.0

Windows Server 2008 Enterprise, Windows Server 2008 R2 Enterprise, Windows Server 2012 Datacenter

  • kbdeployment kbsetup kbhowto KB2953279
フィードバック