Como funciona a ferramenta de transferência do Windows

A USMT inclui duas ferramentas que migram configurações e dados: ScanState e LoadState. ScanState coleta informações do computador de origem, enquanto LoadState aplica essas informações ao computador de destino.

  • O processo de ScanState

  • O Processo de LoadState

    Dica

    Para saber mais como a USMT processa as regras e os arquivos XML, veja Conflitos e precedência.

O processo de ScanState

Quando a ferramenta ScanState é executada no computador de origem, ela passa pelo seguinte processo:

  1. Ela analisa e valida os parâmetros de linha de comando, cria o arquivo ScanState.log e depois inicia o processo de registro em log.

  2. Ela coleta informações sobre todos os componentes de migração que precisam ser migrados. Um componente de migração é um grupo lógico de arquivos, chaves do registro e valores. Por exemplo, o conjunto de arquivos, chaves do Registro e valores que armazenam as configurações do Adobe Acrobat está agrupado em um único componente de migração.

    Há três tipos de componentes:

    • Componentes que migram as configurações do sistema operacional

    • Componentes que migram configurações de aplicativos

    • Componentes que migram arquivos de usuários

    A ferramenta ScanState coleta informações sobre as configurações de aplicativos e os componentes de dados de usuários dos arquivos .xml que são especificados na linha de comando.

    No Windows Vista®, Windows 7 e Windows 8, os arquivos de manifesto controlam como as configurações do sistema operacional são migradas. Não é possível modificar esses arquivos. Se você quiser excluir determinadas configurações do sistema operacional, será necessário criar e modificar um arquivo Config.xml.

  3. ScanState determina quais perfis de usuário devem ser migrados. Por padrão, todos os perfis de usuário no computador de origem são migrados. Porém, você pode incluir e excluir usuários usando as Opções de Usuário. O perfil do sistema, que é o perfil "Todos os usuários" em um computador de origem que executa o Windows® XP, ou o perfil Público em um computador de origem que executa os sistemas Windows Vista, Windows 7 e Windows 8, sempre é migrado, e não é possível excluir esses perfis da migração.

  4. Na fase de "Exame", ScanState faz o seguinte para cada perfil de usuário selecionado para migração:

    1. Para cada componente, ScanState verifica o tipo de componente. Se o perfil de usuário atual for o perfil do sistema, e o tipo de componente for “System” ou “UserAndSystem”, o componente será selecionado para o usuário. Caso contrário, esse componente será ignorado. Como alternativa, se o perfil de usuário atual não for o perfil do sistema, e o tipo de componente for “User” ou “UserAndSystem”, o componente será selecionado para o usuário. Caso contrário, esse componente será ignorado.

      Dica

      Deste ponto em diante, ScanState não faz distinção entre componentes que migram configurações do sistema operacional e componentes que migram arquivos de usuários. ScanState processa todos os componentes da mesma maneira.

    2. Cada componente selecionado na etapa anterior continua a ser processado. Qualquer variável específica de perfil (como CSIDL_PERSONAL) é avaliada no contexto do perfil atual. Por exemplo, se o perfil que está sendo processado pertencer a “Usuário1”, CSIDL_PERSONAL será expandida para C:\Usuários\Usuário1\Documentos, partindo do princípio de que os perfis de usuário estejam armazenados no diretório C:\Usuários.

    3. Para cada componente selecionado, ScanState avalia a seção <detects>. Se a condição na seção <detects> for avaliada como False, o componente não continuará a ser processado. Caso contrário, o processamento desse componente continuará.

    4. Para cada componente selecionado, ScanState avalia as seções <rules>. Para cada seção <rules>, se o perfil de usuário atual for o perfil do sistema, e o contexto da seção <rules> for “System” ou “UserAndSystem”, a regra continuará a ser processada. Caso contrário, essa regra será ignorada. Como alternativa, se o perfil de usuário atual não for o perfil do sistema, e o contexto da seção <rules> for “User” ou “UserAndSystem”, a regra continuará a ser processada. Caso contrário, essa regra será ignorada.

    5. ScanState cria uma lista de unidades de migração que precisam ser migradas, processando as várias subseções abaixo da seção <rules>. Cada unidade será coletada se for mencionada em uma subseção <include>, desde que não haja uma regra mais específica para ela em uma subseção <exclude> na mesma seção <rules>. Para obter mais informações sobre precedência nos arquivos .xml, veja Conflitos e precedência.

      Além disso, nenhuma unidade de migração (como um arquivo, uma chave do Registro ou um conjunto de valores do Registro) que estiver em uma seção <UnconditionalExclude> será migrada.

      Dica

      ScanState ignora algumas subseções, como <destinationCleanup> e <locationModify>. Essas seções apenas são avaliadas no computador de destino.

  5. Na fase de "Coleta", ScanState cria uma lista mestra das unidades de migração, combinando as listas que foram criadas para cada perfil de usuário selecionado.

  6. Na fase de "Salvamento", ScanState grava as unidades de migração que foram coletadas na localização do repositório.

    Dica

    ScanState não modifica o computador de origem de nenhuma maneira.

O Processo de LoadState

