Migrazione dello stato utente di SCCM: i dati di questo utente sono spariti?


8

Per farla breve (ish), siamo alla fine del nostro progetto di migrazione da XP a Windows 7 e finalmente abbiamo ottenuto la migrazione di alcune macchine VIP. Poiché la macchina è vecchia quasi quanto il sistema operativo, questo particolare utente è stato "benedetto" con un nuovo hardware, oltre a un nuovo sistema operativo.

Il problema è che abbiamo fatto fare al tirocinante questa particolare migrazione e in qualche modo l'ha incasinata. Sul serio. In breve, il processo generale per una migrazione dello stato utente consiste nel creare un'associazione tra il vecchio e il nuovo computer in SCCM, eseguire una sequenza di attività di acquisizione sul vecchio computer e quindi eseguire una sequenza di ripristino sul nuovo computer. In questo caso, la sequenza di attività di acquisizione è stata eseguita prima che i computer fossero associati, quindi SCCM si rifiuta di eseguire il ripristino e la vecchia macchina è stata riformattata ... per qualche motivo ... prima che questo venisse scoperto.

Ora, quando proviamo a migrare l'utente "ripristinando" USMT.migciò che è stato acquisito e caricato sul server SCCM, otteniamo l'errore di seguito, a seguito Request State Storedell'azione.

inserisci qui la descrizione dell'immagine

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

Le voci di registro rilevanti dal smsts[date-time].logsembrano essere:

<![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">

I tentativi di decrittografare il USMT.migfile con la chiave di ripristino trovata in Computer Association-> Recovery Informationovviamente non funzionano e, con il computer originale in fase di formattazione, sto rapidamente avvertendo la sensazione che qualsiasi traccia della chiave necessaria per decrittografare questo file potrebbe essere sparita.

inserisci qui la descrizione dell'immagine

Quindi ora abbiamo un USMT.migfile delizioso sul nostro server SCCM e non c'è modo di ripristinarlo o decodificarlo manualmente (almeno per quanto ne so).

Da quando è arrivato, questo è stato fatto tramite una GUI, quindi non possiamo tornare indietro e guardare il comando CLI per recuperare da lì, e sono abbastanza sicuro che questo .migfile sia crittografato - MigViewer avverte che è crittografato e tenta di estrarre i file comunque risulta in file a 0 byte con l' (corrupt)aggiunta al nome del file.

Siamo sfortunati o qualcuno conosce un modo per farci uscire dal nostro vincolo?

Risposte:


2

I dati dell'utente sono morti e spariti, sì.

Il supporto Microsoft ha confermato che la chiave di crittografia originale generata automaticamente non è recuperabile ed è troppo lunga per essere violata.


2

Tentativi di decrittografare il file USMT.mig con la chiave di ripristino trovata in Computer Association -> Le informazioni di ripristino ovviamente non funzionano e, con il computer originale in fase di riformattazione, ho rapidamente la sensazione che qualsiasi traccia della chiave fosse necessaria decifrare questo file potrebbe non essere più disponibile.

Poiché la scansione è stata eseguita prima della creazione di questa associazione di computer side-by-side, SCCM avrebbe dovuto creare automaticamente un'associazione di computer sul posto. Se tale associazione è ancora attiva, dovresti riuscire ad aprire il file .MIG usando il programma USMTUtils.exe (riferimento: come estrarre i file da un archivio di migrazione USMT compresso ), usando il comando seguente:

usmtutils /extract <Path to .MIG file> /decrypt /key:<Recovery key from SCCM console> <Path to Extract to>

Buona idea, ma ovviamente, quell'associazione non era più presente. +1 per qualcosa che avrebbe funzionato se non ci fossimo sparati al piede un sacco di volte prima che mi venisse chiesto di fermarmi.
HopelessN00b,

2

In realtà, è possibile utilizzare la chiave generata per decrittografare il file mig. Devi incollare la chiave in un file di testo e dire alla riga di comando di cercare lì la chiave anziché incollarla (poiché rende la stringa di comando troppo lunga).


0

Hai ancora accesso alla vecchia macchina? Cosa hai usato per riformattarlo e quali impostazioni - solo un formato rapido o una corretta cancellazione del ciclo multi-scrittura? Se il primo, potresti essere in grado di recuperare la vecchia chiave dall'unità, supponendo che tu sappia dove cercare. Esistono molte utility gratuite ea pagamento per permetterti di trovare file su unità formattate di recente - fintanto che il vecchio file non è stato effettivamente sovrascritto, hai una possibilità.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.