Windows Update のクリーンアップで空き領域を増やす

Windows の自動更新などで Windows Update が実行されると、次第にストレージ (HDD・SSD) の空き領域が減っていきます。
その理由はもちろん、Windows 自体のサイズが増加する為でもあるのですが、実は Windows の動作に必須ではないファイルも残されたり、作られたりしています。

そのような削除しても良いファイルのうち、アップデート前の状態に復元する為のバックアップ(復元ポイント)は、一定期間後に自動的に削除されます。

しかし、過去にインストールされた更新プログラム情報は、不要ですが残ってしまいます。これは既に Windows で使われておらず、再利用されることも無いため、削除しても問題ありません。空き領域は数GB程度増える可能性があります。

また、アップグレードのログファイルも自動削除されません。こちらも Windows の動作には無関係で削除しても構いませんが、トラブル時に役立つ可能性があるため、残しておくことが推奨されています。

クリーンアップの実行方法

過去の更新プログラム情報の削除は、Windows の設定から簡単に行なえます。
まず、スタートメニューの ⚙ 歯車マークなどから「Windows の設定」を開き、メニューを下記の順にたどります。

システム > ストレージの項目ストレージセンサーにある「今すぐ空き領域を増やす

windows_update_cleanup1.jpg
Windows の設定 > システム > ストレージ

複数の削除対象項目とチェックボックスが表示されますので、その中から、「Windows Update のクリーンアップ」にチェックが入っていることを確認しましょう。なお、既にクリーンアップされている場合は、項目自体が表示されません。

削除対象項目のうちのいくつかは最初からチェックされていますが、上記の通りアップグレードログファイルは外しておいたほうが良いかもしれません。その他も、必要がなければチェックを外します。「縮小表示」と「一時ファイル」は削除しても大丈夫ですので、チェックを入れておきます。

windows_update_cleanup2.png
Windows Update のクリーンアップ中

確認がおわったら、上部にある「ファイルの削除」ボタンを押すと、不要ファイルの削除が開始されます。

完了までの時間

「Windows Update のクリーンアップ」にはかなり時間がかかります。数十分から1時間以上かかる可能性もありますので、PC の稼働時間に余裕があるときがオススメです。

削除中は進捗状況が表示されず、ちゃんと動いているのか不安になりますが、タスクマネージャで CPU の負荷など見ると動作していることが確認できます。
Everything などのインデックスを作るタイプのファイル検索ソフトが常駐している場合は、完全に終了させておいたほうが進捗が早くなるかもしれません(…関係ないかも)。

なお、「今すぐ空き領域を増やす」機能は Windows に以前から搭載されている「ディスク クリーンアップ」とほぼ同等のようです。「ディスク クリーンアップ」は今後廃止される予定ですが暫くの間は利用可能で、そちらでも削除できます。

※ 2018年10月現在の Windows 10 で確認。

関連サイト

Boostnote のインストール時に起動ショートカットが見つからない

条件は不明ですが、Windows で Boostnote をインストールした時に起動用ショートカットが生成されないケースがあるようです。
インストール実行でエラー等がなければインストール自体は正常に完了し、自動的に初回起動します。しかし起動用ショートカットが生成されないので、二回目以降の起動ができません。

それならば、Boostnote の実行ファイルへのショートカットを自力で作れば良いのですが、実行ファイルは C:\Program Files内ではなく、なかなか判りにくい場所にあるので簡単には見つかりません。
Boostnote の実行ファイルは、ユーザフォルダ内にあります。

  • Boostnote.exe のパス
    C:\Users\ユーザ名\AppData\Local\boost\

エクスプローラで上記のフォルダを開き、Boostnote.exe を右クリックして「ショートカットの作成」を選び、作成されたショートカットをデスクトップ等の任意の場所に移動させましょう。

なお、AppData フォルダは隠しファイル属性になっていますので、予めエクスプローラのオプションで隠しファイルを表示する設定にしておきましょう。

  • 表示 > オプション > 「表示」タブ > ファイルとフォルダーの表示 > 隠しファイル、隠しフォルダー、および隠しドライブを表示する

Windows 10 には mklink が無い…わけではない

Windows ユーザの皆さん、シンボリックリンク使ってますか?
Linux では多用されるシンボリックリンクも Windows ではあまり使う機会が無いと思いますが、実はかなり以前 (Vista以降) から使えるようになっています。

シンボリックリンクは mklink コマンドで作成できます。

そこで、いっちょ使ってやろうかな!と PowerShell を起動して mklink と入力すると、コマンドが無くて実行できないという事態に陥ります (´・ω・`)

mklink_powershell.png
Windows PowerShell

PowerShell では、画像の通り cmdmklink を渡せば実行できます。

cmd /c mklink /d "c:\symlink名" "e:\foo\既存のディレクトリ"

シンボリックリンク作成時は、管理者権限が必要になる場合があります。
予め管理者権限付きで PowerShell を起動しましょう。

ジャンクションとハードリンク

mklink には他にも類似のリンクを作る機能があり、mklink /j でジャンクション、mklink /h でハードリンクが作れます。

これらとシンボリックリンクの違いは色々あるようですが、どう使い分けるべきなのか明確な基準がありません。この雑然とした感じが Windows らしい所でもありますね!
ただシンボリックリンクが最も新しい機能なので、基本的にはシンボリックリンクで良いようです。

なぜ直接実行できないの?

直接実行できない理由は、どうやら mklink が cmd の内部コマンドだからのようです。PowerShell ではなく普通のコマンドプロンプトからなら、cmd を通さなくても実行可能です。

しかし cmd の内部コマンドが全て PowerShell で直接実行できないわけではなく、start などは実行できます。うーん、謎仕様ですね(´・ω・`)

