View Issue Details

IDProjectCategoryView StatusLast Update
0003749Far ManagerPanelpublic2019-10-26 21:02
Reporterrdavidiuk Assigned To 
PrioritynormalSeverityminorReproducibilityalways
Status newResolutionopen 
Platformx64OSWindowsOS Version10
Product Version3.0 
Summary0003749: Allocated size of "Strange" files
DescriptionДобрый день.

Введение.
Современные версии Windows 10 при установке накопительных обновлений (Cumulative Updates) создают и оставляют папки вида C:\Windows\servicing\LCU\Package_for_RollupFix~31bf3856ad364e35~amd64~~18362.418.1.9. Правая часть имени папки идентифицирует соответствующее обновление и может отличаться от приведённой. Эти папки огромные, например, указанная содержит 9672 Folders, 42002 Files, 563 MB.
Если таких папок накопилось некоторое количество (от нескольких накопительных обновлений), то их можно удалить командой (с полномочиями Администратора):
Dism.exe /Online /Cleanup-Image /StartComponentCleanup /ResetBase
Но эта команда удаляет все папки "Package...", кроме последней (от последнего Cumulative Update). Даже одна оставшаяся папка представляет собой весомый балласт в системе, к тому же я периодически делаю Full System Backup и влияние на его размер существенное.
Я подозреваю, что и последняя папка не является необходимой для работоспособности системы. В Сети на нескольких форумах я находил сообщения о нормальной работе системы после удаления этих папок вручную. У меня есть желание удалить эту папку, но перед удалением я проводил её обследование.
Я обнаружил некоторую странность. Некоторые файлы (здесь я называю их "странными") в папке "Package..." и, как следствие, вся папка занимают меньше места на диске (Allocated size), чем размер файлов. При этом файлы не являются NTFS-сжатыми, хард- или софт-линками или такими малыми файлами, у которых тело файла располагается в MFT. Для меня эта странность таких файлов так и осталась загадкой. Вообще, в папке "Package..." подавляющее большинство файлов, размер которых более кластера (4KB), являются "странными".

Суть Bug Report
Дальнейший анализ выявил различия между Far'ом и Explorer'ом в сообщаемом Allocated size (Size on disk) таких "странных" файлов и содержащей их папки.
В Far смотрю: для папки - Quick View; для файла - панель в формате Ctrl+5. Allocated size таких странных файлов Far всегда показывает 0.
В Explorer смотрю: Свойства файлов и папок (Можно также смотреть в Far - EMenu - Properties). Size on disk таких странных файлов показывает 4KB, или 8KB, или 164KB и т.п. (но тоже меньше, чем размер файла).
См. прилагаемые скриншоты.

Предлагаю проанализировать отличия между Far и Explorer (Properties) в части информации о размере дискового пространства, занимаемого такими "странными" файлами (и папками, их содержащими) и, если некорректность окажется в Far, то устранить её.

Спасибо. И спасибо за терпение при чтении такого длинного сообщения.
TagsNo tags attached.
Build

Activities

rdavidiuk

2019-10-25 11:28

reporter  

2019-10-25_135346.PNG (64,810 bytes)   
2019-10-25_135346.PNG (64,810 bytes)   
2019-10-25_135806.PNG (97,184 bytes)   
2019-10-25_135806.PNG (97,184 bytes)   

DrKnS

2019-10-25 11:42

administrator   bugnote:0016628

Какие атрибуты у этих странных файлов?

rdavidiuk

2019-10-25 15:55

reporter   bugnote:0016629

Вот, например, атрибуты файла
C:\Windows\servicing\LCU\Package_for_RollupFix~31bf3856ad364e35~amd64~~18362.418.1.9\amd64_microsoft-windows-container-manager_31bf3856ad364e35_10.0.18362.387_none_e88ebff76f5fcdb6.manifest
, фигурировавшего в предыдущем скриншоте. На мой взгляд ничего особенного.
2019-10-25_183913.PNG (52,044 bytes)   
2019-10-25_183913.PNG (52,044 bytes)   

rdavidiuk

2019-10-25 16:31

reporter   bugnote:0016630

