Что означают новые атрибуты Windows 8/10: Нет файла очистки (X), Целостность (V), Закреплено (P), Закреплено (U)
Я только что открыл помощь для ATTRIB
команда на Windows 10.0.15063, и обнаружил, что есть новые атрибуты, о которых я не знал.
>attrib /?
Displays or changes file attributes.
ATTRIB [+R | -R] [+A | -A] [+S | -S] [+H | -H] [+O | -O] [+I | -I] [+P | -P] [+U | -U]
[drive:][path][filename] [/S [/D]] [/L]
+ Sets an attribute.
- Clears an attribute.
R Read-only file attribute.
A Archive file attribute.
S System file attribute.
H Hidden file attribute.
O Offline attribute.
I Not content indexed file attribute.
X No scrub file attribute.
V Integrity attribute.
P Pinned attribute.
U Unpinned attribute.
[drive:][path][filename]
Specifies a file or files for attrib to process.
/S Processes matching files in the current folder
and all subfolders.
/D Processes folders as well.
/L Work on the attributes of the Symbolic Link versus
the target of the Symbolic Link
(в частности, X, V, P, U)
И я могу установить +X
с помощью ATTRIB
команда, даже если она не указана как изменяемая.
Я не знаю, что они делают или использовали, хотя. И мне не удалось найти в Google ничего полезного, кроме списков, не намного более полезных, чем сама помощь. Даже собственная помощь Microsoft не помогает.
3 ответа
Есть новые атрибуты, о которых я не знал.
V
Атрибут целостности.
Это связано с проверкой файловых повреждений:
Integrity-streams - ReFS использует контрольные суммы для метаданных и, необязательно, для файловых данных, предоставляя ReFS возможность надежного обнаружения повреждений.
Обзор исходной устойчивой файловой системы (ReFS)
FILE_ATTRIBUTE_INTEGRITY_STREAM
Каталог или поток пользовательских данных настроен на целостность (поддерживается только на томах ReFS). Он не входит в обычный список каталогов. Настройка целостности сохраняется с файлом, если он переименован. Если файл копируется, для файла назначения будет установлена целостность, если для исходного файла или каталога назначения установлена целостность.
Константы атрибутов исходного файла
X
Нет атрибута файла скраба.
Это связано с исправлением ошибок:
Упреждающее исправление ошибок - В дополнение к проверке данных перед чтением и записью, ReFS представляет сканер целостности данных, известный как скруббер. Этот скруббер периодически сканирует том, выявляет скрытые повреждения и активно запускает восстановление поврежденных данных.
Обзор исходной устойчивой файловой системы (ReFS)
FILE_ATTRIBUTE_NO_SCRUB_DATA
Поток пользовательских данных не должен читаться фоновым сканером целостности данных (AKA scrubber). При установке в каталоге он обеспечивает только наследование. Этот флаг поддерживается только в томах Storage Spaces и ReFS. Он не входит в обычный список каталогов.
Константы атрибутов исходного файла
P
Прикрепленный атрибут.
Это указывает на то, что файл является разреженным файлом:
Разреженный файл имеет атрибут, который заставляет подсистему ввода-вывода выделять только значимые (ненулевые) данные. Ненулевые данные размещаются на диске, а не значащие данные (большие строки данных, состоящие из нулей) - нет. При чтении разреженного файла выделенные данные возвращаются в том виде, в котором они были сохранены; нераспределенные данные возвращаются по умолчанию в виде нулей.
NTFS освобождает разреженные потоки данных и поддерживает другие данные только как распределенные. Когда программа обращается к разреженному файлу, файловая система выдает выделенные данные как фактические данные, а освобожденные данные - как нули.
NTFS включает в себя полную поддержку разреженных файлов для сжатых и несжатых файлов. NTFS обрабатывает операции чтения разреженных файлов, возвращая выделенные данные и разреженные данные. Можно получить разреженный файл как выделенные данные и диапазон данных без извлечения всего набора данных, хотя NTFS возвращает весь набор данных по умолчанию.
С установленным атрибутом разреженного файла файловая система может освобождать данные из любого места в файле и, когда приложение вызывает, выдавать нулевые данные по диапазону вместо хранения и возврата фактических данных. Интерфейсы прикладного программирования (API) файловой системы позволяют копировать или резервировать файл в виде фактических битов и диапазонов разреженных потоков. Конечным результатом является эффективное хранение и доступ к файловой системе. На следующем рисунке показано, как данные хранятся с заданным атрибутом разреженного файла и без него.
Исходные NTFS разреженные файлы
FILE_ATTRIBUTE_SPARSE_FILE
Файл, который является разреженным файлом.
Константы атрибутов исходного файла
Дальнейшее чтение
- Индекс AZ командной строки Windows CMD
- Категоризованный список команд Windows CMD
- attrib - Показать или изменить атрибуты файла.
На самом деле больше новых атрибутов найдено в C:\Program Files (x86)\Windows Kits\10\Include\10.0.16299.0\um\winnt.h
:
FILE_ATTRIBUTE_UNPINNED = 0x00100000
FILE_ATTRIBUTE_PINNED = 0x00080000
FILE_ATTRIBUTE_RECALL_ON_DATA_ACCESS = 0x00400000
Только последний документально описан по адресу https://msdn.microsoft.com/en-us/library/windows/desktop/gg258117%28v=vs.85%29.aspx
Основываясь на https://techcommunity.microsoft.com/t5/OneDrive-for-Business/Files-on-demand-difference-in-locally-available-and-always/m-p/118203 я предполагаю, что "закреплен" "Флаг используется для предотвращения удаления файла из локального хранилища при нехватке места на диске. Атрибут "Не закреплен", OTOH, кажется, используется, чтобы указать, что вы хотите принудительно заставить файл не храниться локально.
В настоящее время я изучаю, как эти атрибуты используются новой функцией "Файлы по требованию OneDrive" ( https://support.office.com/en-us/article/Learn-about-OneDrive-Files-On-Demand-0E6860D3-D9F3-4971-B321-7092438FB38E).
См. https://social.technet.microsoft.com/Forums/windows/en-US/375f3933-fcab-450c-bb9c-da54155549e2/how-do-i-getset-onedrive-files-on-demand-status-from-powershell?forum=ITCG если вы хотите извлечь уроки из этих исследований.
Это правильно, чтобы иметь возможность установить NO SCRUB(X) с NTFS.
NTFS проверяет читаемость и восстанавливает при необходимости.
Поскольку контрольной суммы нет, NTFS не проверяет правильность данных.
Это имеет смысл только на избыточных дисковых пространствах.
Это один из источников информации.
(см. слайд № 30)
P не является редким атрибутом.
Потому что "Get-Item | Format-List Attributes" в Powershell будет печатать "Sparse" при разреженном атрибуте.
Но атрибут Pinned будет шестнадцатеричным значением, а не значащей строкой.
Извините, я не знаю, что это заколотое / не закрепленное.