関連サイト

プロセスの優先度を変更してアプリを起動する(Windows)

Windowsでアプリの優先度を予め変更して起動する方法は下記の通り。

  1. 任意の場所(デスクトップ等)に優先度を変更したいアプリのショートカットを作成。
  2. 作成したショートカットを右クリックしてプロパティを選択。
  3. 「リンク先」の先頭に cmd /c start "" /BELOWNORMAL を追加。

    入力例 cmd /c start "" /BELOWNORMAL "C:\Program Files\foo\bar.exe"

設定例(プロパティ画面)

こうして保存したショートカット経由で起動すると、アプリの実行優先度が変更されます。
優先度指定は/BELOWNORMALの部分で、下記のオプション名が指定できます。

オプション名 優先度
/REALTIME 最高 ※
/HIGH 高 ※
/ABOVENORMAL 通常以上
/NORMAL 通常
/BELOWNORMAL 通常以下
/LOW

/REALTIME/HIGHはWindows自体が操作不能になる可能性があります。動作を充分理解している場合以外は使わないようにしましょう。

多くのアプリは/NORMALで動作しているので、大抵は通常以下の/BELOWNORMALか通常以上の/ABOVENORMALで足りるでしょう。

動作はWindows 10で確認。8以前でもたぶん同様に設定できると思います。
以下、詳細解説(蛇足)。

cmdは必要?

この方法ではstartコマンド経由でアプリを起動しますが、start.exeという実行ファイルは存在せず、startはcmd.exeの機能である為、ショートカットする場合はcmd /c startという少々回りくどい指定をする必要があります。 なお、上記のように設定すると自動的にcmd.exeへのパスが補完されるので、パスまで入力する必要はありません。(C:\Windows\System32\cmd.exe等になる)

startコマンドの謎仕様

startコマンドには実行時のタイトルを指定するオプションがあり、単純に実行パスを "…" で括って渡すとこれがタイトルとして処理されてしまい、結果何も実行されません。なので、引用符で括ったパスを渡したい場合はダミーのタイトルが必要で、start ""と指定するのはその為です。

これ便利?

バックグラウンドで何か重い処理(動画のエンコード等)をしながら作業する場合に便利。
時々、XnConvertを使って画像の一括変換をするのだけれど、優先度が通常で起動する上、優先度を変更する設定も無いようで、変換中に他のプロセスの操作が重くなって困った。タスクマネージャから毎回変更してたけど面倒すぎたので、何かこうシンプルな解決策はないかなーと。

他の方法としては、こういうソフトもあるみたい。

それにしても、単純にプロパティで優先度くらい変更できてもいいのになーと思う。

参考サイト

エクスプローラでサムネイルの枠を外して大きく表示

枠無し(Treatment=0)の設定例

エクスプローラで表示レイアウトを特大アイコン~中アイコンにすると、画像や動画にはサムネイルが表示されます。 その際、サムネイルの外側にドロップシャドウやフィルムのような枠(効果)が付く為、そのぶんだけサムネイル自体のサイズが小さくなってしまいます。
この枠はオプションでは変更できませんが、レジストリを操作すれば枠を無くしたり別の枠に変えたりすることが出来ますので、方法をご紹介します。

対象OS

Windows 10 (Anniversary Update含む) 及び Windows 8, 7, Vista

変更の前に

それほど複雑ではないもののレジストリを変更しますので、変更方法が解る方のみ行ってください。 また、レジストリに間違った変更を加えると Windowsの動作に支障をきたす可能性もありますので、変更作業の際はくれぐれもご注意ください。

レジストリエディタでimageを開いた所

枠の変更

動画のサムネイル枠を変更するケースで説明します。

  1. regedit(レジストリエディタ)を起動します。
  2. 「HKEY_CLASSES_ROOT\SystemFileAssociations\video」を開きます。
  3. DWORD値の「Treatment」 をダブルクリックして開き、数字を入力します。

入力する数字は0から3で、それぞれ下記の枠になります。

効果
0 枠無し
1 ドロップシャドウ (右下方向の影)
2 1と同じ (Vistaではフォトボーダー)
3 フィルムストリップ (フィルム風の枠)

画像の場合は「HKEY_CLASSES_ROOT\SystemFileAssociations\image」を開いて同じように変更します。
設定値は画像には 0、動画には 0か 1がお薦めです。

アイコンの有無

初期状態では、動画のサムネイルの右下にはファイル種別毎のアイコンが付くようになっています。画像のサムネイルには付きません。このオーバーレイアイコンの有無も、レジストリの同じ場所で変更できます。

少し分かり難いのですが、Treatmentと同じ場所に、文字列値「TypeOverlay」が無い状態だと拡張子別のオーバーレイアイコンが表示されます。文字列値「TypeOverlay」有り、中身が空だとアイコンが非表示になります。
(TypeOverlayは表示アイコンを直接指定する為の項目で、空の値は拡張子別アイコンを無効にする。)

もっとも、初期状態のままで特に支障は無いので、この設定を変更する必要はあまり無いでしょう。

変更後は再起動

変更が完了したらレジストリエディタを閉じて、再起動またはサインアウトしてください。設定が適用されサムネイルのスタイルが変わります。

参考