Где в Windows хранится атрибут "только для чтения"?

Когда вы устанавливаете атрибут "только для чтения" на диске или разделе с diskpart, он сохраняется на самом диске? Некоторые ответы здесь говорят, что да, но по моему опыту это не сохранено на диске. Я пометил съемный USB-диск только для чтения на одной машине (win 8.1), перенес его на другую машину (win10), и diskpart не показывает его только для чтения. Есть ли возможность сохранить этот атрибут на диске?

3 ответа

Эта информация не может быть сохранена в разделе - это, вероятно, атрибут, связанный с файловой системой, - для файловых систем весьма свойственно иметь такой атрибут, чтобы принудительно проверять диск перед тем, как вносить дополнительные изменения в диск, если файловая система не в согласованном состоянии при выключении.

Флаг только для чтения не может храниться на самом диске. Чтобы получить статус диска только для чтения, вы можете использовать команду PowerShell Get-Disk. Например: (Get-Disk -Number 2).IsReadOnly

Короткий ответ:

сохраняет атрибут в реестре Windows, а не на физическом диске. Это означает , что он действителен только для текущей установки Windows и не будет переноситься, устанавливаться и применяться в других ОС.

сохраняет атрибут на физическом диске. Это означает, что он БУДЕТ перенесен, установлен и применен также к другим операционным системам, включая Linux (мне пришлось вручную перемонтировать диск в режиме rw, плюс он не затронул сохраненный атрибут, поэтому мне пришлось вручную удалить его в Windows).

БУДЬТЕ ОСТОРОЖНЫ с административным доступом: хотя
атрибут запрещает ВСЕ записи на всем диске (т.е. как в файловой системе тома(ов), так и в таблице разделов), этот атрибут запрещает запись ТОЛЬКО в файловую систему тома(ов), оставляя таблицу разделов. ВСЕ ЕЩЕ доступен для записи (т. е. вы все равно можете удалить том, доступный только для чтения).


Длинный ответ:

Атрибуты[набор | очистить] ТОЛЬКО ЧТЕНИЕ

Атрибут хранится в значении с именем, расположенный в подразделе реестра, где— это пронумерованный и установленный узел устройства диска (см. «Свойства устройства» в «Управлении дисками»).

Это значение битовой маски, а атрибут — бит № 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-дисках, может быть:

  1. В секторе MBR больше нет доступных мест, поскольку флаг «Индикатор загрузки» отвергает любое значение, кроме 0x80 или 0x00 (иначе последовательность загрузки сойдет с ума), а «Необязательные» байты, расположенные по смещению 0x1BC (444), объявляются как «зарезервированные». " (несмотря на то, что некоторые биты этого 16-битного поля могут быть использованы);

  2. Windows использует один и тот же GUID типа для всех файловых систем в разделе, поэтому установка этого GUID типа означает «для всех томов данных» (другие GUID типа, такие как раздел восстановления, не получат запись «тома» Diskpart, а только запись «раздела»). ).

Другие вопросы по тегам