sfc / scannow を実行すると Windows リソース保護は、修復サービスを開始できませんでした。と表示されSFC実行できない。【 Windows7/8/8.1 】

sfc /scannow を実行すると

「Windows リソース保護は、修復サービスを開始できませんでした。」

と表示される場合で

TrustedInstaller (Windows Modules Installer) が
正しく開始されない場合が原因の対処方法になります。



・原因

以下のレジストリーが変更された場合に発生する。

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Component Based Servicing\Version



・対処方法

1.
C:\Windows\Servicing\Version を確認する。

「 6.1.7600.16385 」というフォルダがあれば、これが

TrustedInstaller の id になります。 ※IDは環境によって変わる。

2.
次に C:\Windows\WinSxS を確認し以下のフォルダがあるか確認する。
( C:\Windows\WinSxS を開き右上の検索窓で検索すると楽 )
例)amd64 servicingstack_31bf3856ad364e35 6.1.7600.16385 等で

32 ビットの場合 ※ID( 6.1.7600.16385 )は環境によって変わる。
x86_microsoft-windows-servicingstack_31bf3856ad364e35_6.1.7600.16385

64 ビットの場合 ※ID( 6.1.7600.16385 )は環境によって変わる。
amd64_microsoft-windows-servicingstack_31bf3856ad364e35_6.1.7600.16385

フォルダが確認できればフォルダパスをメモする。

例)
C:\Windows\winsxs\amd64_microsoft-windows-servicingstack_31bf3856ad364e35_6.1.7600.16385_none_655452efe0fb810b

3.
レジストリエディタを開き以下の階層まで行く

HKLM\Software\Microsoft\Windows\CurrentVersion\Component Based Servicing\Version

ただし、アクセス許可が無いため通常は変更ができない。

以下の方法でアクセス権を与える。
(Windows7 の場合)
①Version を右クリックし「アクセス許可」を選択
②詳細設定をクリック
③所有者が TrustedInstaller もしくは、SYSTEM になっているのを確認
④下の所有者の変更で現在のユーザーに変更する(ユーザー選択し適用)
⑤「OK」を選択し前の画面に戻る。選択したユーザーのフルコントロールにチェックし適用
⑥「OK」で閉じる

4.
右側の項目を右クリックし、「文字列値」を追加する。

名前は、ID に変更する。
例)6.1.7600.16385

ダブルクリックし値にフォルダパスを入力する。
(※但し、C:\Windows\ ではなく %SystemRoot% とすること)

例) %SystemRoot%\WinSxS\amd64_microsoft-windows-servicingstack_31bf3856ad364e35_6.1.7600.16385_none_655452efe0fb810b

で閉じればOKです。

詳しくは、MSサイトにあります。

このブログの人気の投稿

ping テストのログを記録する方法

ddrescue コマンドによるクローンについて

Ubuntu を使用しDDコマンドでクローンの作成