Ещё.
Если упомянутый выше файл скопировать (Far'ом) в обыкновенную директорию, например, C:\Temp\, то:
  • процесс копирования длится примерно секунду, а не мгновенно;
  • занимаемое копией место на диске нормальное, 8KB (2 кластера) при размере файла 7448 байт;
  • если полученную копию копировать в другую, 3-ю директорию, то процесс копирования происходит мгновенно.

rdavidiuk

2019-10-26 10:59

reporter  

NormalFile.txt (1,750 bytes)   
********* File 0x00de0000000005b3 *********
File reference number   : 0x00de0000000005b3
File attributes         : 0x00002020: Archive | Not content indexed
File entry flags        : 0x00000000
Link (ParentID: Name)   : 0x000100000001790a: DOS Name     : AMD64_~1.MAN
Link (ParentID: Name)   : 0x000100000001790a: NTFS Name    : \A\amd64_microsoft-windows-container-manager_31bf3856ad364e35_10.0.18362.387_none_e88ebff76f5fcdb6.manifest
Creation Time           : 26.10.2019 10:16:30
Last Access Time        : 26.10.2019 10:16:30
Last Write Time         : 24.09.2019 04:26:11
Change Time             : 09.10.2019 12:47:28
LastUsn                 : 4�637�736�304
OwnerId                 : 0
SecurityId              : 2021
StorageReserveId        : 0
Stream                  : 0x010  ::$STANDARD_INFORMATION
    Attributes          : 0x00000000: *NONE*
    Flags               : 0x0000000c: Resident | No clusters allocated
    Size                : 72
    Allocated Size      : 72
Stream                  : 0x030  ::$FILE_NAME
    Attributes          : 0x00000000: *NONE*
    Flags               : 0x0000000c: Resident | No clusters allocated
    Size                : 90
    Allocated Size      : 96
Stream                  : 0x030  ::$FILE_NAME
    Attributes          : 0x00000000: *NONE*
    Flags               : 0x0000000c: Resident | No clusters allocated
    Size                : 274
    Allocated Size      : 280
Stream                  : 0x080  ::$DATA
    Attributes          : 0x00000000: *NONE*
    Flags               : 0x00000000: *NONE*
    Size                : 7�448
    Allocated Size      : 8�192
    Extents             : 1 Extents
                        : 1: VCN: 0 Clusters: 2 LCN: 11�856
NormalFile.txt (1,750 bytes)   

rdavidiuk

2019-10-26 10:59

reporter   bugnote:0016631

Есть новые, дополнительные сведения.
Для получения детальной технической информации о файле я применил команду (в Command Prompt with Admin priveleges):
fsutil file layout <filename>
Для сравнения я применил команду к "странному" файлу и к его "нормальной" копии. Результаты в присоединённых файлах.
Оказалось, что "странный" файл в отличие от "нормального" имеет атрибуты Sparse | Reparse point (Far почему-то их не показал) и имеет на 2 потока больше.
StrangeFile.txt (2,386 bytes)   
********* File 0x0003000000026724 *********
File reference number   : 0x0003000000026724
File attributes         : 0x00000620: Archive | Sparse | Reparse point
File entry flags        : 0x00000000
Link (ParentID: Name)   : 0x002a000000002e3c: DOS Name     : AM5EA4~1.MAN
Link (ParentID: Name)   : 0x002a000000002e3c: NTFS Name    : \Windows\servicing\LCU\Package_for_RollupFix~31bf3856ad364e35~amd64~~18362.418.1.9\amd64_microsoft-windows-container-manager_31bf3856ad364e35_10.0.18362.387_none_e88ebff76f5fcdb6.manifest
Creation Time           : 09.10.2019 12:47:28
Last Access Time        : 25.10.2019 16:49:26
Last Write Time         : 24.09.2019 04:26:11
Change Time             : 09.10.2019 12:47:28
LastUsn                 : 4�347�018�432
OwnerId                 : 0
SecurityId              : 3106
StorageReserveId        : 0
Stream                  : 0x010  ::$STANDARD_INFORMATION
    Attributes          : 0x00000000: *NONE*
    Flags               : 0x0000000c: Resident | No clusters allocated
    Size                : 72
    Allocated Size      : 72
Stream                  : 0x030  ::$FILE_NAME
    Attributes          : 0x00000000: *NONE*
    Flags               : 0x0000000c: Resident | No clusters allocated
    Size                : 90
    Allocated Size      : 96
Stream                  : 0x030  ::$FILE_NAME
    Attributes          : 0x00000000: *NONE*
    Flags               : 0x0000000c: Resident | No clusters allocated
    Size                : 274
    Allocated Size      : 280
Stream                  : 0x080  ::$DATA
    Attributes          : 0x00000200: Sparse
    Flags               : 0x00000008: No clusters allocated
    Size                : 7�448
    Allocated Size      : 0
    Extents             : 1 Extents
                        : 1: VCN: 0 Clusters: 16 LCN: -1
Stream                  : 0x080  :WofCompressedData:$DATA
    Attributes          : 0x00000000: *NONE*
    Flags               : 0x00000000: *NONE*
    Size                : 2�562
    Allocated Size      : 4�096
    Extents             : 1 Extents
                        : 1: VCN: 0 Clusters: 1 LCN: 753�812
Stream                  : 0x0c0  ::$REPARSE_POINT
    Attributes          : 0x00000000: *NONE*
    Flags               : 0x0000000c: Resident | No clusters allocated
    Size                : 24
    Allocated Size      : 24
StrangeFile.txt (2,386 bytes)   

DrKnS

2019-10-26 11:14

administrator   bugnote:0016632

> атрибуты Sparse | Reparse point
Похоже на SIS: https://docs.microsoft.com/en-us/windows/win32/backup/sis-links-and-reparse-points

> Far почему-то их не показал
Проверьте на актуальной версии.

DrKnS

2019-10-26 11:16

administrator   bugnote:0016633

>:WofCompressedData:$DATA
https://devblogs.microsoft.com/oldnewthing/20190618-00/?p=102597

rdavidiuk

2019-10-26 15:02

reporter   bugnote:0016634

Предыдущий раз я давал скриншот атрибутов "странного" файла, полученный при помощи стабильной сборки Far Manager, version 3.0.0.5454 x64.
Теперь сделал скриншот атрибутов того же "странного" файла с ночной сборки Far Manager, version 3.0.0.5497 x64.
2019-10-26_174822.PNG (62,020 bytes)   
2019-10-26_174822.PNG (62,020 bytes)   
2019-10-26_174903.PNG (61,027 bytes)   
2019-10-26_174903.PNG (61,027 bytes)   

rdavidiuk

2019-10-26 21:02

reporter   bugnote:0016635

Неглубоко ознакомился с SIS Links и WofCompressedData (Compact OS).
Да, действительно, по данным fsutil file layout, один из потоков "странного" файла есть WofCompressedData:$DATA.

А самая свежая сборка Far 5497 тоже не показала атрибуты Sparse | Reparse point (см.выше).

Issue History

Date Modified Username Field Change
2019-10-25 11:28 rdavidiuk New Issue
2019-10-25 11:28 rdavidiuk File Added: 2019-10-25_135346.PNG
2019-10-25 11:28 rdavidiuk File Added: 2019-10-25_135806.PNG
2019-10-25 11:42 DrKnS Note Added: 0016628
2019-10-25 15:55 rdavidiuk File Added: 2019-10-25_183913.PNG
2019-10-25 15:55 rdavidiuk Note Added: 0016629
2019-10-25 16:31 rdavidiuk Note Added: 0016630
2019-10-26 10:59 rdavidiuk File Added: NormalFile.txt
2019-10-26 10:59 rdavidiuk File Added: StrangeFile.txt
2019-10-26 10:59 rdavidiuk Note Added: 0016631
2019-10-26 11:14 DrKnS Note Added: 0016632
2019-10-26 11:16 DrKnS Note Added: 0016633
2019-10-26 15:02 rdavidiuk File Added: 2019-10-26_174822.PNG
2019-10-26 15:02 rdavidiuk File Added: 2019-10-26_174903.PNG
2019-10-26 15:02 rdavidiuk Note Added: 0016634
2019-10-26 21:02 rdavidiuk Note Added: 0016635