Windows10 管理者なのにファイルを消すことが出来ない
Windows10に戻る。
概要
自分、管理者なんですけど?と思うようなエラーってありますよね。
管理者でありながら、1ユーザとして扱われるWindows10。実際はXPあたりからかな?管理者権限でファイルを消そうとすると例えば、システムフォントのconsolasを消そうとして、(実際はバックアップを取ったうえでやりましたが、)
C:\WINDOWS\Fonts> del consola.ttf
ってすると
del : 項目 C:\WINDOWS\Fonts\consola.ttf を削除できません: パス 'C:\WINDOWS\Fonts\consola.ttf' へのアクセスが拒否されま
した。
発生場所 行:1 文字:1
+ del consola.ttf
+ ~~~~~~~~~~~~~~~
+ CategoryInfo : PermissionDenied: (C:\WINDOWS\Fonts\consola.ttf:FileInfo) [Remove-Item], UnauthorizedAcc
essException
+ FullyQualifiedErrorId : RemoveFileSystemItemUnAuthorizedAccess,Microsoft.PowerShell.Commands.RemoveItemCommand
という、管理者である自分を軽視するかのようなエラーが発生する。
完全(かんっぜん)になめられている。重要だから、消すなってことなんでしょうけど、重要でも、存在してほしくないから消したい。と、管理者様が思ってるんだから消させろ。そういうことです。
消したいなら、消し方を知ることだな!未熟者が…ってMicrosoftが言っているようにさえ思えてくる。
対策っていうか、対処法っていうか、やり方なんですけど、2つの手順を挟むだけです。
その前に、実際は削除されていて、UI上ファイルが残っているように見えて、もう一度削除しようとしてエラーになっているケースもあります。この場合は表示の更新をするのが大事になってきます。まずは更新してみましょう。[F5]?
- ファイル/フォルダの所有者をAdministratorsにする。
- ファイル/フォルダに対して、Administratorsはフルコントロール権限であることを設定する。
これはGUI(エクスプローラー)でも出来ますが、フォントファイルなんかはGUIでは認識できず、ファイルとしてだけ認識されるような状態が起こり得ます。Font情報としては消えたけどファイルだけが残っていたりする感じです。そのためGUIではなくCUI(コマンドプロンプトorパワーシェル)で行きましょう。コマンドプロンプトを起動するときは起動アイコンを右クリックして「その他」-「管理者として実行」を選んで起動しましょう。ファイル名を指定して実行なら「powershell start-process cmd -verb runas」を入力して実行することで管理者としてコマンドプロンプトが起動します。
ファイル/フォルダの所有者をAdministratorsにする。
フォルダの場合
C:\WINDOWS\> takeown /F Fonts /R /A
ファイルの場合
C:\WINDOWS\Fonts> takeown /F Consola.ttf /A
takeownコマンドで /Fは対象を指定するオプションで、続けて、フォルダー名あるいはファイル名を指定。/Rはサブディレクトリやその中のファイルも全部(再帰的に)を対象にする。/AはAdoministratorsに変更。ファイルの場合は再帰的にする必要はないので/Rが無くてもよいです。
Administrators権限をフルコントロールに変更
フォルダの場合
C:\WINDOWS\> icacls Fonts /T /grant Administrators:F
ファイルの場合
C:\WINDOWS\Fonts> icacls consola.ttf /grant Administrators:F
icaclsコマンド(Integrity Control Access Control List)で 続けてファイル名を指定し /Tオプションでサブディレクトも全部(再帰的に)を変更、/grant Administrators:FでAdministratorsにフルコントロール権限を付与。
という感じにします。
あとは普通にdel consola.ttfとかと実行すると本当に消えてしまいます。不用意にファイルを消さないように気を付けてください。なくなると本当にやっべぇファイルはあります。Microsoftはある程度親切に権限を分けてくれたつもりではあるのです。あまり親切には教えてくれないのが、アレですけど。
Windows10に戻る。