USMT 작동 방법

USMT는 설정과 데이터를 마이그레이션하는 ScanState 및 LoadState라는 두 도구를 포함합니다. ScanState는 원본 컴퓨터에서 정보를 수집하고 LoadState는 해당 정보를 대상 컴퓨터에 적용합니다.

  • ScanState 프로세스

  • LoadState 프로세스

    참고

    USMT에서 규칙 및 XML 파일을 처리하는 방법은 충돌 및 우선 순위를 참조하세요.

ScanState 프로세스

원본 컴퓨터에서 ScanState 도구를 실행하면 다음 프로세스가 진행됩니다.

  1. 명령줄 매개 변수를 구문 분석 및 유효성 검사하고, ScanState.log 파일을 만든 다음 로깅을 시작합니다.

  2. 마이그레이션해야 하는 모든 마이그레이션 구성 요소에 대한 정보를 수집합니다. 마이그레이션 구성 요소는 파일, 레지스트리 키 및 값의 논리적 그룹입니다. 예를 들어 Adobe Acrobat 설정을 저장하는 파일, 레지스트리 키 및 값 집합은 단일 마이그레이션 구성 요소로 나뉩니다.

    다음과 같은 세 가지 유형의 구성 요소가 있습니다.

    • 운영 체제 설정을 마이그레이션하는 구성 요소

    • 응용 프로그램 설정을 마이그레이션하는 구성 요소

    • 사용자 파일을 마이그레이션하는 구성 요소

    ScanState 도구는 명령줄에 지정된 .xml 파일에서 응용 프로그램 설정 및 사용자 데이터 구성 요소에 대한 정보를 수집합니다.

    Windows Vista(R), Windows 7 및 Windows 8에서 매니페스트 파일은 운영 체제 설정을 마이그레이션하는 방법을 제어합니다. 이러한 파일은 수정할 수 없습니다. 특정 운영 체제 설정을 제외하려면 Config.xml 파일을 만들고 수정해야 합니다.

  3. ScanState는 마이그레이션해야 하는 사용자 프로필을 결정합니다. 기본적으로 원본 컴퓨터에 있는 모든 사용자 프로필이 마이그레이션됩니다. 사용자 옵션을 사용하여 사용자를 포함하거나 제외할 수 있습니다. 시스템 프로필 즉, Windows(R) XP를 실행 중인 원본 컴퓨터의 "모든 사용자" 프로필과 Windows Vista, Windows 7 및 Windows 8을 실행 중인 원본 컴퓨터의 공용 프로필은 항상 마이그레이션되며, 마이그레이션에서 제외할 수 없습니다.

  4. "검색" 단계에서 ScanState는 마이그레이션하도록 선택된 각 사용자 프로필에 대해 다음을 수행합니다.

    1. 각 구성 요소에 대해 ScanState는 구성 요소의 유형을 확인합니다. 현재 사용자 프로필이 시스템 프로필이고 구성 요소 유형이 "System" 또는 "UserAndSystem"인 경우 이 구성 요소는 이 사용자에 대해 선택됩니다. 그렇지 않으면 구성 요소가 무시됩니다. 또는 현재 사용자 프로필이 시스템 프로필이 아니고 구성 요소 유형이 "User" 또는 "UserAndSystem"인 경우 이 구성 요소는 이 사용자에 대해 선택됩니다. 그렇지 않으면 이 구성 요소는 무시됩니다.

      참고

      이제부터 ScanState는 운영 체제 설정을 마이그레이션하는 구성 요소, 응용 프로그램 설정을 마이그레이션하는 구성 요소 및 사용자 파일을 마이그레이션하는 구성 요소를 구분하지 않습니다. ScanState는 모든 구성 요소를 동일한 방법으로 처리합니다.

    2. 이전 단계에서 선택된 각 구성 요소가 계속 처리됩니다. 모든 프로필별 변수(예: CSIDL_PERSONAL)는 현재 프로필의 컨텍스트에서 평가됩니다. 예를 들어 사용자 프로필이 C:\Users 디렉터리에 저장된다고 가정할 때 처리 중인 프로필이 "User1"에 속하면 CSIDL_PERSONAL은 C:\Users\User1\Documents로 확장됩니다.

    3. 각 선택된 구성 요소에 대해 ScanState는 <detects> 섹션을 평가합니다. <detects> 섹션의 조건이 false로 평가되면 구성 요소가 더 이상 처리되지 않습니다. 그렇지 않으면 이 구성 요소가 계속 처리됩니다.

    4. 각 선택된 구성 요소에 대해 ScanState는 <rules> 섹션을 평가합니다. 각 <rules> 섹션에 대해 현재 사용자 프로필이 시스템 프로필이고 <rules> 섹션의 컨텍스트가 "System" 또는 "UserAndSystem"이면 규칙이 계속 처리됩니다. 그렇지 않으면 이 규칙은 무시됩니다. 또는 현재 사용자 프로필이 시스템 프로필이 아니고 <rules> 섹션의 컨텍스트가 "User" 또는 "UserAndSystem"이면 규칙이 계속 처리됩니다. 그렇지 않으면 이 규칙은 무시됩니다.

    5. ScanState는 이 <rules> 섹션의 다양한 하위 섹션을 처리하여 마이그레이션해야 하는 마이그레이션 단위 목록을 만듭니다. <include> 하위 섹션에 명시되어 있는 각 단위는 동일한 <rules> 섹션의 <exclude> 하위 섹션에 해당하는 특정 규칙이 없는 한 수집됩니다. .xml 파일의 우선 순위에 대한 자세한 내용은 충돌 및 우선 순위를 참조하세요.

      또한 <UnconditionalExclude> 섹션에 있는 모든 마이그레이션 단위(예: 파일, 레지스트리 키, 레지스트리 키 집합)는 마이그레이션되지 않습니다.

      참고

      ScanState는 <destinationCleanup> 및 <locationModify>와 같은 일부 하위 섹션을 무시합니다. 이러한 섹션은 대상 컴퓨터에서만 평가됩니다.

  5. "수집" 단계에서 ScanState는 각 선택된 사용자 프로필에 대해 만든 목록을 결합하여 마스터 마이그레이션 단위 목록을 만듭니다.

  6. "저장" 단계에서 ScanState는 수집된 마이그레이션 단위를 저장소 위치에 씁니다.

    참고

    ScanState는 어떠한 경우에도 원본 컴퓨터를 수정하지 않습니다.

