Windowsで原因不明の空き容量不足の調査と対策

Windows11で空き容量不足発生

サブで使用しているPCを今まで使っていたのだが、
いつの間にかCドライブが枯渇していた。最近Windows10から11にアップグレードしたサーバだったので、以前のwindowsのデータが残ているのかと思って、ストレージセンサーで削除してみたが、2GB程度は減ったけど効果はスズメの涙程度。
120GBのSSDなので、何かあったのかと調査開始。

肥大化しているファイルを探す

で、どこがそんなに容量を使っているか巨大なファイルをコマンドで調べていたところ・・・・・(以下は、Cドライブ全体で100MB以上のファイルを列挙するものです。)

FORFILES /S /C “cmd /c if @fsize GTR 104857600 echo @path @fsize”

ん!!

ちょっと待って、57002040969のファイルサイズって、53GBやん
原因間違いなくこれやん!!

ファイルを削除する

“C:\ProgramData\Synaptics\ValidityService.log”は、何かのログファイルですね。
Synapticsとなっているから、ノートPCに搭載されているタッチパネル関係かな?
ということで、一回そのままログファイルを削除してみる。

削除すると、少し待つと勝手に新しいファイルが作られて、0バイトから徐々に増えていきます。

肥大化したファイルについて対策する

“ValidityService.log”でネットを検索すると、Synaptics社製のタッチパッドドライバで ValidityService.logと言うファイル名のログファイルが永遠に肥大化するというバグがあるようです。

HPコミュニティ
なぜSynapticsの有効性サービスログのサイズは常に大きくなるのですか?

対策として、いったん該当ファイルを消した後に、
また自動で作成されてどんどん太っていくので、その間にValidityService.logのプロパティで読み取り専用にすることで、いったん暫定対策。

ちょっと待っただけで4MB超えてますね


いったんこれで、空き容量確認しました。

ちなみにこのバグ、あたらめてネットで確認すると

対策方法としては
 1) Synaptics FP WBF Policy Serviceを停止する
 2) C:\ProgramData\Synaptics\ValidityService.logを削除する
 3) C:\ProgramData\Synaptics\ValidityService.logにダミーのファイルを作成する
 4) C:\ProgramData\Synaptics\ValidityService.logのダミーのファイルのプロパティで「読み取り専用」にチェックを入れる
 5) Synaptics FP WBF Policy Serviceを開始する

で解決するそうです
(私の時はサービス止めずにファイル削除して「読み取り専用」にしちゃいましたが)

いったんこれで様子見します。

カテゴリー: Windows | コメントする

WindowsPCの消費電力を下げる方法(モダンスリープの無効化で年額7000円弱節約できるかも)

Win11PCの電気代を抑えたい

Windows11を使用しているが、最新スリープしても消費電力が下がらないのに気づきました。

HELIOSNEO16

アイドル状態   50-60W/h ぐらい
ディスプレイOFF 30-50W/h ぐらい
スリープ状態   30W/h ぐらい
休止状態      0W/h

もし、現状だと、スリープ状態を維持していても
1日で30W/h x 24 (h) x 40(円/(1000w/h)) = 28.8円
1ケ月(30日)で864円かかることになります。

もし普段PCを毎日17:00-25:00に使用しているとすると
スリープしている時間は、24-8時間=16時間で1日の2/3はスリープ状態になるので
その期間電源を落とせれば、一か月で864*(2/3)=576円削減になります。

塵つもで、1年で計算すると、576 x 12 = 6,912円は意外と大きいかもしれません。

設定を確認

また、以前Windows10のPCを使用していた時は、休止の設定があったのですが、その設定もなくなっていました。

で、いろいろ確認していたところ、
Windows11のスリープは「モダンスリープ」(S0 低電力アイドル)というものが標準になっており、CPUは停止まではせずに低消費電力で稼働しているようです。

最初にPCを使っていいたころは、スリープすると消費電力が0Wになっていたはずなので、
どっかのタイミングで、モダンスリープが有効になってしまったのかもしれません。
(ハイブリッドスリープも有効になっていた。)

省電力モードの状態の種類

  • ディスプレイOFF
    ディスプレイをOFFにしますが、CPUやメモリはそのまま稼働しています。
    (消費電力目安 30-50W)
  • スリープ状態( モダンスリープ:S0 低電力アイドル)
    PCの多くの部分の電力は切るものの、CPUは消費電力の低いアイドル状態として完全には停止させない。ネットワークからのパケット受信などで割り込みが起こると、一時的に復帰してこれを処理できる。大半の時間は低電力状態に留まるため、バッテリー消費が抑えられ、従来型のスリープとは見た目は変わらない。
    復旧速度は非常に速いが、CPUが稼働している分表皮電力が高いです。
    (消費電力目安 30-40W)
  • スリープ状態(通常スリープ :S3 スタンバイ)
    作業中の状態をメモリに保存し、低電力で待機するため、復帰が早く、短時間の離席時に便利です。それ以外のデバイスは基本的に電源OFFとなる。
    (消費電力目安 0-1W)
  • 休止状態
    作業中のメモリ状態をハードディスクに保存し、電源を完全に切るため、スリープよりも消費電力が少なく、長時間使用しない場合に適しています
    注意点としては、システムドライブがSSDなどの場合、メモリのお状態が休止状態開始時に書き込まれるため、SSDの総書き込み容量が関されることでSSDの寿命に影響が出る可能性がある。(バッテリ稼働しているモバイルPC向けです)。
    (消費電力目安 0W)
  • ハイブリッドスリープ
    一定時間経過後にスリープ状態ののちに、また指定時間がたつと自動的に休止状態になります。バッテリ運用しているときにうれしい機能です。

