Como identificar a versão do Windows de uma instalação morta do Linux, tendo acesso apenas ao seu sistema de arquivos? [duplicado]

11

Minha pergunta não tem uma resposta lá, porque todos eles são específicos do Windows e eu quero uma solução Linux.

Eu tenho um windows morto instalado em uma das minhas partições. Ele não possui mais dados de inicialização. Praticamente, é apenas um despejo de sistema de arquivos. Mas tenho acesso para ler qualquer arquivo em seu sistema de arquivos.

Como eu pude identificar qual versão do Windows é? No caso ideal, acho que deve haver alguma configuração ou qualquer arquivo que seja exclusivo para as diferentes versões do Windows. Por exemplo, nas distribuições Linux baseadas no Debian, eu simplesmente podia ler /etc/debian_version.

Como eu poderia fazer o mesmo em uma vitória?

Extensão nº 1: Infelizmente, tenho acesso apenas a uma caixa Linux para acessar seu disco rígido. Portanto, soluções que exigem um Windows (por exemplo, cavando a versão ntoskrnl.exeou verificando algumas configurações do registro) não são viáveis ​​no meu caso.

peterh - Restabelecer Monica
fonte
4
Infelizmente, esta pergunta não contém a resposta que eu preciso. A solução que encontrei foi que C:\Windows\System32\License.rtfcontém a versão do Windows.
peterh - Restabelece Monica
Ainda é uma pergunta duplicada.
Moab
1
@Moab Minha pergunta é específica do Linux, enquanto a outra possui apenas respostas específicas do Windows.
peterh - Restabelece Monica
3
Eu gostaria que essa pergunta fosse desduplicada, na verdade a outra pergunta requer uma instalação funcional do Windows, enquanto esta é sobre Linux. Descobri que isso responde à pergunta: strings ./Windows/System32/ntoskrnl.exe 2>/dev/null | grep amd64. Para mim, impresso 9600.18258.amd64fre.winblue_ltsb.160303-0600e pesquisar no winblue indica que esse era o nome de código do Windows 8.1.
David Faure
2
Pena que isso esteja marcado como duplicado. Para obter as informações do Linux, isso pode ser feito hivexget.
Adicionei

Respostas:

4

Simples. Veja a versão do<drive>:\Windows\System32\ntoskrnl.exe

No caso do XP, procure <drive>:\boot.ini

Se for o Vista +, você pode procurar a <drive>:\Bootpasta.

Para o Windows 7+, você pode procurar no gerenciador de dispositivos a System Reservedpartição oculta .

Se houver um arquivo nomeado license.rtfem sua C:\Windows\System32pasta, ele também conterá sua versão atual do Windows.

td512
fonte
Muito obrigado! É o Win7 +. O problema é que não tenho mais a partição "Sistema Reservado". Eu tenho apenas o C :. normal Como eu pude ver a versão do ntoskrnl.exe?
peterh - Restabelece Monica
Finalmente resolvi pelo license.rtf, mas suas outras soluções também foram úteis. Muito obrigado!
peterh - Restabelece Monica
@ Peterh para referência futura, clique com o botão direito do mouse em detalhes. Você verá informações como (no meu caso:NT OS & Kernel. Version: 6.1.7601
td512
Para ref: Microsoft Windows XP [Version 5.1.2600](ao iniciar o cmd.exe)
Hannu
Err ... ^ - que é XP Pro "2002" SP 3 - 32 bits, Microsoft Windows [Version 6.3.9600]é o Windows 8.1 Pro (64 bit)
Hannu
1

Você também pode transmitir

strings cmd.exe | find "Version"pode funcionar também. A maioria dos arquivos tem a versão do windows em sua folha de propriedades, que é visível no binário bruto próximo ao final. Uma delas é a versão do Windows. É em unicode embora.

wendy.krieger
fonte
1
1) find "Version"é uma coisa do windows, tenho linux e uso grep. 2) Ele forneceu apenas dados xml enigmáticos, a única informação da versão era algo como "5.1.0.0", que pode ser qualquer coisa entre winxp e win7. Mas sua resposta pode ser útil para os googlers do futuro, então aqui está um +1.
peterh - Restabelece Monica
Você pode carregá-lo em algum tipo de editor ou visualizador de texto e, lá, grep -i "Version"ele fará o mesmo que o Windows 'find'.
Wendy.krieger
find /i "search-data"== grep -i "search-data".
Hannu