コマンドプロンプトまたはPowerShellを使用してシステムの復元ポイントを作成する方法
Windows 10、そしてWindows 11でさえ、ほとんどの場合、かなりうまく処理してくれます。しかしもちろん、特にアップデートや大規模なシステム変更などで、何か問題が起きると、決して簡単には解決してくれません。アップデートに失敗して作業内容を失ってしまったり、何かおかしなことが起こり始めた時にすぐに元に戻したいと思ったりする場合は、システムの復元ポイントを作成しておくと便利です。Windowsがこの機能をメニューや設定の裏に隠しているのは少し面倒で、多くの人が気にしていません。幸いなことに、コマンドやPowerShellを使えば、より速く復元できます。コマンドを知っていれば、はるかに簡単です。
これにはメリットがあります。コマンドラインやPowerShellを使って復元ポイントを作成すれば、メニューをクリックするよりもはるかに速く、煩わしさもありません。ただし、Windowsでは復元ポイントの作成頻度が制限されている場合があり、特に最近作成したばかりの場合は制限が厳しくなります。そのため、行き詰まった場合は、レジストリ設定を微調整すると改善する可能性があります。これは少しリスクを伴うかもしれませんが、仕組みを理解していれば、かなり簡単に実行できます。ただし、定期的に復元ポイントを作成しておけば、システムが正常に動作しなくなった場合でも困ることはありません。
コマンドプロンプトを使用してシステムの復元ポイントを作成する方法
この方法は、設定メニューを開かずに素早くバックアップしたい場合に最適です。少し奇妙ですが、コマンドライン方式なので一度セットアップしてしまえば問題なく動作します。マシンによっては1回でスムーズに動作しますが、場合によっては少し問題が発生することもあります。管理者として実行したり、PCを再起動したりする必要があるかもしれません。このコマンドはWindows Management Instrumentationを呼び出して復元ポイントを作成し、0を返せば問題ありません。とても簡単ですよね?まあ、ほとんどの場合はそうですが。
- まず、 [スタート] メニューでコマンド プロンプトを検索し、右クリックして、[管理者として実行]を選択します。
- 次に、以下のコマンドを入力します。<RestorePointName>の部分は、この保存先に付けたい名前に置き換えてください。例えば、「Before Windows update」などです。
wmic.exe /Namespace:\\root\default Path SystemRestore Call CreateRestorePoint "<RestorePointName>", 100, 7
コマンドが正常に実行されると、「ReturnValue = 0」と表示されます。これは、復元ポイントがバンク内にあることを意味します。エラーや異なる数値が表示された場合は、システムの保護設定に問題があるか、管理者権限で実行されていない可能性があります。Windowsがうまく動作しない場合もあるため、すぐに復元されなくても驚かないでください。
PowerShellでシステム復元ポイントを作成する方法
PowerShell の方がお好みの方、あるいはこのプロセスをもう少し自動化したいという方も、同様に実行可能です。PowerShell を使うと「パワーユーザー」レベルの作業のように感じるかもしれませんが、コマンドさえ正しく使えば、実はとても簡単です。PowerShell を使う主な理由は、PowerShell の方がより高度な制御が可能で、さらにコマンドラインを使えばスクリプト作成も容易になるからです。
- Win + Xを押して、Windows PowerShell (管理者)を選択します。
- ユーザー アカウント制御 (UAC) プロンプトが表示されたら、[はい]をクリックします。
- 次のコマンドをコンソールに貼り付け、必要に応じて<RestorePointName>をカスタマイズして、Enter キーを押します。
powershell.exe -ExecutionPolicy Bypass -NoExit -Command "Checkpoint-Computer -Description '<RestorePointName>' -RestorePointType 'MODIFY_SETTINGS'"
すると、小さな進行状況ボックスが表示され、作成プロセスが表示されます。UIは必ずしも洗練されたものではありませんが、一応は機能します。このぼやけた進行状況バーが消えたらスナップショットの設定は完了なので、PowerShellを閉じてください。設定によっては、この処理に1~2秒かかる場合もあれば、一瞬フリーズする場合もありますが、心配はいりません。そのままお待ちください。
復元ポイントを作成するためのデフォルトの24時間制限を変更する
ちょっとした落とし穴があって、Windowsでは24時間(1440分)以内に復元ポイントを作成できないのです。これはOSがロールバックの頻度を制限しているためです。特に何かをテストしている時など、ちょっとした安全策が欲しい場合は、少しイライラします。回避策は、レジストリを微調整してこの時間枠を変更することです。初心者向けの方法ではありませんが、慣れている方なら問題なく使えます。
- HKLM\Software\Microsoft\Windows NT\CurrentVersion\SystemRestoreに移動します。レジストリエディター ( regedit ) から直接実行することも、PowerShell から次のコマンドを使用して実行することもできます。
reg add "HKLM\Software\Microsoft\Windows NT\CurrentVersion\SystemRestore" /v SystemRestorePointCreationFrequency /t REG_DWORD /d <desired minutes> /f
<希望する分数>を、復元ポイントを作成する頻度に置き換えてください。例えば、1時間の場合は60分、2時間の場合は120分などです。値を変更した後に再起動すると、Windowsはより頻繁に復元ポイントを作成できるようになります。ただし、レジストリを誤って変更すると問題が発生する可能性があるので注意してください。大きな変更を行う前には必ずバックアップを取ってください。
システム復元ポイントに関するよくある質問
復元ポイントを作成するのに最適な時期はいつですか?
新しいドライバのインストール、大規模なアップデート、システム設定の変更など、リスクのあることをしようとするときはいつでも、基本的にこのバックアップを作成してください。基本的に、クリーンインストール後、すべての設定が完了した後、または信頼できない操作を行う前に作成してください。そうすれば、何か問題が発生しても、慌てることなく元に戻すことができます。
コマンドラインまたはPowerShellで復元ポイントを作成する方法を知っていれば、システムを迅速に保護できます。特にWindowsが通常のGUIに対応していない場合でも有効です。ただし、定期的にバックアップを作成し、災害復旧のために復元ポイントだけに頼らないようにしてください。復元ポイントはあくまでも安全策に過ぎません。