
Quando você define o atributo somente leitura no disco ou partição com o diskpart, ele é armazenado no próprio disco? Algumas respostas aqui dizem que sim, mas na minha experiência não é salvo no disco. Marquei o disco USB removível como somente leitura em uma máquina (win 8.1), trouxe-o para outra máquina (win10) e o diskpart não o mostra como somente leitura. Existe uma opção para salvar este atributo no disco?
Responder1
Resposta curta:
Attributes DISK [set | clear] READONLY
armazena o atributono registro do Windows, não no disco físico. Isso significaé válido apenas para a instalação do Windows atualmente em execução e não será transportado, configurado e aplicado em outros sistemas operacionais.
Attributes VOLUME [set | clear] READONLY
armazena o atributono disco físico. Isso significaele SERÁ transportado, configurado e aplicado também em outros sistemas operacionais, incluindo Linux(Tive que remontar manualmente o disco no modo rw, e ele não tocou no atributo armazenado, então tive que removê-lo manualmente no Windows).
TENHA CUIDADO com o acesso administrativo, no entanto:
enquanto o DISK
atributo impedeTODAS gravam em todo o disco(ou seja, o sistema de arquivos do(s) volume(s) e a tabela de partição), o VOLUME
atributo impede a gravaçãoSOMENTE para o sistema de arquivos do(s) volume(s), deixando a tabela de partição AINDA gravável (ou seja, você ainda pode excluir um volume somente leitura).
Resposta longa:
Atributos DISK
[definir | limpar] SOMENTE LEITURA
O atributo é armazenado no valor nomeado "Attribute"
, localizado na subchave do registro HKLM\SYSTEM\CurrentControlSet\Enum\*\Disk*\Device Parameters\Partmgr
, onde *
está o nó do dispositivo enumerado e instalado do disco (veja em Propriedades do Dispositivo em Gerenciamento de Disco).
É um valor de máscara de bits e o readonly
atributo é o Bit nº 1 (o Bit nº 0 é para o status do disco online/offline), portanto, a configuração readonly
em um disco online alterará o valor de 0
para 2
, mas a configuração em um disco offline alterará o valor de 1
para 3
.
Vantagens:
O disco éinteiramentesomente leitura: todas as tentativas de gravação garantirãoFALHAR,incluindo sua tabela de partição(por exemplo, exclusão/criação de volumes, alteração da assinatura/ID exclusivo do disco e assim por diante), além do status ser claramente visível no Gerenciamento de disco.
Desvantagens:
É válido apenas para a instalação do Windows em execução no momento até que o nó do dispositivo de enumeração permaneça o mesmo (sem garantia para unidades removíveis). O disco estará no modo leitura-gravação novamente se estiver conectado a outro computador ou se o nó do dispositivo for alterado por qualquer motivo, por exemplo, se estiver conectado a outro barramento, porta ou hub (especialmente USB) ou se for desinstalado e reinstalado no Gerenciador de Dispositivos .
Atributos VOLUME
[definir | limpar] SOMENTE LEITURA
O atributo éarmazenado fisicamente no disco, dependendo do estilo de partição (MBR ou GPT).
Em GPT
discos:
O atributo é armazenado no Attributes
campo da entrada da tabela de partição do volume eé válido SOMENTE para esse volume(conforme declarado na diskpart
descrição da ajuda).
Em MBR
discos:
O atributo é armazenado emdeslocamento 0x400h(ou setor nº 2 em um disco formatado logicamente de 512 bytes) como uma "versão curta" de uma entrada GPT onde apenas o campo Type GUID
e Attributes
é usado para um total de 0x18h bytes e é válidoPARA TODOS OS VOLUMES(conforme declarado na diskpart
descrição da ajuda).
Aqui abaixo um exemplo de saída hexadecimal e sua estrutura:
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: GUID de 128 bits
Type GUID
, com valorEBD0A0A2-B9E5-4433-87C0-68B6B72699C7
(ou seja, o MicrosoftPartição de dados básicaDigite GUID);0x410: inteiro de 64 bits
Attributes
, com valor0x1000000000000000
(ou seja, bit#60
definido).
Da mesma forma, também é possível definir os atributos SHADOWCOPY
, HIDDEN
e NODEFAULTDRIVELETTER
(bits #61
, #62
e #63
, respectivamente).
Vantagens:
O atributo épreservadoquando o disco está conectado a outros sistemas, por exemplo Linux, que o preserva mesmo se o volume for (re)montado em modo rw.
Desvantagens:
O atributo não é visível no Gerenciamento de disco, mas apenas no diskpart
, além de:
Em GPT
discos:
- atributos se aplicam SOMENTE ao volume selecionado (mas esse é o comportamento esperado);
- isso não impede que o volume somente leitura seja excluído (mas se for excluído, o atributo será automaticamente limpo, porque sua entrada GPT associada será totalmente zerada).
Em MBR
discos:
atributos se aplicam a TODOS os volumes no disco, devido a nenhuma outra maneira de definir atributos no MBR (e a consequente estrutura de atributos no disco);
os volumes ainda podem ser excluídos (por motivo desconhecido, AFAIK);
o atributo NÃO será limpo se um ou mais volumes forem excluídos (a única maneira de limpá-lo com segurança é executando
attributes VOLUME CLEAR readonly
nodiskpart
prompt);novos volumes ainda podem ser criados, mas não podem ser formatados (porque é uma operação de gravação).
Este é o meu ponto de vista simples, mas a razão pela qual os atributos de volume são aplicados a TODOS OS VOLUMES em discos MBR pode ser:
Não há mais lugares disponíveis no setor MBR, porque o sinalizador "Boot Indicator" recusa qualquer valor diferente de 0x80 ou 0x00 (ou a sequência de inicialização ficará louca) e os bytes "Opcionais" localizados no deslocamento 0x1BC (444) são declarados como "reservados " (apesar de alguns bits desse campo de 16 bits poderem ser usados);
O Windows compartilha o mesmo tipo GUID para todos os sistemas de arquivos em uma partição, portanto, definir esse tipo GUID significa "para todos os volumes de dados" (outros tipos GUIDs, como a partição de recuperação, não receberão uma entrada de "volume" do Diskpart, apenas uma "partição" ).
Responder2
Esta informação não pode ser armazenada na partição - é provavelmente um atributo associado ao sistema de arquivos - não é incomum que sistemas de arquivos tenham tal atributo para forçar uma verificação de disco antes de permitir que alterações adicionais sejam feitas no disco se o sistema de arquivos não for em um estado consistente no desligamento.
Responder3
O sinalizador somente leitura não pode ser armazenado no próprio disco. Para obter o status somente leitura do disco, você pode usar o comando Get-Disk do PowerShell. Por exemplo: (Get-Disk -Number 2).IsReadOnly