Где в Windows хранится атрибут "только для чтения"?
Когда вы устанавливаете атрибут "только для чтения" на диске или разделе с diskpart, он сохраняется на самом диске? Некоторые ответы здесь говорят, что да, но по моему опыту это не сохранено на диске. Я пометил съемный USB-диск только для чтения на одной машине (win 8.1), перенес его на другую машину (win10), и diskpart не показывает его только для чтения. Есть ли возможность сохранить этот атрибут на диске?
3 ответа
Эта информация не может быть сохранена в разделе - это, вероятно, атрибут, связанный с файловой системой, - для файловых систем весьма свойственно иметь такой атрибут, чтобы принудительно проверять диск перед тем, как вносить дополнительные изменения в диск, если файловая система не в согласованном состоянии при выключении.
Флаг только для чтения не может храниться на самом диске. Чтобы получить статус диска только для чтения, вы можете использовать команду PowerShell Get-Disk. Например: (Get-Disk -Number 2).IsReadOnly
Короткий ответ:
БУДЬТЕ ОСТОРОЖНЫ с административным доступом: хотя
атрибут запрещает ВСЕ записи на всем диске (т.е. как в файловой системе тома(ов), так и в таблице разделов), этот атрибут запрещает запись ТОЛЬКО в файловую систему тома(ов), оставляя таблицу разделов. ВСЕ ЕЩЕ доступен для записи (т. е. вы все равно можете удалить том, доступный только для чтения).
Длинный ответ:
Атрибуты[набор | очистить] ТОЛЬКО ЧТЕНИЕ
Атрибут хранится в значении с именем
Это значение битовой маски, а атрибут — бит № 1 (бит № 0 соответствует состоянию диска в сети или в автономном режиме), поэтому установка
Преимущества:
Диск полностью доступен только для чтения: все попытки записи гарантированно завершатся неудачей, включая таблицу разделов (например, удаление/создание томов, изменение уникальной подписи/идентификатора диска и т. д.), а также статус будет четко виден на диске. Управление.
Недостатки:
он действителен только для текущей установки Windows до тех пор, пока узел устройства перечисления не останется прежним (нет гарантии для съемных дисков). Диск снова будет в режиме чтения-записи, если он подключен к другому компьютеру или его узел устройства изменится по какой-либо причине, например, он подключен к другой шине, порту или концентратору (особенно USB) или удален и переустановлен в диспетчере устройств. .
Атрибуты[набор | очистить] ТОЛЬКО ЧТЕНИЕ
Атрибут физически хранится на диске в зависимости от стиля его раздела (MBR или GPT).
На дисках:
атрибут хранится в поле записи таблицы разделов тома и действителен ТОЛЬКО для этого тома (как указано в описании справки).
На дисках:
атрибут хранится по смещению 0x400h (или в секторе № 2 на 512-байтовом логически отформатированном диске) как «короткая версия» записи GPT, где используются только поля и для общего размера 0x18h байт, и это действителен ДЛЯ ВСЕХ ТОМОВ (как указано в описании справки).
Ниже приведен пример шестнадцатеричного вывода и его структура:
Hex Offset 0 1 2 3 4 5 6 7 8 9 A B C D E F
0000000400 A2 A0 D0 EB E5 B9 33 44 87 C0 68 B6 B7 26 99 C7
0000000410 00 00 00 00 00 00 00 10
0x400: 128-битный GUID.
, со значением (т. е. GUID типа раздела базовых данных Microsoft ); 0x410: 64-битное целое число.
, со значением (т.е. немного набор).
Таким же образом можно также установить
Преимущества:
Атрибут сохраняется , когда диск подключен к другим системам, например Linux, который сохраняет его, даже если том (пере)монтируется в режиме rw.
Недостатки:
Атрибут не отображается в «Управлении дисками», а только внутри, плюс:
На
- атрибуты применяются ТОЛЬКО к выбранному тому (но это ожидаемое поведение);
- он не предотвращает удаление тома, доступного только для чтения (но если он удаляется, атрибут автоматически очищается, поскольку связанная с ним запись GPT полностью обнуляется).
На
атрибуты применяются ко ВСЕМ томам на диске из-за отсутствия другого способа установки атрибутов в MBR (и, как следствие, структуры атрибутов на диске);
тома по-прежнему можно удалять (по неизвестной причине, AFAIK);
атрибут НЕ очищается, если удалены один, несколько или все тома (единственный способ безопасно очистить его — выполнить
в быстрый); новые тома по-прежнему можно создавать, но нельзя форматировать (поскольку это операция записи).
Это моя простая точка зрения, но причина, по которой атрибуты тома применяются ко ВСЕМ ТОМАМ на MBR-дисках, может быть:
В секторе MBR больше нет доступных мест, поскольку флаг «Индикатор загрузки» отвергает любое значение, кроме 0x80 или 0x00 (иначе последовательность загрузки сойдет с ума), а «Необязательные» байты, расположенные по смещению 0x1BC (444), объявляются как «зарезервированные». " (несмотря на то, что некоторые биты этого 16-битного поля могут быть использованы);
Windows использует один и тот же GUID типа для всех файловых систем в разделе, поэтому установка этого GUID типа означает «для всех томов данных» (другие GUID типа, такие как раздел восстановления, не получат запись «тома» Diskpart, а только запись «раздела»). ).