Как определить версию 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.
Петер - Восстановить Монику
Это все еще двойной вопрос.
Моав
1
@Moab Мой вопрос касается Linux, тогда как у другого есть только ответы для Windows.
Петер - Восстановить Монику
3
Я бы хотел, чтобы этот вопрос не дублировался, ведь другой вопрос требует работающей установки Windows, а этот вопрос касается Linux. Я обнаружил, что это отвечает на вопрос strings ./Windows/System32/ntoskrnl.exe 2>/dev/null | grep amd64. Для меня в напечатанном 9600.18258.amd64fre.winblue_ltsb.160303-0600, и поиск в Google для 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.

td512
источник
Большое спасибо! Это Win7 +. Проблема в том, что у меня больше нет раздела «Зарезервировано системой». У меня только нормальный С :. Как я могу увидеть версию ntoskrnl.exe?
Петер - Восстановить Монику
Я наконец решил с помощью license.rtf, но другие ваши решения также были полезны. Большое спасибо!
Петер - Восстановить Монику
@peterh для дальнейшего использования, щелчок правой кнопкой мыши, подробности. Вы увидите информацию как (в моем случае:NT OS & Kernel. Version: 6.1.7601
td512
Для ссылки: Microsoft Windows XP [Version 5.1.2600](при запуске cmd.exe)
Ханну
Ошибка ... ^ - это XP Pro "2002" SP 3 - 32 бита, Microsoft Windows [Version 6.3.9600]это Windows 8.1 Pro (64 бита)
Hannu
1

Вы могли бы также течь

strings cmd.exe | find "Version"может работать тоже. Большинство файлов имеют версию окон в листе свойств, который виден в необработанном двоичном файле в конце его. Одним из них является версия для Windows. Это в Unicode, хотя.

wendy.krieger
источник
1
1) find "Version"это вещь Windows, у меня есть Linux и использовать grep. 2) Это дало только загадочные данные XML, единственной информацией о версии было что-то вроде «5.1.0.0», которое может быть любым между winxp и win7. Но ваш ответ может быть полезен для гуглеров будущего, так что здесь +1.
Петер - Восстановить Монику
Вы можете загрузить его в какой-нибудь текстовый редактор или вьюер и посмотреть, что там grep -i "Version"будет делать то же самое, что и окна «найти».
wendy.krieger
find /i "search-data"== grep -i "search-data".
Ханну