Миграция состояния пользователя SCCM - данные этого пользователя исчезли?

8

Короче говоря, мы находимся в хвосте нашего проекта по переходу с XP на Windows 7 и наконец-то получили машину VIP для миграции. Поскольку машина почти такая же старая, как и ОС на ней, этот конкретный пользователь был «благословлен» новым оборудованием, в дополнение к новой ОС.

Проблема в том, что у нас был стажер, который делал эту конкретную миграцию, и он вроде все испортил. Шутки в сторону. Короче говоря, общий процесс миграции пользовательской среды заключается в создании ассоциации между старым и новым компьютерами в SCCM, выполнении последовательности задач захвата на старом компьютере и последующем выполнении последовательности восстановления на новом компьютере. В этом случае последовательность задач захвата выполнялась до того, как компьютеры были связаны, поэтому SCCM отказывается выполнять восстановление, и старый компьютер был переформатирован ... по какой-то причине ... до того, как это было обнаружено.

Теперь, когда мы пытаемся перенести пользователя путем «восстановления» того, USMT.migчто было перехвачено и загружено на сервер SCCM, мы получаем ошибку ниже, после Request State Storeдействия.

введите описание изображения здесь

 Task Sequence: USMT - Restore State has failed with the error code  (0x00004005). 
 For more information, contact your system administrator or helpdesk operator.

Соответствующие записи в журнале smsts[date-time].logкажутся:

