2018.04.01:「どうしてもうまくいかない場合」のヒントを修正
2016.08.29:「元に戻したい場合」を修正
2016.08.28: 初出
Windows 10およびWindows 8.1で システムファイルを TrustedInstaller から所有権を変更し、アクセス許可を取得する方法の紹介です。
(Windows7 の場合の手順はこちら)
システムフォルダ内のファイルを手動で変更しようとしても、以下のようなメッセージが出てファイルの変更が出来ない場合があります。
このファイルを変更するには、TrustedInstaller からアクセス許可を得る必要があります。」
これは、Windowsが重要なファイルの所有者をTrustedInstallerとして管理している為です。これらのファイルを変更・削除したい場合は、ファイルの所有者を変更する必要があります。
TrustedInstallerとは
「TrustedInstaller」=UACにより信頼・許可を与えたインストーラーのみが変更を加える事の出来るファイルです。システムにより厳重に保護されています。通常の操作では、これらのファイルを変更したり削除したりできません。
これらのファイルを操作したい場合、以下のような特殊な手順が必要になります。
注意1: 変更は自己責任で
以下の操作を行うと、
・PCのセキュリティが弱くなります。
・操作を間違えると、Windowsが起動しなくなる等、重大な障害が出ます。
システムのバックアップを取るなど、もしもの備えを行ってから自己責任で実施しましょう。
注意2:システムの復旧を行うと、効果が切れる
TrustedInstallerから所有権を変更してファイルを操作した場合でも、以下の操作でシステムファイルが元に戻ってしまう場合があります。
・システムの復元を利用する
・イメージファイルからOSを復旧する
・「sfc /scannow」の実行
上記の操作を行った後は、もう一度該当ファイルを変更しなおす必要が出る場合があります。
以下、実際の手順の紹介です。
操作対象PC
手元のPCでは、以下の環境でこの操作ができる事を確認しています。
・Windows10 Pro版 Ver 1607 (RS1)
・Windows10 Home版 Ver1511 (TH2)
・Windows8.1 Enterprise 90日評価版
Windows 8.1/10、Home版/Pro版 およびTH2/RS1等、いずれも場合も有効で、OSの内部バージョン等で操作に違いは無い模様です。
前準備
- 管理者権限のあるアカウントでログオンする
- UACのレベルを下げる
▲クリックで拡大
- 「コントロールパネル」>「セキュリティとメンテナンス※」>「ユーザー アカウント制御の設定」
※Windows8.1の場合ここは「アクションセンター」 - 最低レベル、もしくは「デスクトップを暗転しない」までUACレベルを下げる。
- 「コントロールパネル」>「セキュリティとメンテナンス※」>「ユーザー アカウント制御の設定」
- 場合によってはDEPの設定を下げる。
▲クリックで拡大
- 「コントロールパネル」>「システム」>「システムの詳細設定」>「詳細設定」タブ>「パフォーマンス」
- 「データ実行防止」を「重要なWindowsのプログラムおよびサービスについてのみ」に設定する。
- ※この操作が必要なPC、必要でないPCがある模様。
手元のPCでは操作不要だった。
この違いがドコで発生するのかは未調査。
- 「コントロールパネル」>「システム」>「システムの詳細設定」>「詳細設定」タブ>「パフォーマンス」
- エクスプローラーは1個だけ起動している状態にする。
ブラウザを含め、余計なアプリは終了させておく。
- 変更するファイルによりますが、変更したいシステムファイルが利用中の場合は以下一連の操作が無効化されます。
- Windows を セーフモードで起動してから操作する方が無難かもしれません。
実際の操作(コマンド)
以下、コマンドプロンプト(管理者)で入力する。
※コマンドから操作する場合はUACの無効化は不要。
※アクセス許可の変更は行われない。
次項「実際の手順(GUI操作)」の「5.」を実行する。
以下は一例。
- takeown /f C:\Windows\SysWOW64\mfds.dll
mfds.dllの所有権を外す - takeown /f C:\Windows\SysWOW64\mfds.dll /A
所有者をAdministratorsに変更する - takeown /f "C:\Windows\SysWOW64\mfds.dll"
ディレクトリやファイルに スペース が含まれている場合は引用符で囲む。 - takeown /f C:\Windows\SysWOW64\*.*
「*.*」を指定することで、ディレクトリ内すべてのファイルの所有権を一括して変更できる。
コマンド操作が難しい、階層入力が面倒、という場合は次項、GUIでの操作手順を「1.」から順に実行します。
実際の手順(GUI操作)
- まず変更したいファイルがあるフォルダを開きます
▲クリックで拡大
- 所有権を変更したいファイルを右クリックします。
コンテキストメニューを開きます。 - プロパティを選択します
- プロパティ画面が開きます。
セキュリティタブに移動します。 - 「詳細設定」ボタンを押します。
- 所有権を変更したいファイルを右クリックします。
- セキュリティの詳細設定画面の操作
▲クリックで拡大
- 「所有者」の項目で「変更」をクリックします。
- 「選択するオブジェクト名」の欄に、変更後の所有者を手入力またはコピペします。
- 入力する文字列
Usersまたは Administrators
※上図の場合「KEN-PC」の部分は不要。
- 入力する文字列
- 「OK」を押して画面を閉じます。
- 更にOKを押して設定を反映させます。
▲クリックで拡大
- この時点で所有権が正しく変わっている事を確認しましょう。
- OKを押すと確認ダイアログが現れます。
- 少なくとも、プロパティ画面を1度閉じるまでは設定は反映されません。
- 変更するファイルによっては、エクスプローラーやブラウザ、その他常駐ソフトが起動している状態では反映されません。
- この場合、関連するプロセスを停止 (またはセーフモード起動) させてから、手順を最初からやり直します。
- 注意
この時点では、ファイルの所有者が変わっただけです。
アクセス許可はまだ変更されていません。
- 変更したいファイルのプロパティ画面を開き直します。
- プロパティ画面を開き直差なかった場合、以下の変更が有効にならない場合があります。
- ファイルのアクセス許可を変更します。
▲クリックで拡大
- 「編集」ボタンを押します。
- ファイル操作したいユーザーを選びます。
- アクセス許可を変更します。
- 5. OKを押して 設定を反映させます。
以上の手順で、ファイルの所有権およびアクセス許可の変更が完了します。
変更したいファイルによりますが、PCの再起動などは特に必要ありません。
最後に(重要)
UACやDEPなど、セキュリティを弱くした箇所は元に戻しておきましょう。
そのままの状態では、ウイルスなどの攻撃に非常に弱い状態になっています。
元に戻したい場合
先の手順「セキュリティの詳細設定画面の操作」で以下のように入力します
▲クリックで拡大
(2)の部分「選択するオブジェクト名」の欄に、「NT SERVICE\TrustedInstaller」と入力またはコピペします。
また、sfc /scannow を行う事でも 所有権は TrustedInstaller に戻ります。
ただしこの場合、ユーザーが行ったファイル操作や変更も元に戻ります。
どうしてもうまくいかない場合
このページの情報でどうしても変更ができない場合は、別のOSからWindows 10/8.1のシステムファイルにアクセスし、ファイルを書き換える方法を取るしか無いようです。
この時、利用する「別のOS」は「Windows 回復環境」や「Windowsのインストールメディア」でもOKです。
サイト内関連ページ
- Windows回復環境でコピー&ペースト その2
▲クリックで拡大
Windows 回復環境やインストールメディアで PC を起動し「メモ帳」を起動することで、ファイルのコピーやペーストが可能になります。
ちなみに、別OSで Windows PC を起動する場合、いくつかの注意点があります。
- 注意
Windows 10/8.1 は、OSのブート領域が UEFIの「セキュアブート」や「GPTディスクの管理領域」により2重・3重に保護されています。また、ファイルの管理方法もWindows7以前のNTFSとは異なった形式になっています。
- マザーボードのUEFI設定(セキュアブート と CSM設定)を適切に変更し、OS側の高速スタートアップを無効にしなければ、別OSをブートできない場合があります。
- Windows8以降はNTFSのバージョンが異なるため、別OSからWindowsシステムを正常に読み込めない場合があります。
- 最悪の場合、別OSから Windowsシステムにアクセスする事でファイルシステムが破損し、Windowsが起動しなくなる危険性もあります。
- 完全に自己責任の世界です。
Windows8以降、この操作は Windows 上でアクセス権を変更するよりも危険な行為になっています。
このページの情報は以上です。