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%?)
あと、この速度は魅力的ですね。合成バックアップのペナルティが実質なくなってます。
ベストプラクティス扱いされてるのもわかりますわ。

ノートPCなどのOptimus環境でChromeでNvidiaGPUを利用する方法

CPU内蔵GPU以外に外付けNvidiaGPUを搭載したノートPCなどでは、基本CPU内蔵GPUが使われ、特定にアプリで外付けGPUが使用できるように設定可能なOptimus環境になっています。

ただ、Chromeで外付け Nvidia GPUを使用するように設定しても、実際には内臓CPUが使われてしまいます。

どうやら、バグ対策らしいもので、Chromeで、Optimus環境だと外付け Nvidia GPUが無効になるようです。

対策としては、以下の操作をして、できた gpu-chrome.exe に対して外付けGPUを利用できるように設定して起動することで、外付けGPUが利用できるようになります。

すでにChromeが常駐している場合は、いったん停止して、 gpu-chrome.exe から起動する必要があるようです。どうやら2017年ごろからこの仕様なようで理由はよくわかりません。
なんとなくですが、Nvidia側が制限している雰囲気があります。

なお、同じChromiumベースの新しいEdgeだと、そのまま外付けNvidia GPUが使えるのでこちらを使うのというのが最も簡単だとは思いますが、既存Chrome環境でGPUを使いたい場合に役に立つかもしれません。

なお、GPUの利用状況は、Chromeで、以下にアクセスすれば表示されます。

非対応PC(CPUCoei第3世代,TPMなし,セキュアブートなし)にWin11をインストールする

AsusのS550CMという、i5 3117UなTPM未搭載PCにWin11プレビューを強引にISOからインストールしてみました。

Win11は最低スペックに、Intelだと第7世代以上のCPU、TPM2.0、UEFIでセキュアブート必須、WDDM2.0以上&DirectX12という結構ハードルの高いものがあるのですが、チェック時にバイパスして強引にインストールするものです。

ちなみに、この機種は、タッチパネル付で、NVidiaのGPU(GT635M)もついているUltrabookになります。某神田装備さんでジャンクで¥7,000-ぐらいで入手した代物です。

スペックはこんな感じ

Asus VivoBook S550CM

・Core i5 3317U 1.7GHz 2コア/4スレッド
・15インチタッチパネルディスプレイ(1366×768)
・メモリ 8GB
・SSD 120GB
・GPU1  Intel HD 4000(WDDDM1.3&DirectX11.2)
GPU2  NVIDIA GeForce GT635M(WDDM2.3&DirectX12)
・UEFI対応(セキュアブート対応可、今回はインストール時に無効化)
・TPM搭載なし

Win11をとりあえず使ってみた感覚としてはWin7->8みたいに致命的に変わっているところはあまりない感じです(細かいところは結構ある)

正直スターメニュのアイコンを中央寄せから左寄せに変えるだけで、Win10とはあまり違和感なく操作できるかもしれない。

 

 

インストール方法は、以下の通り。