<![LOG[Requesting SMP Root share config information from http://[Our SCCM server]:0]LOG]!><time="15:45:28.823+240" date="06-13-2014" component="OSDSMPClient" context="" type="1" thread="5136" file="smpclient.cpp:2348">
<![LOG[Received 4027 byte response.]LOG]!><time="15:45:28.892+240" date="06-13-2014" component="OSDSMPClient" context="" type="0" thread="5136" file="smpclient.cpp:2363">
<![LOG[Adding \\[Our SCCM server]\SMPSTORED_378B856C$ to list ]LOG]!><time="15:45:28.912+240" date="06-13-2014" component="OSDSMPClient" context="" type="1" thread="5136" file="smpclient.cpp:2403">
<![LOG[Successfully connected to "\\[Our SCCM server]\SMPSTORED_378B856C$"]LOG]!><time="15:45:28.919+240" date="06-13-2014" component="OSDSMPClient" context="" type="1" thread="5136" file="tsconnection.cpp:287">
<![LOG[Sending SMP request to http://[Our SCCM server]:0.]LOG]!><time="15:45:28.950+240" date="06-13-2014" component="OSDSMPClient" context="" type="1" thread="5136" file="smpclient.cpp:1854">
<![LOG[Received 4899 byte response.]LOG]!><time="15:45:29.045+240" date="06-13-2014" component="OSDSMPClient" context="" type="0" thread="5136" file="smpclient.cpp:1861">
<![LOG[SMP request to "http://[Our SCCM server]" failed with error: E_SMPERROR_MIGRATIONID_NOT_FOUND (204)]LOG]!><time="15:45:29.065+240" date="06-13-2014" component="OSDSMPClient" context="" type="2" thread="5136" file="smpclient.cpp:135">
<![LOG[Request to SMP 'http://[Our SCCM server]' failed with error (Code 0x80004005). Trying next SMP.]LOG]!><time="15:45:29.065+240" date="06-13-2014" component="OSDSMPClient" context="" type="2" thread="5136" file="smpclient.cpp:1601">
<![LOG[Failed to find an SMP that can serve request after trying 4 attempts.]LOG]!><time="15:45:29.065+240" date="06-13-2014" component="OSDSMPClient" context="" type="3" thread="5136" file="smpclient.cpp:1644">
<![LOG[ExecuteRestoreRequestToSMP failed (0x80004005).]LOG]!><time="15:45:29.065+240" date="06-13-2014" component="OSDSMPClient" context="" type="3" thread="5136" file="smpclient.cpp:2862">
<![LOG[ExecuteRestoreRequest failed (0x80004005).]LOG]!><time="15:45:29.065+240" date="06-13-2014" component="OSDSMPClient" context="" type="3" thread="5136" file="smpclient.cpp:2926">
<![LOG[OSDSMPClient finished: 0x00004005]LOG]!><time="15:45:29.065+240" date="06-13-2014" component="OSDSMPClient" context="" type="1" thread="5136" file="main.cpp:124">
<![LOG[Process completed with exit code 16389]LOG]!><time="15:45:29.077+240" date="06-13-2014" component="TSManager" context="" type="1" thread="5744" file="commandline.cpp:1123">
<![LOG[!--------------------------------------------------------------------------------------------!]LOG]!><time="15:45:29.078+240" date="06-13-2014" component="TSManager" context="" type="1" thread="5744" file="instruction.cxx:804">
<![LOG[Failed to run the action: Request State Store. 
Unknown error (Error: 00004005; Source: Unknown)]LOG]!><time="15:45:29.082+240" date="06-13-2014" component="TSManager" context="" type="3" thread="5744" file="instruction.cxx:895">
<![LOG[Set authenticator in transport]LOG]!><time="15:45:29.088+240" date="06-13-2014" component="TSManager" context="" type="0" thread="5744" file="libsmsmessaging.cpp:7734">
<![LOG[Set a global environment variable _SMSTSLastActionRetCode=16389]LOG]!><time="15:45:29.350+240" date="06-13-2014" component="TSManager" context="" type="0" thread="5744" file="executionenv.cxx:668">
<![LOG[Set a global environment variable _SMSTSLastActionSucceeded=false]LOG]!><time="15:45:29.352+240" date="06-13-2014" component="TSManager" context="" type="0" thread="5744" file="executionenv.cxx:668">
<![LOG[Clear local default environment]LOG]!><time="15:45:29.353+240" date="06-13-2014" component="TSManager" context="" type="0" thread="5744" file="executionenv.cxx:807">
<![LOG[Failed to run the action: Request State Store. Execution has been aborted]LOG]!><time="15:45:29.365+240" date="06-13-2014" component="TSManager" context="" type="3" thread="5744" file="instruction.cxx:983">
<![LOG[Set authenticator in transport]LOG]!><time="15:45:29.373+240" date="06-13-2014" component="TSManager" context="" type="0" thread="5744" file="libsmsmessaging.cpp:7734">
<![LOG[Failed to run the last action: Request State Store. Execution of task sequence failed.
Unknown error (Error: 00004005; Source: Unknown)]LOG]!><time="15:45:29.700+240" date="06-13-2014" component="TSManager" context="" type="3" thread="5744" file="engine.cxx:213">
<![LOG[Set authenticator in transport]LOG]!><time="15:45:29.708+240" date="06-13-2014" component="TSManager" context="" type="0" thread="5744" file="libsmsmessaging.cpp:7734">
<![LOG[Task Sequence Engine failed! Code: enExecutionFail]LOG]!><time="15:45:33.323+240" date="06-13-2014" component="TSManager" context="" type="3" thread="5744" file="tsmanager.cpp:923">

Попытки расшифровать USMT.migфайл с помощью ключа восстановления, найденного в Computer Association->, Recovery Informationочевидно, не работают, и с переформатированием исходного компьютера я быстро чувствую, что любой след ключа, необходимый для расшифровки этого файла, может быть пропущен.

введите описание изображения здесь

Так что теперь у нас есть прекрасный USMT.migфайл на нашем сервере SCCM, и нет способа восстановить его или расшифровать вручную (по крайней мере, насколько я могу судить).

Так как это придумали, это было сделано с помощью графического интерфейса, так что мы не можем вернуться назад и посмотреть на команду CLI восстановить оттуда, и я уверен , что этот .migфайл будет зашифрован - MigViewer предупреждает , что он зашифрован, и попытки В любом случае, извлечение файлов приводит к получению 0-байтовых файлов с (corrupt)добавлением к имени файла.

Нам не повезло, или кто-то знает способ вывести нас из-под контроля?

HopelessN00b
источник

Ответы:

2

Данные пользователя мертвы и ушли, да.

Служба поддержки Microsoft подтвердила, что оригинальный, автоматически сгенерированный ключ шифрования не может быть извлечен, и его слишком долго взломать.

HopelessN00b
источник
2

Попытки расшифровать файл USMT.mig с помощью ключа восстановления, найденного в Computer Association -> Информация о восстановлении, очевидно, не работают, и после переформатирования исходного компьютера я быстро чувствую, что любой след ключа, необходимый для расшифровать этот файл может быть ушел.

Поскольку сканирование было выполнено до создания этой параллельной компьютерной связи, SCCM должен был автоматически создать локальную компьютерную ассоциацию. Если эта связь все еще существует, вы сможете открыть файл .MIG с помощью программы USMTUtils.exe (ссылка: Как извлечь файлы из сжатого хранилища миграции USMT ) с помощью следующей команды:

usmtutils /extract <Path to .MIG file> /decrypt /key:<Recovery key from SCCM console> <Path to Extract to>
mbaldry
источник
Хорошая мысль, но, конечно, этой ассоциации больше не было. +1 за то, что сработало бы, если бы мы не стреляли себе в ногу целую кучу раз, прежде чем меня попросили остановиться.
HopelessN00b
2

На самом деле, вы можете использовать сгенерированный ключ для расшифровки файла MIG. Вы должны вставить ключ в текстовый файл и указать командной строке искать ключ там, а не вставлять его (так как это делает командную строку слишком длинной).

Брайан
источник
0

У вас все еще есть доступ к старой машине? Что вы использовали для его переформатирования и какие настройки - просто быстрое форматирование или правильное стирание с несколькими циклами записи? Если первый, вы можете получить старый ключ с диска, если вы знаете, где искать. Существует множество бесплатных и платных утилит, позволяющих вам находить файлы на недавно отформатированных дисках - если старый файл фактически не был перезаписан, у вас есть шанс.

Ян Бэмфорт
источник