現状利用可能なスリープの一覧

現状の使用可能なスリープの状態を確認するには、以下のコマンドを入力します。

powercfg /availablesleepstatesavailablesleepstates
(またはPowercfg /a)

なお、
「スタンバイ (S0 低電力アイドル) ネットワークに接続されています」
となっていますが、以下のコマンドを入力すると、
「スタンバイ (S0 低電力アイドル) ネットワークが切断されました」
と無効に変更できます。勝手にスリープから復帰してしまう場合は有効なコマンドです。

(最後の数字を0->1にすることで、ネット接続接続を有効化します[設定を元に戻す]。)
(最後の数字を0->2にすることで、「ノートPCのふたを閉じたときにのみ無効」することも可能だそうです。)

表示される通り、モダンスリープ(S0 低電力アイドル)が有効になっていると、
この状態では、スタンバイ(S1,S2,S3)やハイブリッドスリープが利用できないようです。

なので、モダンスリープを無効化してみます。

モダンスリープを無効化方法

モダンスリープを無効化するには、レジストリをいじる必要があります。

スタートメニューもしくは Win+R で 「 regedit 」と入力してレジストリエディタを起動

以下のフォルダに移動する
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Power

Powerフォルダを選択した状態で右パネルの適当な所で右クリック
追加で「 DWORD 値 (32-bit)」を追加します。
Value name は 「PlatformAoAcOverride」。値は0のままでOKです。

レジストリエディタを閉じて、OSを再起動すると、設定が反映されます。

再起動後に、現状の使用可能なスリープの状態を確認すると、
「スタンバイ (S0 低電力アイドル)」の代わりに、「スタンバイ (S3)」が使用可能になっています。

これで、スリープすると消費電力はほぼ0になります。
なお、S3スリープでは、USB接続のキーボードやマウス。ジョイパットなどの電源は切れます。

休止も問題なくできました。

設定変更したことによって、「次の時間が経過後休止状態にする設定が復活しました。」

休止が電源メニューにでてこない場合

なお、電源メニューで休止状態が表示されない場合は、以下の手順で休止を有効化できます。

休止を有効化するには、コマンドプロンプトを管理者で起動した後で、以下のコマンドを入力してみてください。

逆に休止を無効化するには、コマンドプロンプトを管理者で起動した後で、以下のコマンドを入力となります。

あとは、休止を有効化することで、電源メニューに休止を表示させることができます。
(「現在利用可能ではないせってを変更します」をクリックすると変更できるようになります。)

これで、電源メニューに休止が表示されます。

S3スリープがうまく動かない場合

これでスリープすることで、S3スリープが利用可能になりました。
スリープ中はほぼ電力を消費しなくなります。

モダンスリープ(S0 低電力アイドル)よりは、起動に時間はかかりますがそこまで差は感じられません。休止はSSDをシステムDiskdに使用している場合寿命を縮める可能性がありますのでS3スリープが使えるのであればこちらを使うのをおすすめです。

しかし、S3スリープがうまく動かなかったり、S3スリープ実行後に不具合が起こる場合には、残念ながらS3スリープは断念したほうがいいです。

レジストリエディタを再度立ち上げて、
先ほど作成した以下のレジストリ項目を削除して、再起動すればも元に戻ります。
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Power
「PlatformAoAcOverride」

間違ったものを消すと、最悪PCが立ち上がらなくなります可能性もありますので、操作する場合は注意しながら作業してください。

実は、私の環境では、S3スリープを有効にして、S3スリープ自体はできたのですが、
S3復帰後にノートPCのディスプレイがONにならない事象が発生してしまい、元に戻しました。(ノートPCのディスプレイは、試行錯誤の上、電源OFFの状態で電源ケーブルを抜いてしばらく放置すると復活しました。厳密な復活条件は見つかっていませんが・・・)

なので、私の場合はS3スリープの設定を元に戻したうえで、
電源モードの操作や休止状態を組み合わせたバッチファイを作成して、消費電力削減を試し中です。

ある程度調べ終わったら、また記事にしたいと思います。

カテゴリー: Windows | コメントする

TVRemotePlusのLive放送で「コメントを読み込み中…」が消えない場合の対処法

TVRemotePlus 2.7.1のLive放送で「コメントを読み込み中…」が消えない場合の対処法。

①TVRemotePlusインストールフォルダでDPlayer.min.jsを探す。
<TVRemotePlusインストールフォルダ>\htdocs\filesの下にあるはずです。

②DPlayer.min.jsをテキストエディタで開き「コメントを読み込み中…」を検索する。

③「コメントを読み込み中…」をスペースに置き換える。  ※削除すると、違う言語の当該文言が適用されるので削除しないこと。  ※また “” は残してください。

④クライアント側のブラウザキャッシュを実施する。
 Chrome.Edgeなどであれば、「Ctrl」キーと「F5」キーを同時に押すと該当ページをスーパーリロード(キャッシュを利用せずにページをリロード)されます。
 ※これを行わないと、キャッシュされたjsファイルが動作し続ける場合があります。


https://x.com/tobing_X/status/1886314764449849478

カテゴリー: TV録画 | コメントする