O processo de LoadState é muito semelhante ao de ScanState. A ferramenta ScanState coleta unidades de migração, como arquivos, chaves do Registro ou valores do Registro, no computador de origem e as salva no repositório. De maneira semelhante, a ferramenta LoadState coleta unidades de migração do repositório e as aplica ao computador de destino.

  1. ScanState analisa e valida os parâmetros de linha de comando, cria o arquivo ScanState.log e depois inicia o processo de registro em log.

  2. LoadState coleta informações sobre os componentes de migração que precisam ser migrados.

    LoadState obtém informações referentes aos componentes de configurações de aplicativos e aos componentes de dados de usuários dos arquivos .xml que são especificados pelo comando LoadState.

    No Windows Vista, Windows 7 e Windows 8, os arquivos de manifesto controlam como as configurações do sistema operacional são migradas. Não é possível modificar esses arquivos. Se você quiser excluir determinadas configurações do sistema operacional, será necessário criar e modificar um arquivo Config.xml.

  3. LoadState determina quais perfis de usuário devem ser migrados. Por padrão, todos os perfis de usuário presentes no computador de origem são migrados. Porém, você pode incluir e excluir usuários usando as Opções de Usuário. O perfil do sistema, que é o perfil "Todos os usuários" em um computador de origem que executa o Windows XP, ou o perfil Público em um computador de origem que executa os sistemas Windows Vista, Windows 7 e Windows 8, sempre é migrado, e não é possível excluir esses perfis da migração.

    • Se você estiver migrando contas de usuário locais e essas contas ainda não existirem no computador de destino, será necessário usar a opção de linha de comando /lac. Se você não especificar a opção /lac, nenhuma conta de usuário local que ainda não esteja presente no computador de destino será migrada.

    • As opções /md e /mu serão processadas para renomear o perfil de usuário no computador de destino se tiverem sido incluídas na ocasião em que o comando LoadState foi especificado.

    • Para cada perfil de usuário selecionado no repositório, LoadState cria um perfil de usuário correspondente no computador de destino. O computador de destino não precisa estar conectado ao domínio para que perfis de usuário de domínio possam ser criados. Se a USMT não conseguir determinar um domínio, ela tentará aplicar as configurações a uma conta local. Para saber mais, veja Identificar usuários.

  4. Na fase de "Exame", LoadState faz o seguinte para cada perfil de usuário:

    1. Para cada componente, LoadState verifica o tipo de componente. Se o perfil de usuário atual for o perfil do sistema, e o tipo de componente for “System” ou “UserAndSystem”, o componente será selecionado para o usuário. Caso contrário, esse componente será ignorado. Como alternativa, se o perfil de usuário atual não for o perfil do sistema, e o tipo de componente for “User” ou “UserAndSystem”, o componente será selecionado para o usuário. Caso contrário, esse componente será ignorado.

      Dica

      Deste ponto em diante, LoadState não faz distinção entre componentes que migram configurações do sistema operacional e componentes que migram arquivos de usuários. LoadState avalia todos os componentes da mesma maneira.

    2. Cada componente selecionado continua a ser processado. Qualquer variável específica de perfil (como CSIDL_PERSONAL) é avaliada no contexto do perfil atual. Por exemplo, se o perfil que está sendo processado pertencer a “Usuário1”, CSIDL_PERSONAL será expandida para C:\Usuários\Usuário1\Documentos (partindo do princípio de que os perfis de usuário estejam armazenados no diretório C:\Usuários).

      Dica

      LoadState ignora a seção <detects> especificada em um componente. Neste ponto, todos os componentes especificados são considerados detectados e são selecionados para migração.

    3. Para cada componente selecionado, LoadState avalia as seções <rules>. Para cada seção <rules>, se o perfil de usuário atual for o perfil do sistema, e o contexto da seção <rules> for “System” ou “UserAndSystem”, a regra continuará a ser processada. Caso contrário, essa regra será ignorada. Como alternativa, se o perfil de usuário atual não for o perfil do sistema, e o contexto da seção <rules> for “User” ou “UserAndSystem”, a regra continuará a ser processada. Caso contrário, essa regra será ignorada.

    4. LoadState cria uma lista mestre de unidades de migração, processando as várias subseções abaixo da seção <rules>. Cada unidade de migração que se encontra em uma subseção <include> é migrada, desde que não haja uma regra mais específica para ela em uma subseção <exclude> na mesma seção <rules>. Para obter mais informações sobre precedência, veja Conflitos e precedência.

    5. LoadState avalia as subseções específicas do computador de destino, por exemplo, as subseções <destinationCleanup> e <locationModify>.

    6. Se o computador de destino estiver executando o Windows Vista ou o Windows 7, as unidades de migração que tiverem sido coletadas por ScanState através dos arquivos de manifesto de versão anterior serão processadas por LoadState através do Manifesto de Componente correspondente para Windows 7. Os arquivos de manifesto de versão anterior não são usados durante LoadState.

      Importante

      É importante especificar os arquivos .xml com o comando LoadState caso você queira que LoadState utilize esses arquivos. Caso contrário, todas as regras específicas do destino, como <locationModify>, nesses arquivos .xml serão ignoradas, mesmo que os mesmos arquivos .xml tenham sido fornecidos na ocasião em que o comando ScanState foi executado.

  5. Na fase de "Aplicação", LoadState grava as unidades de migração que foram coletadas nas várias localizações do computador de destino. Em caso de conflitos e se não houver uma regra <merge> para o objeto, o comportamento padrão do Registro será a origem substituir o destino. O comportamento padrão dos arquivos será a renomeação incremental da origem, por exemplo, NomedoArquivoOriginal(1).ExtensãoOriginal. Algumas configurações, como aquelas para fontes, papel de parede e protetor de tela, apenas terão efeito da próxima vez em que o usuário fizer logon. Por esse motivo, você deve fazer logoff quando as ações do comando LoadState forem concluídas.

Consulte também

Outros Recursos

Sintaxe de linha de comando da USMT (ferramenta de transferência do Windows)