Windows10でReFSを使う


Microsoft曰く次世代ファイルシステムとなるReFS。
NTFSに代わるファイルシステムとして開発されたのがReFSです。

NTFSからのメリットは、パフォーマンス、回復性、スケーラビリティといったところ。
ほとんど業務的なメリットですね。
Winserver2019以降で、重複排除も使えるようになったので、やっと機能的にはそろってきました。

Win10 1703でReFSでフォーマット出来るようになったのですが、
その後すぐに、Win10 Home/Pro 1709(ビルド16226以降)では、ReFSでフォーマットできなくなりました。
現在、サポート外のWin10では使用は非推奨になっていますが、マウントはリバーブルメディア以外では、今のところできる模様です。

Resilient File System (ReFS) (追加: 2017 年 8 月 17 日)作成機能は、次のエディションでのみで利用可能になります。Windows 10 Enterprise と Windows 10 Pro for Workstations。 作成機能は、その他のすべてのエディションから削除されます。 他のすべてのエディションには、読み取りと書き込みの機能があります。1709

業務用OS(Enterprose,Pro Workstation)やサーバ系OS(2012,2016,2019,2022)では、ReFSのバージョンアップはすすんでおり、2022/6現在のバージョンは3.9のようです。
バージョン詳細

Win10 1703では、以下のコマンドでフォーマット可能なようです。
あらかじめ、ディスクの管理から、初期化とドライブのマウント(D:)まで実施しておきます。
(GUIでは、ディスクの管理管理からは不可。一度ドライブマウントしておけば、ReFSでもエクスプローラからでもフォーマットできる模様です)

format d: /u /fs:refs /i:enable /Q /A:64k

なお某サイトを参考にしましたが、正直 /u の意味が不明ですが、エラーは出ていない模様。
(/Q はクイックフォーマット指定)

ちなみに、互換性のため、ReFS1.2でもフォーマットできるとのことです。

format d: /u /fs:refsv1 /i:enable /Q

なお、1703より前では、以下のレジストリを追加することで、フォーマット機能のロック解除が可能とのことです。(参考:How to disable or enable ReFS or Resilient File System on Windows 11/10)
ただし、以下のレジストリキー[MiniNT]があると、WinPEとして起動している認識になってしまうようで、一部コマンドが失敗するので、不要になったら削除推奨です。
RefsDisableLastAccessUpdateも0に戻しておきましょう

1709以降では、Windows 10 Pro for WorkstationsまたはサーバOSを使うしかないようです。
なんか、Enterpriseでも行けるのかもしれません。
(いろんな記事を探しましたが、レジストリのキーも文字列(Non->No)が違ったりで情報が錯綜しているので、何か情報あれば教えてください。)

[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\MiniNT]
AllowRefsFormatOverNonMirrorVolume=dword:00000001


[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem]
“RefsDisableLastAccessUpdate”=dword:00000001

ReFSのバージョンは以下のコマンドで、実行できます。
Win10 1703でフォーマットした場合は、3.2になります。(Winserver2016では3.1)

fsutil fsinfo refsinfo d:

ちなみに、この頃のWindowsバージョンだと、サーバOSでも重複排除もサポートしてないです。(もともとクライアントOSでは重複排除は未サポートですが)
WindowsServer 2019(Win10 1803相当)からReFSで、重複排除がサポートされるようになっています。
MS情報

なお、上位のバージョンであれば、ReFSをマウント時にバージョンアップしてくれる模様。
なお、WinServer2022でReFS3.4、Win11相当だと、ReFS3.7だそうです。

その後、Win10 21H2にバージョンアップしてみました。
ReFSバージョンが、自動で3.4になってました。
(ReFSフォーマットするためにMiniNTレジストリキーがあると、OSアップグレードに失敗する場合があるので注意)

なお、21H2にした後は、ReFSフォーマットできなくなってましたが、
レジストリキー追加しても、GUIでもコマンドラインでもダメでした。
期間限定だったんでしょうか・・・・


なぜ、今頃ReFS試しているかっていうと、某バックアップソフトの合成バックアップ時にReFSのブロッククローン機能使って、一時的にフルバックアップ再構築時に高速化とDisk使用分の増加抑制が見込めるらしい(そのソフトではfast cloneというらしいが)と研修で聞いたので。

ReFSのブロッククローンと重複排除を同時に使えればバックアップ保存先として最強かよ・・・
といろいろ調べてみたが、併用するとブロッククローンが働かないらしい(同時利用時の設定はレジストリにあるようなんだけどね)。
そのへんも、いろいろ試してみたいと思います。

追記
Win10 21H2環境でReFS 3.4でフォーマットしたドライブについて、Block Clone(Fast Clone)は、ちゃんと動作しました。
NTFSだと某バックアップソフトウェアの合成バックアップが1時間以上かかっていたのが1分ぐらいで終わりました。
仕様上、ReFSで重複排除をしているとBlock Cloneは無理らしいですが、クローン時にDisk容量をほぼ消費しないので、実質的に2ファイル間の重複排除が出来ているのと同意味の気がします。(一時的ではありますが、重複排除率50%?)
あと、この速度は魅力的ですね。合成バックアップのペナルティが実質なくなってます。
ベストプラクティス扱いされてるのもわかりますわ。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です