Windows Server 2016 環境でバックアップ/回復操作を実施した際、以下のように失敗、エラーとなることがあります。
エラーの内容を見ても、「指定されたパスが見つかりません」や以下のようなログが表示されるだけとなります。
原因
Windows Server 2016 だけではなく、過去に Windows 2008 R2 や Windows 7、 Windows 10 でも同様の問題が発生していますが、MAX_PATH の制限が 260文字となります。260 文字を超えたパスをバックアップ/回復しようとした際、該当のパスを見つけることができないため失敗、エラーが発生します。
- You cannot back up a file in Windows Server 2008 R2 or in Windows 7 if the path length is longer than 260 characters
https://support.microsoft.com/en-us/help/982502 - Windows 10 Pro – 260 Character File Path Limit – Not Working (Need – Microsoft Community
https://answers.microsoft.com/en-us/windows/forum/windows_10-other_settings/windows-10-pro-260-character-file-path-limit-not/06c59236-9b12-4f84-a173-e80c66abcf1f
回避策
回避策は、以下の 2つとなります。
- レジストリを直接編集する方法
- グループ ポリシーによる方法
なお、Windows Server バックアップは上記のだけで問題ありませんでしたが、他のアプリケーションで 260文字を超えるパスにアクセスする場合、アプリケーション側で設定ファイル (マニフェストなど) を変更する必要があります。アプリケーションが 260文字制限の解除に対応しているかどうかについては、アプリケーションの作成元に確認する必要があります。
レジストリを直接編集する方法
注 : レジストリを誤って変更した場合、OS やアプリケーションが正常に動作しないなど深刻な問題が発生する場合があります。万一に備えてレジストリのバックアップの取得をお願いします。
- Windows でレジストリをバックアップおよび復元する方法
https://support.microsoft.com/ja-jp/help/322756
- レジストリ エディター (要管理者権限) を起動、以下のレジストリ サブキーに移動します。
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem - 「LongPathsEnabled」という名前で DWORD (32 ビット) 値を作成、値を 1 に設定します。
- レジストリ エディターを終了します。
グループ ポリシーによる方法
- [グループ ポリシーの管理] から対象のグループ ポリシーを選択、右クリック、[編集] をクリック、[グループ ポリシー管理エディター] を起動します。
- 左ペインから [コンピューターの構成] – [ポリシー] – [管理用テンプレート] – [システム] – [ファイル システム] とツリーを展開、右ペインに表示される [Win32 の長いパスを有効にする] を選択、右クリック、[編集] をクリックします。
- 「有効」を選択、[OK] ボタンをクリックします。
- [グループ ポリシー管理エディター] と [グループ ポリシーの管理] を終了します。
- gpupdate コマンドやシステムの再起動などでグループ ポリシーの変更内容を反映させます。
参考
- Windows Server 2016 | Microsoft
https://www.microsoft.com/ja-jp/cloud-platform/windows-server - Windows Server 2016 ライセンスおよび価格 | マイクロソフト
https://www.microsoft.com/ja-jp/cloud-platform/windows-server-pricing - Windows Server 2016 | Microsoft Docs
https://docs.microsoft.com/en-us/windows-server/windows-server-2016