Windows10のシステムドライブ(Cドライブ)の空き容量が少なくなった際に、「hiberfil.sys」というファイルが数GBの容量を使用していることに気づく場合があると思います。
このhiberfil.sysはシステムファイルのため通常の手順で削除することはできません。また、強制的に削除しても自動で再生成されます。
本記事では、Windows10の「Hiberfil.sys」の概要と、場所や確認方法、削除方法について詳しく紹介します。また、場所の移動やファイルサイズを縮小する方法についても合わせて解説します。
この記事の内容
Hiberfil.sysとは
Hiberfil.sysとは、Windowsの休止状態や高速スタートアップで使用されるハイパーネーション(休止状態)ファイルのことです。
PCを休止状態にしたり、高速スタートアップを有効にしてシャットダウンを行うと、システムの状態がストレージ上にHiberfil.sysとして一時保存されて電源が切れます。この状態からPCを復帰または起動すると、Hiberfil.sysからシステムの状態が読み込まれ作業状態を素早く復元することができます。
スリープ状態との大きな違いは、スリープはメモリ上にシステムの状態を保存し低電力状態になるのに対して、休止状態ではストレージ上にシステムの状態を保存しシャットダウンするため、消費電力を大幅に抑えることができる点です。
Hiberfil.sysの場所・容量の確認方法
Hiberfil.sysは、休止状態の機能が有効になっている場合に、システムドライブの直下(C:\hiberfil.sys)に生成されます。
また、Hiberfil.sysは隠しファイルになっているため、デフォルトのフォルダオプションでは確認することができません。
Hiberfil.sysの容量を確認したい場合は以下の手順で操作してください。
- 「Windows + E」キーを入力して、エクスプローラーを起動します。
- 左ペインで「PC」をクリックし、右ペインで「システムドライブ(ローカルディスクC:)」をダブルクリックして開きます。
- 上部の「表示」→「オプション」をクリックします。
- 「表示」タブを開いて、「隠しファイル、隠しフォルダー、および隠しドライブを表示する」のオプションを選択します。
- 「保護されたオペレーティングシステムファイルを表示しない(推奨)」にチェックを入れ、確認ダイアログが表示されたら「はい」をクリックします。
- 「OK」をクリックしてフォルダオプションの設定を保存します。
- 「hiberfil.sys」が表示されたら、右クリックして「プロパティ」を選択し容量を確認します。
Hiberfil.sysの無効・削除方法
ハイバネート機能を有効にした状態でHiberfil.sysを削除しても、自動的にファイルが再生成されてしまいます。
Hiberfil.sysを削除するには、ハイバネート機能を無効にする必要があります。ハイバネート機能を無効化することでHiberfil.sysは自動的に削除されます。
ハイバネーション機能を無効にしてHiberfil.sysを削除するには、次の手順で操作します。
- 「Windowsマーク」を右クリックして「Windows PowerShell(管理者)」を選択します。
- PowerShellが起動したら、以下のコマンドを入力してEnterキーで実行します。
powercfg.exe -h off
- ハイバネート機能を有効に戻す場合は、以下のコマンドを実行してください。
powercfg.exe -h on
- 上記のコマンドは、管理者権限で起動したコマンドプロンプトから実行することもできます。
- ハイバネート機能を有効に戻す場合は、以下のコマンドを実行してください。
- コマンドを実行できたらPowerShellを閉じます。
以上の手順で、ハイバネーション機能が無効化されHiberfil.sysが削除されます。『Hiberfil.sysの場所・容量の確認方法』で、Hiberfil.sysが削除されたことを確認してください。
ハイバネーション機能が無効化できない場合
Windowsの環境によっては上記の方法でハイバネーション機能が無効化しても、PCの再起動後に再度有効化されてHiberfil.sysが生成されてしまうケースがあります。
ハイバネーション機能が無効化できない場合は、Process Monitorを使ってハイバネーション機能の設定を変更しているアプリケーションを特定してください。具体的な手順は以下の通りです。
- 『Process Monitor - Windows Sysinternals』のページにアクセスして、「Download Process Monitor」をクリックします。
- Process Monitorの圧縮ファイルがダウンロードされたら、右クリックして「すべて展開」を選択します。
- 展開先のフォルダを指定して「展開」をクリックします。
- 「procmon.exe(64ビットの場合はprocmon64.exe)」を右クリックして「管理者として実行」を選択します。
- 「Agree」をクリックします。
- 「Process Monitor」が起動したら、「Option」→「Enable Boot Logging」を選択します。
- ダイアログが表示されたら、「OK」をクリックします。
- PCを通常の手順で再起動します。
- Process Monitorを再度起動します。
- ブートログ保存の確認ダイアログが表示されるので「はい」をクリックし、保存先を指定して「保存」します。
- 保存したブートログを開いて、以下のレジストリの値を「1」に変更しているアプリケーションを探します。
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Power\HibernateEnabled
ハイバネーション機能を有効にしているアプリケーションを見つけたら、機能を無効化するか、アンインストールを行ってください。
Hiberfil.sysの場所は移動できる?
Hiberfil.sysは、デフォルトの場所(C:\hiberfil.sys)から変更したり、別ドライブに移動することは基本的にできません。
厳密にはジャンクションの機能を活用して強制的に移動させることは可能ですが、これを行うとシステムエラーなどが発生してWindowsが正しく動作しないことが報告されています。
Hiberfil.sysの容量が大きくなってシステムドライブを圧迫する場合は、ハイバネーションを無効化するか、次の容量を縮小する方法を試してください。
Hiberfil.sysの容量を縮小する方法
Hiberfil.sysのファイルサイズの最大値は、デフォルトでは搭載しているRAM(物理メモリ)の容量の75%に設定されています。(RAMが4GBの場合は3.5GB)
Hiberfil.sysの使用量が大きい場合は、ファイルサイズの設定を変更して縮小することもできます。
Hiberfil.sysのファイルサイズを縮小するには、以下の手順で操作してください。
- 「Windowsマーク」を右クリックして「Windows PowerShell(管理者)」を選択して起動します。
- ユーザーアカウント制御が表示されたら「はい」をクリックします。
- PowerShellが起動したら、以下のコマンドを入力してEnterキーで実行します。
powercfg -h -size 50%
- 「50%」の部分は、RAMに対する容量をパーセンテージで指定できます。ただし、50%~100%の数値を入力する必要があります。
- 上記のコマンドは、管理者権限で起動したコマンドプロンプトでも使用することができます。
- コマンドが実行できたら、PowerShellを閉じて完了です。
以上の手順でHiberfil.sysのファイルサイズを小さくすることができます。コマンドが実行できたら、『Hiberfil.sysの場所・容量の確認方法』で、ファイルサイズが縮小できたことを確認してください。
Hiberfil.sysを縮小してもシステムドライブの空き容量が不足している場合は、『Windows10 – Cドライブが原因不明の容量不足になった時の対処法』のページを併せて参考にしてください。