Como alterar o tipo de partição GPT no Windows?

2

O formato GPT introduz muito mais lugar aos metadados.
Para definir um tipo de partição no diskpart, use um:

DISKPART> create partition msr

ou

DISKPART> create partition efi

ou

DISKPART> create partition primary

Mas como alterar o tipo após a criação da partição, como alterar o primário para efi?

    
por user2284570 08.01.2016 / 22:42

2 respostas

3

O DiskPart pode realmente fazer isso. Selecione o disco e a partição apropriados e use o comando set id . Por exemplo, isso altera a partição selecionada em uma partição EFI:

set id=c12a7328-f81f-11d2-ba4b-00a0c93ec93b

Usando uma combinação de o artigo set id TechNet e detail partition , descobri esses valores possíveis comuns:

  • Recuperação: de94bba4-06d1-4d40-a16a-bfd50179d6ac
  • Normal: ebd0a0a2-b9e5-4433-87c0-68b6b72699c7
  • EFI: c12a7328-f81f-11d2-ba4b-00a0c93ec93b
  • Reservado: e3c9e316-0b5c-4db8-817d-f92df00215ae

Provavelmente, é uma boa idéia consultar os atributos da partição para uma partição de um determinado tipo (veja um computador saudável) para que os sinalizadores de conjunto façam sentido. Como você descobriu, gpt attributes define flags; detail partition exibe-os.

Zona de perigo: definindo o tipo reservado

A documentação do TechNet diz que o DiskPart não permitirá que você crie uma partição em uma Microsoft Reserved. Essa afirmação é verdadeira, então você pode querer usar uma ferramenta diferente. Se você realmente quiser usar o DiskPart, você terá que bater a infraestrutura de gerenciamento de disco do Windows para que ele não saiba quais tipos não são permitidos. Perigo! Eu não testei as etapas a seguir em um disco inicializável; eles estão aqui apenas para fins de entretenimento. Faça-os por sua conta e risco, de preferência em um computador descartável ou VM.

Quebre um editor hexadecimal - gosto de XVI32 - e abra uma cópia de vdsbas.dll (no System32). Esse é o módulo que atende a maioria das operações relacionadas ao disco, e é o responsável pelo policiamento dos tipos de partição. O GUID do tipo Microsoft Reserved inicia no byte 0x21CD8 para a versão que vem com o Windows 10 x64; você deve procurar pela string hexadecimal 16 E3 C9 E3 (0xE3C9E316 em little-endian). Virando um pouquinho, a cópia falhada não saberá que você está configurando um tipo especial. Você precisará alterar as configurações de segurança na cópia original de vdsbas.dll antes que o Windows permita substituí-lo. Você também precisará certificar-se de que o serviço de disco virtual não esteja em execução (parar em Serviços é bom), caso contrário, o arquivo estará em uso.

Observe que essas partições reservadas não devem ser associadas a um volume. Eu não sei se o DiskPart tem uma maneira de manter uma partição dessa maneira.

Provavelmente, há uma boa razão para a Microsoft não permitir que você defina esse tipo, portanto, faça um backup de qualquer coisa importante na unidade, caso decida seguir esse caminho. Se você precisar de tal partição, provavelmente é melhor reinstalar / reparar o Windows da mídia oficial.

    
por 09.01.2016 / 00:44
3

Parece haver um pouco de confusão, ou pelo menos uso impreciso da terminologia, nesta questão e sua discussão. Assim, pode ser útil revisar as estruturas de dados da GPT, descritas no artigo da Wikipedia sobre a GPT. (The EFI spec é mais autoritativo e está disponível gratuitamente, mas requer a aceitação de termos de licença para download. Consulte aqui para obtê-lo.) Códigos de tipo GPT são na verdade valores GUID - consulte a tabela GUIDs do tipo de partição no artigo da Wikipédia para obter uma lista de valores conhecidos . Existem também atributos GPT e nomes de partições; Estas são três estruturas de dados totalmente independentes (embora muitas ferramentas de particionamento definam nomes de partição com base no código de tipo). Não conheço nenhum tipo de partição GPT chamado "primário". Suspeito que a referência a esse tipo seja resultado de confusão com partições do MBR, que podem ser primárias, estendidas ou lógicas; mas esses conceitos não têm sentido na GPT. Algumas ferramentas continuam a aplicar o termo "primário" em referência a todas as partições GPT, presumivelmente porque as ferramentas foram escritas originalmente para discos MBR e, portanto, requerem uma identificação lógica / primária / estendida para todas as partições. / p>

Códigos de tipo, em MBR e GPT, identificam o uso pretendido da partição. Windows, OS X e alguns outros sistemas operacionais usam códigos de tipo como uma espécie de "filtro" - esses SOs ignoram partições que não são de certos tipos, para que você possa configurar (digamos) um sistema de arquivos Linux em uma partição com um Código de tipo específico do Linux e o Windows não tentará formatá-lo. Há também vários códigos de tipos específicos do Windows (consulte a tabela da Wikipedia) e alguns que são sistemas operacionais cruzados (como o código para a partição de sistema EFI ou ESP).

Atributos são menos usados (códigos de tipo são obrigatórios), mas podem modificar a forma como o SO ou firmware trata a partição. Um atributo "oculto", por exemplo, diz ao sistema operacional para ignorar a partição. Isso pode ou não ser honrado, dependendo do sistema operacional. Atributos podem variar de um tipo de partição para outro.

Nomes de partições existem principalmente para consumo humano, para que você possa identificar partições. Eu não o tenho investigado extensivamente, mas acho que o OS X é esquisito sobre o nome atribuído à sua partição Recovery HD ; nos meus (breves) testes, ele se desfez quando essa partição foi renomeada. Não encontrei nenhum outro caso de sistemas operacionais ou utilitários que se importem com nomes de partições, embora eles sejam frequentemente atribuídos a descrições associadas ao código de tipo quando partições são criadas.

Não estou muito familiarizado com a ferramenta diskpart da Microsoft, mas, como Ben N especifica em sua resposta, é possível usá-la para definir códigos de tipo para valores GUID arbitrários. Outras ferramentas também podem fazer isso ou podem definir códigos de tipos de alguma outra forma. O meu próprio fdisk GPT ( gdisk ), por exemplo, usa valores hexadecimais de quatro dígitos (dois bytes) como "atalhos" "para valores GUID conhecidos; ou você pode inserir os valores da GPT como "brutos". Consulte a seção gdisk Walkthrough da documentação para obter informações sobre como fazer isso. A biblioteca libparted (que é usada por várias ferramentas do Linux) define códigos de tipo baseados no sistema de arquivos que você diz que será usado em uma partição; mas você pode alterá-los de forma limitada definindo "flags", alguns dos quais correspondem a códigos de tipo e alguns a atributos. Esta é uma combinação bastante confusa de duas estruturas de dados subjacentes independentes.

    
por 10.01.2016 / 18:45