• Re: PSA: Somehow, without action from me, hyberfile.sys got turned on

    From Maria Sophia@mariasophia@comprehension.com to alt.comp.os.windows-10,alt.comp.microsoft.windows on Tue Apr 7 13:46:06 2026
    From Newsgroup: alt.comp.os.windows-10

    Paul wrote:
    To start with, browser caches do not have to be on disk.
    You can change the browser setting so the cache is in memory.

    The result of this, is not having to clean out cache2 folder
    every ten minutes :-)

    You're an experienced user. You have no experience at
    all doing filesystem housekeeping ? There are compression
    tools. You can move materials into secondary storage, and so on.

    *******

    One thing I found, is Windows had some sort of "incident", it
    wasn't a BSOD, but the OS tried to create a .dmp to hold
    the entire memory space. It stopped, when it got... about
    3GB from running out of RAM.

    Scan your system and see if there are any dump files.
    This also, may not be in cleanmgr.exe as an area needing cleaning.

    Now, I just did my 25H2 and I haven't used sequoiaview to
    see what kind of mess is in there. I've already used cleanmgr.exe
    to remove Windows.old (as I have a backup of the whole disk, and
    I've already restored three times until I got the blasted upgrade
    installed).

    In sequoiaview, I see that the .vhdx for Ubuntu has dropped from
    10GB to 6GB (zeroing and compaction done by the automation),
    so that must have happened during migration.

    [Picture] This site has become pretty well hopeless now...

    https://i.postimg.cc/SNZnkDbH/Sequoia-View-Color-Mode.jpg

    I just put my Downloads folder contents back, as to do the Upgrade
    to 25H2, I had to make some space (sound familiar?), and I moved
    22GB of Downloads over to another partition. Then, when Windows.old
    was purged by cleanmgr.exe, I could copy those back.

    Playing ping-pong with materials, is time consuming and a bore,
    but it goes with the job.

    Hi Paul,

    What started as an anomaly of Microsoft Windows doing strange things,
    turned out to be Microsoft Windows doing strange things when it's strangled for disk space, where it's a classic "race against the disk" scenario.

    At this point, the "solution" is simple (move about 10% of the disk to
    another disk) but I'm using this "user experience" as a lesson for all.

    I'm writing programs to check the disk space in various arenas before
    clearing them, and I'm noticing the myriad ways Windows fails badly.

    This is only a first pass at a solution for everyone with this issue.
    (this is just my worksheet ... it is not the final script!)

    1. Check shadow storage & free space & do a minor disk cleanup.
    C:\> vssadmin list shadowstorage
    C:\> wmic logicaldisk where "name='C:'" get size,freespace
    Win+R > cleanmgr > Clean Up System Files > OK
    C:\> dism /online /cleanup-image /analyzecomponentstore

    2. Check that Windows self healing didn't turn hibernation on.
    C:\> dir C:\ /as
    C:\> powercfg /h /type
    C:\> powercfg /h off

    3. Check if the journal is writing thousands of files per second.
    C:\> fsutil usn readjournal C:
    C:\> fsutil usn queryjournal C:
    PS:> Get-Process | Sort-Object -Descending IOWriteBytes | Select-Object Name, Id, IOWriteBytes -First 5
    C:\> fsutil usn readjournal C: %64 > %temp%\journal_dump.txt
    PS:> Get-Content -Path "C:\$Extend\$UsnJrnl" -Wait -Tail 10
    PS:> Get-Counter -Counter "\Process(*)\IO Write Operations/sec" | Select-Object -ExpandProperty Countersamples | Sort-Object -Property CookedValue -Descending | Select-Object -First 10 | Format-Table -AutoSize
    PS: > Get-Process svchost | Sort-Object -Descending IOWriteBytes | Select-Object Name, Id, @{N="Write_GB";E={$_.IOWriteBytes / 1GB}} -First 10
    4. When space fills up before your eyes, identify the process writing
    PS:> Get-Process | Sort-Object -Descending IOWriteBytes | Select-Object Name, Id, @{Name="Write_GB"; Expression={$_.IOWriteBytes / 1GB}} -First 10
    PS:> Get-Counter -Counter "\Process(*)\IO Write Bytes/sec" |
    Select-Object -ExpandProperty Countersamples |
    Where-Object { $_.CookedValue -gt 0 } |
    Sort-Object -Property CookedValue -Descending |
    Select-Object -First 5 |
    Format-Table -AutoSize

    5. Check the sizes of common culprits
    C:\> dir /s /a "%temp%"
    C:\> dir /s /a "C:\Windows\Temp"
    C:\> dir /s /a "%LOCALAPPDATA%\CrashDumps"
    C:\> dir /s /a "C:\ProgramData\Microsoft\Windows\WER"
    C:\> dir /s /a "C:\Windows\SoftwareDistribution\Download"
    C:\> dir /s /a "C:\ProgramData\Microsoft\Windows Defender\Scans"

    6. Find files created in the last five minutes.
    PS:> $Paths = "C:\Windows", "C:\ProgramData", "C:\Users$env:USERNAME\AppData\Local" Get-ChildItem -Path $Paths -Recurse -ErrorAction SilentlyContinue | Where-Object { $_.LastWriteTime -gt (Get-Date).AddMinutes(-5) } | Select-Object FullName, Length

    7. Optionally watch ProgramData every 10 seconds
    PS:> while($true) {
    $before = (Get-ChildItem "C:\ProgramData" -Recurse | Measure-Object).Count
    Start-Sleep -Seconds 10
    $after = (Get-ChildItem "C:\ProgramData" -Recurse | Measure-Object).Count
    Write-Host "File count change in ProgramData: $($after - $before)" -ForegroundColor Yellow
    }

    8. Emergency Windows Defender stop if it's the runaway process this time
    PS:> Set-MpPreference -DisableRealtimeMonitoring $true
    sc stop WinDefend
    sc config WinDefend start= disabled

    This is only an example of what I'm working on to finally pin
    down why Windows is so badly written that it fails miserably
    in almost impossible-to-imagine ways when it gets strangled
    on disk space (such as when it turned hibernation back on).

    Note: I think it's funny that Microsoft engineers on their beefy
    machines have never experienced what a user will experience so
    they ridicule (according to Winston) what a user will experience
    which, paradoxically, is a direct result of their poor coding.
    --- Synchronet 3.21f-Linux NewsLink 1.2