2016.11.22: Windows10の情報追加。 8.1 update1時代の注意文を削除
2015.03.06: Windows10(TP版)の挙動を追記
2014.12.08: 誤字脱字の修正、古くなった情報の訂正
2014.04.22: Windows8.1updateの挙動について追記
2009.09.29: 初出
このページは「pagefile.sys とhiberfil.sysの解説ページ」の続きです。
ハイバネーションファイル(hiberfil.sys)は、パソコンを休止状態にする際、メモリ内の データ を一時的にHDDへ保存するための予約領域になります。
なお、「XP」、「Vistaと7」、「8.1と10」で若干作動や特性が違います。
はじめに
「ハイバネーションを無効化する方法」はページの後半にあります。
まずはhiberfil.sysの役割やスタンバイ/スリープの種類の説明から行っています。
hiberfil.sysの役割、スタンバイ/スリープの種類
Windows XP
休止状態:
- メモリ内のデータはHDDのhiberfil.sys に保存されます。
復帰の際はHDDからデータを読み直す事で起動時間を短縮します。
電源OFF・シャットダウンと同等の省電力。
- いわゆるS4モード
スタンバイ:
- メモリ内のデータはそのままメモリ内に保存され、高速に復帰出来ます。
hiberfil.sysがなくても作動します。
休止状態に比べるとPCは僅かに電力を消費しています。
- メモリ他、僅かなパーツのみ通電している状態はS3モード。
CPUやチップセットなども通電している状態はS1またはS2モード。
- PC内部のFANが全て止まっている状態ならばS3モードと考えてOK。
Windows Vista/7
スリープ、ハイブリッドスリープが追加される
- ハイブリッドスリープ
Windows XPの「休止状態」と「スタンバイ」の中間的な性質。
hiberfil.sysにメモリ内のデータを保存しつつ、メモリ上のデータも残す。
普段はS3スタンバイと同等の働きをする。
- ハイブリッドスリープが有効になっている場合
長時間スタンバイ状態が続いたり、バッテリーが少なくなると、データをHDDに保存する。
停電やコンセントを抜いた場合などで、HDD上からデータを読み直すことができる。
- hiberfil.sysを削除してもスリープは可能。
(ハイブリッドスリープは使えなくなる)
この場合はXP時代のスタンバイと同様の働きをします。
Windows 10/8.1
高速スタートアップが追加される
- スリープ、ハイブリッドスリープ、休止状態は 7/Vistaと同じ。
- hiberfil.sysを削除すると、ハイブリッドスリープと休止状態は使えない。
高速スタートアップも使えなくなる。
- 高速スタートアップ
- 初期化が不要 (と思われる) デバイス類の情報を、シャットダウン時にHDDに保存し、次回のPC起動時に(初期化せず情報を読み込み)起動を高速化する。
「デバイスドライバの情報のみを保存する」という、休止状態とシャットダウンの中間のような機能。 - 古いデバイスは未対応なので注意。(古いUSB機器でトラブル多い)
シャットダウン中にハード構成が変わるような使い方をしてもトラブルが起きるので注意。
- 初期化が不要 (と思われる) デバイス類の情報を、シャットダウン時にHDDに保存し、次回のPC起動時に(初期化せず情報を読み込み)起動を高速化する。
- hiberfil.sysを削除してもスリープは可能。
この場合、XPのスタンバイと似たような挙動になります。
Windows8.1 Update1/Windows10の場合の注意事項
(Windows8.1updateでは、ハイバネーションを無効にするのはやめておきましょう)
「高速スタートアップ」など、様々な新機能の追加により、
スリープの挙動が大変複雑になっています。
hiberfil.sys を削除すると、PCの設定を変更し再起動した際、
設定変更が反映されない事例が数多く報告されています。
(この現象とハイバネーション有無の因果関係はまだ不明ですが)
ハイバネーションの無効化はしないようにしておきましょう。
手元で検証した限りでは、このトラブルと hiberfil.sysの削除は関係ないと思われます。
ただし、一部の Windows 10 / 8.1 ではハイバネーションの無効化でエラーが出たり、PCトラブルが発生しやすくなる現象は発生するらしく、私の手元にも何通かの報告を頂いております。
hiberfil.sys無効で問題が出るかどうかは、PCによってかなり状況が異なるようです。
hiberfil.sysの役割や、休止状態やスリープの種類と解説はここまで。
hiberfil.sys および ハイバネーション機能は、あると便利な機能ですが、使わない人は全く使わない機能です。
今まで「休止状態は使った事が無い」と言う人はWindowsのハイバネーションを無効にしても構わないでしょう。ハイバネーションを無効にしてもXPの「スタンバイ」、Vista/7の「スリープ」はS3モード(PCが古い場合はS1、S2モード)として作動します。
参考:Vistaの「スリープ」は何が違う?:トラブル解決お答えします
ハイバネーションファイルの移動
hiberfil.sysはpagefile.sysと違い、別ドライブや別パーティションに移動させる事は出来ません。
hiberfil.sys は Windows が起動する初期の段階で使用されるため、Windowsの起動パーティションに存在する必要があります。
システムディスクに空き容量が少ない場合は、hiberfil.sysは休止に必要な領域を十分に確保出来ない場合があります。その場合自動的に休止状態が選択できないようになります。
そのような状態になったら、休止状態の使用を諦めてハイバネーションを無効にするか、不要なデータを削除して空き領域の確保に努めましょう。
ここからがこのページの本題です。
休止状態を無効化し、hiberfil.sysを削除するには 以下の手順を実行します。
ハイバネーションを無効化する方法
Windows XPの場合
コントロールパネルの「電源オプション」で [休止状態] タブをクリックし、
「休止状態を有効にする」のチェックを解除します。
以上で完了。
もしhiberfil.sysがHDD上に残っていても手動削除してOKです。
Windows 10/8.1/7/Vista場合
- ハイバネーション(hiberfil.sys)を無効するコマンド
コマンドプロンプト(管理者)で
powercfg.exe /hibernate off
と入力する。 - 上記のコマンドを実行後、エクスプローラなどでシステムドライブを確認する
- hiberfil.sysは消えているはず。
- 消えていない場合、PC再起動してから手動でhiberfil.sysを削除してOK
- hiberfil.sysが消えていた場合も、手動で削除した場合も、念のためもう一度PCを再起動する
コマンドプロンプトの起動方法
- Windows 7/Vistaの場合 (上図参照)
スタート>アクセサリ>コマンドプロンプトを右クリックして「管理者として実行」 - Windows 10/8.1の場合
スタート「右クリック」> コマンドプロンプト(管理者)
再びハイバネーションを有効にしたい時
powercfg.exe /hibernate on
と入力すればOKです。
ステータスを確認したい時は
powercfg.exe /a
と入力する。
hiberfil.sys削除後にステータス確認した図
▲スリープはS1、S3ステートとして利用可能、休止状態は有効にされていませんとメッセージが出ました。
Windows 10 / 8.1 / 7 で このような結果が出た場合、XP時代のスタンバイと同等のスリープのみが使える状態になっています。
ハイバネーションを無効にしても、スリープは(部分的に)有効
Windows XP:「スタンバイ」は使用可
- ハイバネーションファイルは、メモリ上のデータをHDD上に移してPCの電源を落とす「休止状態」で使用するファイルです。
- メモリ上に データ を残したままPCを休ませる「スタンバイ」は、ハイバネーションを無効にしても作動します。
Vista/Windows7:「スリープ」使用可
- 「スリープ」というモードが用意されています。これはスタンバイと休止状態を組み合わせたモードですが、ハイバネーションファイルをOFFにしても普通に作動します。
- 何度か試していますが、今の所不具合も無く、hiberfil.sysを無効にする前よりも若干高速です。XPまでの「スタンバイ」と同じ作動をしているのかもしれません。
Windows 10/8.1: 「スリープ」使用可
Vista や 7 と同様に、10 や 8.1 でもスリープは可能です。
ハイブリットスリープ、休止状態、高速スタートアップは利用不可となります。
- 2014年頃には「Windows 8.1 update1でhiberfil.sys を削除すると問題が発生しやすくなる」と言われていましたが、そこから2年半、手元のPCはずっとhiberfil.sys を削除した状態で利用していました。そして、hiberfil.sys の削除が原因と思われる問題は全く発生せず。気にしなくても良いと思われます。
【重要】ノートPCの場合、ハイバネーション無効は要注意
ノートPCの場合、バッテリーが少なくなってきた際、強制的にHDDへ データを避難させPCを休止状態にする機能が非常に重要になってきます。ハイバネーションを無効にするのはお勧めしません。というか禁止です。
通常、ノートPCはバッテリーが残り10%を切った所で休止状態に移行しようとします。
その時初めて「休止状態が使えない。。。」と気付いて焦らないように気をつけましょう。
- pagefile.sys とhiberfil.sysの解説ページ
- ページファイル (pagefile.sys) の設定方法と推奨値 (無効にするのは非推奨)
- ハイバネーション(hiberfil.sys)を無効にする・削除する (このページ)
- pagefile.sys・hiberfil.sys他、HDDに関するTips