LoadState 프로세스

LoadState 프로세스는 ScanState 프로세스와 매우 비슷합니다. ScanState 도구는 원본 컴퓨터에서 파일, 레지스트리 키, 레지스트리 값과 같은 마이그레이션 단위를 수집한 다음 저장소에 저장합니다. 마찬가지로 LoadState 도구는 저장소에서 마이그레이션 단위를 수집하여 대상 컴퓨터에 적용합니다.

  1. ScanState는 명령줄 매개 변수를 구문 분석 및 유효성 검사하고, ScanState.log 파일을 만든 다음 로깅을 시작합니다.

  2. LoadState는 마이그레이션해야 하는 마이그레이션 구성 요소에 대한 정보를 수집합니다.

    LoadState는 LoadState 명령에 지정된 마이그레이션 .xml 파일에서 응용 프로그램 설정 구성 요소 및 사용자 데이터 구성 요소에 대한 정보를 가져옵니다.

    Windows Vista, Windows 7 및 Windows 8에서 매니페스트 파일은 운영 체제 설정을 마이그레이션하는 방법을 제어합니다. 이러한 파일은 수정할 수 없습니다. 특정 운영 체제 설정을 제외하려면 Config.xml 파일을 만들고 수정해야 합니다.

  3. LoadState는 마이그레이션해야 하는 사용자 프로필을 결정합니다. 기본적으로 원본 컴퓨터에 있는 모든 사용자 프로필이 마이그레이션됩니다. 사용자 옵션을 사용하여 사용자를 포함하거나 제외할 수 있습니다. 시스템 프로필 즉, Windows XP를 실행 중인 원본 컴퓨터의 "모든 사용자" 프로필과 Windows Vista, Windows 7 및 Windows 8을 실행 중인 원본 컴퓨터의 공용 프로필은 항상 마이그레이션되며, 마이그레이션에서 제외할 수 없습니다.

    • 로컬 사용자 계정을 마이그레이션할 때 대상 컴퓨터에 계정이 아직 없는 경우 /lac 명령줄 옵션을 사용해야 합니다. /lac 옵션을 지정하지 않으면 대상 컴퓨터에 없는 로컬 사용자 계정은 마이그레이션되지 않습니다.

    • /md/mu 옵션은 LoadState 명령에 지정하면 대상 컴퓨터에서 사용자 프로필의 이름을 바꿉니다.

    • 저장소에서 선택된 각 사용자 프로필에 대해 LoadState는 대상 컴퓨터에 해당 사용자 프로필을 만듭니다. 도메인 사용자 프로필을 만들기 위해 대상 컴퓨터를 도메인에 연결할 필요는 없습니다. USMT는 도메인을 확인할 수 없는 경우 설정을 로컬 계정에 적용하려고 합니다. 자세한 내용은 사용자 확인을 참조하세요.

  4. "검색" 단계에서 LoadState는 각 사용자 프로필에 대해 다음을 수행합니다.

    1. 각 구성 요소에 대해 LoadState는 구성 요소의 유형을 확인합니다. 현재 사용자 프로필이 시스템 프로필이고 구성 요소 유형이 "System" 또는 "UserAndSystem"인 경우 이 구성 요소는 이 사용자에 대해 선택됩니다. 그렇지 않으면 구성 요소가 무시됩니다. 또는 현재 사용자 프로필이 시스템 프로필이 아니고 구성 요소 유형이 "User" 또는 "UserAndSystem"인 경우 이 구성 요소는 이 사용자에 대해 선택됩니다. 그렇지 않으면 이 구성 요소는 무시됩니다.

      참고

      이제부터 LoadState는 운영 체제 설정을 마이그레이션하는 구성 요소, 응용 프로그램 설정을 마이그레이션하는 구성 요소 및 사용자 파일을 마이그레이션하는 구성 요소를 구분하지 않습니다. LoadState는 모든 구성 요소를 동일한 방법으로 평가합니다.

    2. 선택된 각 구성 요소가 계속 처리됩니다. 모든 프로필별 변수(예: CSIDL_PERSONAL)는 현재 프로필의 컨텍스트에서 평가됩니다. 예를 들어 사용자 프로필이 C:\Users 디렉터리에 저장된다고 가정할 때 처리 중인 프로필이 "User1"에 속하면 CSIDL_PERSONAL은 C:\Users\User1\Documents로 확장됩니다.

      참고

      LoadState는 구성 요소에 지정된 <detects> 섹션을 무시합니다. 여기서 모든 지정된 구성 요소는 검색되는 것으로 간주하여 마이그레이션하도록 선택됩니다.

    3. 각 선택된 구성 요소에 대해 LoadState는 <rules> 섹션을 평가합니다. 각 <rules> 섹션에 대해 현재 사용자 프로필이 시스템 프로필이고 <rules> 섹션의 컨텍스트가 "System" 또는 "UserAndSystem"이면 규칙이 계속 처리됩니다. 그렇지 않으면 이 규칙은 무시됩니다. 또는 현재 사용자 프로필이 시스템 프로필이 아니고 <rules> 섹션의 컨텍스트가 "User" 또는 "UserAndSystem"이면 규칙이 계속 처리됩니다. 그렇지 않으면 이 규칙은 무시됩니다.

    4. LoadState는 <rules> 섹션의 다양한 하위 섹션을 처리하여 마스터 마이그레이션 단위 목록을 만듭니다. <include> 하위 섹션에 있는 각 마이그레이션 단위는 동일한 <rules> 섹션의 <exclude> 하위 섹션에 해당하는 특정 규칙이 없는 한 마이그레이션됩니다. 우선 순위에 대한 자세한 내용은 충돌 및 우선 순위를 참조하세요.

    5. LoadState는 대상 컴퓨터별 하위 섹션(예: <destinationCleanup> 및 <locationModify> 하위 섹션)을 평가합니다.

    6. 대상 컴퓨터에서 Windows Vista 또는 Windows 7을 ,실행 중인 경우 ScanState에서 하위 수준 매니페스트 파일을 사용하여 수집된 migunit은 LoadState에서 해당하는 Windows 7용 구성 요소 매니페스트를 사용하여 처리됩니다. 하위 수준 매니페스트 파일은 LoadState 중에 사용되지 않습니다.

      중요

      LoadState에서 하위 수준 매니페스트 파일을 사용하려면 LoadState 명령에서 .xml 파일을 지정해야 합니다. 그렇지 않으면 ScanState 명령을 실행할 때 동일한 .xml 파일을 제공하더라도 이 .xml 파일에 있는 대상별 규칙(예: <locationModify>)은 무시됩니다.

  5. "적용" 단계에서 LoadState는 수집된 마이그레이션 단위를 대상 컴퓨터의 다양한 위치에 씁니다. 충돌이 있지만 개체에 대한 <merge> 규칙이 없는 경우 레지스트리에 대한 기본 동작은 원본으로 대상을 덮어쓰는 것입니다. 파일에 대한 기본 동작은 원본의 이름을 증분적으로 바꾸는 것입니다(예: OriginalFileName(1).OriginalExtension). 글꼴, 배경 무늬, 화면 보호기 설정과 같은 일부 설정은 사용자가 다음에 로그온할 때 적용됩니다. 따라서 LoadState 명령 작업을 완료한 후 로그오프해야 합니다.

참고 항목

기타 리소스

USMT(User State Migration Tool) 명령줄 구문