ISOの入手

 UUP Dump(https://uupdump.net/)にアクセスして、Win11のISOイメージのダウンローダを取得する。

 Latest Dev Channel build -> x64 -> Cumulative Update for Windows 11 をクリックする。
7/10時点では、(10.0.22000.65)

 Languageで、Japaneseを選択し、Nextをクリック。

 Windous HOme,Windows Proが選択されていることを確認し、Nextをクリック
(Windows TeamはチェックなしでOK)

 Creatre download packageをクリックし、ダウンローダを入手する。
(7/10j起点では、22000.65_amd64_ja-jp_multi_07f56947_convert.zip)

 ダウンロードしたzipファイルを展開し、その中の”uup_download_windows.cmd”を実行する。
(Smart Screenで、保護画面が出た場合は、実行をクリックする。)

 ダウンロード&ISO作成が完了するまで待つ(結構時間がかかります。私の時は45分ぐらい)
(“Press 0 to exit”と出たら”0″を押して完了です)

 

ISOをUSBメモリに展開

 作製したISOをUSBメモリに展開します。
rufusという、ISOをUSBメモリ展開するツールがあるのでそれを使用します。
(https://github.com/pbatard/rufus/releases)

 7/10時点では、rufus-3.14p.exe が最新のポータブル版なので、そちらを推奨します。

 基本的にはデフォルトで構いません。

 

条件回避用のレジストリファイルを作成する。

 テキストエディタを開き、”BypassTPMSecureBootCheck.reg”というファイル名で、以下の内容で保存します。
(TPMチェックと、セキュアブートチェック、メモリ容量(4GB以下)チェックのバイパス設定になります。~.reg.txtファイルにならないように注意してください。)
———ここから——–
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\Setup\LabConfig]
“BypassTPMCheck”=dword:00000001
“BypassSecureBootCheck”=dword:00000001
“BypassRAMCheck”=dword:00000001
———ここまで——–

 作製した”BypassTPMSecureBootCheck.reg”というファイルをUSBメモリのルートまたは、”REG”というフォルダに保存します。

インストール

 作製したUSBメモリを使用して、Win11をインストールしたいPCをブートします。
この時、EFIが使用でき倍PCの場合は、Legacy(BIOS)のままでも構いません。
UEFIが使用できる場合は、UEFIのほうが良いと思いますが、うちの環境ではセキュアブートを無効にしないとUSBから起動してくれませんでした。
(Win11インストール後にセキュアブートの有効化は可能です)

 ブート後は流れに従い、インストールを実施します。
ライセンス認証についてはWin8以降がプレインストールされたPCであれば、「プロダクトーがありません」で先に進めます。
途中、”このPCでは Windows 11 を実行できません”と表示されたら、以下の作業を実施します。

・シフトを押しながら、F10を押します。
・コマンドプロンプトが立ち上がるので、notepad.exeと入力し、メモ帳を開きます。
・メモ帳から、ファイル->開くで、開くダイアログを出し、
USBメモリに保存したレジストリファイル”BypassTPMSecureBootCheck.reg”のある場所まで移動します。
・ファイルの種類を”すべてのファイル”にすると、”BypassTPMSecureBootCheck.reg”が表示されます。
(”すべてのファイル”にする前に表示されたいる場合は、ファイル名が~.reg.txtになっている可能性があるので、リネームして下しい)
・”BypassTPMSecureBootCheck.reg”を選択して、右クリックから”結合”をえらんで、レジストリを書き込みます。
・右上に戻るボタン(←)があるので、クリックし、エディションを選ぶ画面に戻ります。
・先ほど選んだエディションが選択委されていることを確認し、次へで進みます。
・先ほどのエラーが出ずに、ライセンス条項の画面になったら、そのあとは通常通りセットアップします。

 

これで、Win11がインストールできると思います。

あとは、デバイスドライバなどをインストールするなどセットアップしていきます。
なお、設定->Windows Update->詳細オプション->オプションの更新プログラムから、
WindowsUpdate経由でドライバを見つけてくれる場合があります。

 

ちょっとだけ使ってみた感想。

  • タスクバーのアイコンはデフォルトが中央ぞろえだが、左寄せ設定もできるので、Win10みたいにWinアイコンを一番左にすることも可能。
    正直これだけすれば、Win10と同様に操作できそう。
  • タスクバーの右クリックで「タスクの設定」しか残っていない。タスクマネージャはスタートメニューの右クリックに移動。
  • スタートメニューでは、全アプリの一覧は出てこないが、「すべて」のアプリボタンを押せば、Win10形式で一覧がでてくるので、Win8みたいに、アプリの一覧が見にくくなることはない模様。
  • タスクバー右端を押すと、アプリがすべて最小化することはオプションで設定可能。スタートメニュー右クリックにある「デスクトップ」を押しても同様の動きになるようです。
  • Windowsの設定メニューは全体的に作り直されているので、階層を再度覚えなおす必要があるかも
  • コントロールパネルは、いまだ健在。
  • スタートメニューを出した状態で、アプリ名をキーインするとアプリを検索する機能は残っているので、この辺は安心
    ちなみに”co”だけてなく、”ko”と入れてもコントロールパネルが出てくる。
  • エクスプローラはリボンUIじゃなくアイコンになってる。主要なものはあるけど、一部なくなっているものもあるので注意
  • エクスプローラの右クリックメニューが主要なもののみに変わっているが、一番最後にある”Show more options”を押せば昔のメニューが出てくる。
  • もともとWin8が入っていたPCだが、ライセンスコードを入れなくても、ライセンス認証はデジタルライセンスで普通に認証された。
  • Win10同様にWindosupdate経由でデバイスのドライバはすべて見つけてきてくれた(S550CMの場合)。
  • WindowsUpdate完了まではCPU使用率がほぼ100%で高かったが、それが終わればWin10レベルまで落ちたので安心。
  • 既定のブラウザをEdgeからChromeに変えようとしたら、ブラウザ一括での変更じゃなくて、拡張子・プロトコル単位に個別指定しないといけないみたい。
    とりあえずHTTP,HTTPSだけ変更してみたが、そこまでしてEdge使わせたいか・・・という印象。
  • 今あのところ、動作しなかったアプリはなし

 

せっかくなので、もう少しいじってみます。