Як визначити версію Windows про мертву установку з Linux, маючи доступ лише до її файлової системи? [дублікат]


11

На моє запитання немає відповіді, оскільки всі вони є специфічними для Windows, і я хочу вирішити Linux.

У мене встановлено мертві вікна в одній із моїх секцій. У неї більше немає даних про завантаження. Практично це лише дамп файлової системи. Але я маю доступ для читання будь-яких файлів у його файловій системі.

Як я міг визначити, яка це версія Windows? В ідеальному випадку я думаю, що має бути налаштування конфігурації або будь-який файл, який є унікальним для різних версій Windows. Наприклад, у Linux-дистрибутивах на базі Debian я міг просто читати /etc/debian_version.

Як я можу зробити те ж саме на Win?

Розширення №1: На жаль, у мене є доступ лише до скриньки Linux, щоб дістатися до її жорсткого диска. Отже, рішення, що вимагають Windows (наприклад, копання у версії ntoskrnl.exeабо перевірка деяких налаштувань реєстру), в моєму випадку не під силу.


4
На жаль, це запитання не містило потрібної мені відповіді. Я знайшов рішення, що C:\Windows\System32\License.rtfмістить версію Windows.
peterh

Це все ще повторне питання.
Моав

1
@Moab Моє запитання є специфічним для Linux, тоді як на інші відповіді є лише відповіді на Windows.
петерх

3
Я б хотів, щоб це запитання було повторено, адже інше питання вимагає встановлення робочої Windows, тоді як це стосується Linux. Я виявив , що це відповідає на питання: strings ./Windows/System32/ntoskrnl.exe 2>/dev/null | grep amd64. Для мене у друкованому вигляді 9600.18258.amd64fre.winblue_ltsb.160303-0600, а googling for winblue вказує на те, що це кодове ім’я для Windows 8.1.
Девід Форе

2
Шкода, що це позначається як дублікат. Щоб отримати інформацію з Linux, це можна зробити за допомогою hivexget. Я додав подробиці до цього іншого питання: superuser.com/a/1383325/53547
mivk

Відповіді:


4

Простий. Подивіться на версію<drive>:\Windows\System32\ntoskrnl.exe

У випадку з XP шукайте <drive>:\boot.ini

Якщо це Vista +, ви можете шукати <drive>:\Bootпапку.

Для Windows 7+ ви можете шукати прихований System Reservedрозділ у диспетчері пристроїв .

Якщо license.rtfу вашій C:\Windows\System32папці є названий файл , він також містить вашу поточну версію Windows.


Велике спасибі! Це Win7 +. Проблема полягає в тому, що у мене більше немає системного резерву. У мене тільки нормальний С:. Як я міг бачити версію ntoskrnl.exe?
peterh

Нарешті я вирішила ліцензію.rtf, але інші ваші рішення також були корисні. Велике спасибі!
peterh

@peterh для подальшого ознайомлення, правою кнопкою миші та деталями. Ви побачите інформацію на кшталт (у моєму випадку:NT OS & Kernel. Version: 6.1.7601
td512,

Для довідки: Microsoft Windows XP [Version 5.1.2600](при запуску cmd.exe)
Hannu

Помилка ... ^ - це XP Pro "2002" SP 3 - 32bit, Microsoft Windows [Version 6.3.9600]це Windows 8.1 Pro (64 біт)
Hannu

1

Ви також можете передавати потік

strings cmd.exe | find "Version"може також працювати. Більшість файлів мають версію Windows на своєму аркуші властивостей, яка видно в необробленому бінарному файлі біля її кінця. Однією з них є версія Windows. Однак він знаходиться в унікоді.


1
1) find "Version"це річ з Windows, у мене є Linux і використовую grep. 2) Він давав лише криптичні дані XML, єдиною інформацією про версію була така, як "5.1.0.0", яка може бути між будь-яким winxp та win7. Але ваша відповідь може бути корисною для гуглерів майбутнього, тому ось +1.
peterh

Ви можете завантажити його в якийсь текстовий редактор чи переглядач, і подивитись там, grep -i "Version"буде робити те саме, що і Windows "знайти".
wendy.krieger

find /i "search-data"== grep -i "search-data".
Ханну
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.