Windows Server 2003 또는 Windows Server 2008의 Adamsync OBJ_CLASS_VIOLATION 오류 문제를 해결하는 방법

기술 자료 번역 기술 자료 번역
기술 자료: 923835 - 이 문서가 적용되는 제품 보기.
모두 확대 | 모두 축소

이 페이지에서

요약

가 이 문서에서는 Windows Server 2003 또는 Windows Server 2008의 Adamsync 도구를 사용할 때 발생하는 OBJ_CLASS_VIOLATION 오류를 해결하는 방법을 설명합니다.

클래스 정의 차이점과 Active Directory 디렉터리 서비스에 ADAM 인스턴스를 인해 이 오류가 발생합니다. 이 문제를 해결하려면 다음 절에서 설명하는 단계를 수행하여:
  • 특성 및 개체의 클래스를 결정하십시오.
  • TOP 클래스 특성을 속하는 경우 이 문제를 해결하려면 단계
  • 특성을 TOP 클래스에 속하지 않는 경우 이 문제를 해결하려면 단계
이 문제를 해결할 수 없는 경우 Microsoft 지원 서비스에 문의하십시오.

현상

Windows Server 2003 기반 또는 Windows Server 2008 기반 컴퓨터에서 ADAM 인스턴스에 Active Directory 개체 동기화하려면 ADAM) Active Directory 응용 프로그램 모드 (동기화 (Adamsync.exe) 도구를 사용해 보십시오. 그러나 Adamsync 로그 파일에 다음과 유사한 오류 메시지가 기록됩니다.
페이지 X, 프레임 X, 항목 X Count X USN X 처리 항목: 소스 항목 처리 범위 내 항목이 f9023a23e3a06d408f07a0d51c301f38 <guid=f9023a23e3a06d408f07a0d51c301f38> 처리. 대상 개체의 CN 추가 =TestGroup, OU = Accounts 을 dc = domain, dc = com. 특성을 추가하는: sourceobjectguid, 보안, instanceType, displayName, 정보, adminDescription, displayNamePrintable, userAccountControl, 코드 페이지, 국가, logonHours, primaryGroupID, 주석, accountExpires, sAMAccountName, desktopProfile, legacyExchangeDN, userPrincipalName

LDAP 오류가 발생했습니다. ldap_add_sW: 개체 클래스 위반. 확장된 정보: 0000207D: UpdErr: DSID-0315119D, 문제 6001 (OBJ_CLASS_VIOLATION)-2054643804 데이터

원인

이 문제는 Active Directory 및 ADAM 클래스 정의 차이점 때문에 발생합니다. 해당 클래스에 대해 잘못된 특성을 포함하도록 개체를 수정하려고 하면 이 차이가 나타납니다. 예를 들어, 특성을 ADAM 스키마 전혀 정의되지 않은 또는 특성이 정의되어 있지만, 필수 또는 선택적 특성 목록에 특정 클래스에 대한 특성이 없습니다. 일반적으로 두 번째 상황에 이 문제가 가장 자주 발생합니다.

동기화할 개체 클래스 정의 ADAM에 사용할 수 없는 특성을 하나 이상 Active Directory에 포함되어 있습니다. "현상" 절에서 언급한 오류 메시지의 "추가 특성" 섹션을 추가하려면 시도하십시오 특성을 표시합니다. 이러한 특성은 선택적 또는 필수 특성이 동기화되는 개체의 클래스에 대한 목록이 정의됩니다.

예를 들어, "현상" 절에서 설명한 오류 메시지 참조 CN 개체입니다 TestGroup =. 볼 때 해당 CN=TestGroup Active Directory 및 개체가 이 클래스에 대한 특성 목록을 확인하십시오 및 모든 부모 클래스, 이 목록에서 하나 이상의 특성 ADAM이 이 클래스에 대해 사용할 수 있는 필수 또는 선택적 특성 목록에 없는 것을 참고하십시오.

참고 모든 부모 클래스의 특성 목록이 포함되어 있습니다.

해결 방법

이 문제를 해결하려면 다음과 같이 하십시오.

특성 및 개체의 클래스를 결정하십시오.

  1. 실패한 개체에 추가되는 특성 목록을 확인하십시오. 개체를 결정할 수 동기화 로그에서 오류 메시지를 확인하여 실패한. 실패한 개체는 항상 오류 메시지 정확하게 전에 동기화 로그에 끝에 표시된 마지막 개체가 있습니다. 예를 들어, 해당 CN=TestGroup "현상" 절에서 설명하는 오류 메시지에서 개체가 실패했습니다.
  2. 오류 메시지에서 플래그DisplayNamePrintable 또는 ExtensionName 특성을 포함할지 여부를 결정하십시오. 이러한 특성 중 하나를 오류 메시지에 포함되어 있는 경우 특성을 TOP 클래스에 속하는 경우 이 문제를 해결하는 단계"절을 참조하십시오. 오류 메시지에서 특성이 포함되어 있으면 특성 TOP 클래스에 속하지 않는 경우 문제를 해결하는 단계"절을 참조하십시오.

TOP 클래스 특성을 속하는 경우 이 문제를 해결하려면 단계

Active Directory 스키마의 TOP 클래스 DisplayNamePrintable, 플래그 또는 ExtensionName 특성이 포함된 찾을 수 있습니다. 그러나 이러한 특성은 ADAM TOP 클래스에 포함되어 있지 않습니다. 그러나 ADAM TOP 클래스에서 변경할 수 없습니다. 따라서 다음 방법 중 이 문제를 해결하려면 사용하십시오.
  • 이러한 특성은 XML 구성 파일에서 <exclude>섹션을 사용하여 제외하십시오.
  • MMC 스키마를 사용하여 수동으로 이러한 특성을 ADAM 스키마 관련 클래스에 대한 선택적 특성 목록에 추가하십시오. 예를 들어, "현상" 절에서 설명하는 오류 메시지에서 실패한 그룹 클래스의 개체입니다. 따라서 이러한 특성을 ADAM 그룹 클래스에 대한 선택적 특성 목록에 추가해야 합니다.

특성을 TOP 클래스에 속하지 않는 경우 이 문제를 해결하려면 단계

  1. 도구, ADSchemaAnalyzer의 \ 옵션 메뉴를 LDIF 생성 탭에서 새 및 현재 요소에 대한 참조 사용하여 업데이트 를 클릭합니다.
  2. 파일 메뉴에서를 대상 스키마 및 기본 스키마로 ADAM Active Directory 로드할 수 있습니다. 스키마 비교 완료 도구를 기다립니다.
  3. 스키마 메뉴에서 모든 요소가 포함된 것처럼 클릭하십시오.
  4. [파일] 메뉴에서 [변경 내용이 포함되어 있는 LDF 파일을 만들려면 만들기 LDIF 파일 을 클릭하십시오.

    참고 ADAM에 직접 이 LDF 파일을 가져올 경우 필요한 특성은 됩니다 것 추가되거나 올바르게 수정한. 또한 오류 메시지가 표시됩니다. 이 발생하는 이유에 대한 설명 "왜 LDF 파일이 ADAM에 직접 가져올 수 없습니다" 절을 참조하십시오. 이 경우 LDF 파일을 가져오지 않고 5단계로 이동하십시오.
  5. 4단계에서 만든 LDF 파일을 검사하십시오. 특히 문제를 일으키는 클래스를 봅니다. 예를 들어, 그룹 클래스를 봅니다. 이 클래스에 대한 구역에 있는 필수 또는 선택적 특성 목록을 Active Directory에서 이 클래스에 있는 않았지만 ADAM에 누락된 특성 목록을 포함합니다.
  6. 문제가 특성을 LDF 파일을 찾습니다. 이렇게 하려면 LDF 파일이 "#attributes" 절에서 검토하십시오. 이 섹션에서는 가져올 수 있는 특성을 남아 있습니다. 일반적으로 문제의 특성 "#attributes" 섹션에서 찾을 유일한 특성은 입니다. 문제의 특성을 찾으면 8단계로 이동하십시오. 문제의 특성을 찾을 수 없으면 7단계로 이동하십시오.
  7. LDF 파일이 "#attributes" 절의 문제를 특성 명백한 없는 경우 문제의 특성을 찾으려면 다음과 같이 하십시오.
    1. 현재 클래스의 모든 수정 LDF 파일이 한 섹션에 있습니다. 이 "#Updating 현재 요소" 섹션에 있습니다. 이 섹션에서를 문제가 있는 클래스에 업데이트합니다 섹션을 찾습니다. 예를 들어, 그룹 클래스 문제가 있으면 다음과 유사한 구역을 찾지 것입니다:
      # Update element: group
      dn: cn=Group,cn=Schema,cn=Configuration,dc=X
      changetype: modify
      add: mayContain
      # mayContain: adminCount
      mayContain: 1.2.840.113556.1.4.150
      # mayContain: controlAccessRights
      mayContain: 1.2.840.113556.1.4.200
      # mayContain: groupAttributes
      mayContain: 1.2.840.113556.1.4.152
      # mayContain: groupMembershipSAM
      mayContain: 1.2.840.113556.1.4.166
      -
      
      NoteSome more entries that may be located here have been excluded from this example.
      
      dn: 
      changetype: modify
      add: schemaUpdateNow
      schemaUpdateNow: 1
      
    2. 작업당 단일 특성 사용하여 항목을 분할하여 단계는 4a 있는 항목을 변경하십시오. 예를 들어, 다음과 유사한 항목을 사용하여 단계 7a 예제에서는 항목을 변경할:
      # Update element: group
      dn: cn=Group,cn=Schema,cn=Configuration,dc=X
      changetype: modify
      add: mayContain
      # mayContain: adminCount
      mayContain: 1.2.840.113556.1.4.150
      -
      
      # Update element: group
      dn: cn=Group,cn=Schema,cn=Configuration,dc=X
      changetype: modify
      add: mayContain
      # mayContain: controlAccessRights
      mayContain: 1.2.840.113556.1.4.200
      -
      
      dn: cn=Group,cn=Schema,cn=Configuration,dc=X
      changetype: modify
      add: mayContain
      # mayContain: groupAttributes
      mayContain: 1.2.840.113556.1.4.152
      -
      
      dn: cn=Group,cn=Schema,cn=Configuration,dc=X
      changetype: modify
      add: mayContain
      # mayContain: groupMembershipSAM
      mayContain: 1.2.840.113556.1.4.166
      -
      
      Note Some more entries that may be located here have been excluded from this example.
      
      
      dn: 
      changetype: modify
      add: schemaUpdateNow
      schemaUpdateNow: 1
      
  8. LDF 파일을 저장하십시오.
  9. LDF 파일이 LDF 파일의 시작 부분에 제공된 명령을 사용하여 ADAM 스키마로 가져옵니다.
  10. Ldifde 유틸리티에 의해 표시된 보고서를 봅니다. 이제 Ldifde 않는 가져온 특성을 사용하여 발생하는 오류를 보고합니다. 다음 예제 정보는 오류 정보 유사합니다:
    C:\WINDOWS\ADAM>ldifde -i -u -f c:\data\problem\KBtest_modified.ldf -s localhost:50010 -j . -c "cn=Configuration,dc=X" #configurationNamingContext
    Connecting to "localhost:50010"
    Logging in as current user using SSPI
    Importing directory from file "c:\data\problem\KBtest_modified.ldf"
    Loading entries.
    Add error on line 15: Already Exists
    The server side error is: 0x2071 An attempt was made to add an object to the
    ectory with a name that is already in use.
    The extended server error is:
    00002071: UpdErr: DSID-0305030D, problem 6005 (ENTRY_EXISTS), data 0
    

    참고 오류 보고서에 표시되는 줄 번호를 확인하여 문제를 특성을 LDF 파일을 찾습니다.
  11. 이 오류 정보는 문제의 특성을 찾고 문제를 해결할 수 있습니다. 문제를 해결하는 데 다음과 같이 하십시오.
    1. 오류 보고서에 표시되는 줄 번호를 확인하여 문제를 특성을 LDF 파일을 찾습니다. 실패한 특성이 있는 DisplayName "DUP-" 접두사가 있을 수 있습니다.
    2. 개체 식별자 (OID) 의 특성 및 ADAM이 개체 식별자를 찾습니다.
    3. 개체 식별자가 동일한 ADAM에 특성을 찾습니다.
    4. ADAM 차이점의 찾을 LDF 파일의 특성을 비교하십시오. 예를 들어, 특성을 동일한 개체 식별자가 있지만 다른 DisplayName가 있을 수 있습니다.
    5. 유지할 특성을 결정하고 다른 하나는 수정하십시오. 예를 들어, LDF 파일에서 항목을 제거할 수 또는 ADAM 특성 항목을 수정할 수 있습니다. 또는 XML 구성 파일에서 <exclude>섹션을 사용하여 에서 동기화 문제가 특성을 제외할 수 있습니다.
  12. 문제의 특성을 Active Directory 또는 ADAM 스키마 또는 특성을 LDF 파일을 제거한 후 수정된 후에 수정된 LDF 파일을 다시 가져오십시오. 이제 가져오기 작업이 성공할 수 있습니다. 문제가 해결되지 않으면 문제의 원인이 되는 다른 특성이 있을 수 있습니다. 특성을 모두 가져올 때까지 10-12단계 반복하십시오.

진단 로깅

문제의 특성의 찾을 때 이를 함께 잘못된 것을 명확하지 않을 수 있습니다. 예를 들어, 중복 개체 식별자 또는 다른 DisplayName 항목을 찾을 수 없습니다. 문제의 특성을 가져올 때 LDAP 인터페이스에 대해 디버그 로깅을 설정하여 실패에 대한 자세한 정보를 얻을 수 있습니다. 이렇게 하려면 다음과 같이 하십시오.
  1. Ldifde 실패에 대한 자세한 정보를 얻으려면 LDAP ADAM에 로깅을 켭니다. 이렇게 하려면
    Category 16 LDAP Interface events
    레지스트리 항목의 값이 5로 변경하십시오. 이 레지스트리 항목은 다음 레지스트리 하위 키 아래에 위치합니다.
    HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\ADAM_instanceName\Diagnostics
  2. LDF 파일을 다시 가져오십시오.
  3. 이벤트 로그에서 오류 확인하십시오.
  4. 문제 해결을 마친 후
    Category 16 LDAP Interface events
    레지스트리 항목의 값이 0으로 다시 설정하십시오. 그렇지 않으면 이벤트 로그가 침수된 수 없습니다.

Microsoft 지원 서비스에 문의하십시오

이 문서에 나와 있는 단계를 완료한 후에도 문제가 해결되지 않으면 Microsoft 지원 서비스에 문의하십시오. Microsoft 지원 액세스하려면 다음 링크를 클릭하십시오.
http://support.microsoft.com/default.aspx?scid=fh;EN-US;CNTACTMS

현재 상태

이것은 의도적으로 설계된 동작입니다.

추가 정보

Adamsync 도구를 사용하여 Active Directory에서 ADAM 데이터를 동기화하려면 다음과 같이 하십시오.
  1. 시작 을 누르고, 모든 프로그램, ADAM 을 차례로 가리킨 다음 ADAM 도구 명령 프롬프트 를 누릅니다.
  2. 명령 프롬프트에서 다음 명령을 입력한 다음 Enter 키를 누릅니다.
    Server_Name adamsync/fs: port_number configurationName configurationName/log log_file_name .log
Adamsync 도구를 사용하는 방법에 대한 자세한 내용은 다음 Microsoft 웹 사이트를 방문하십시오.
http://technet2.microsoft.com/windowsserver2008/en/library/ca49911b-d004-4497-b369-6506495fb30f1033.mspx?mfr=true

http://technet2.microsoft.com/windowsserver/en/library/809c8d09-cc99-4e7e-a80d-e77c5aefb3211033.mspx?mfr=true

왜 LDF 파일이 ADAM에 직접 가져올 수 없습니다.

ADAM에 특성을 TOP 클래스에 속하지 않는 경우 이 문제를 해결하는 단계"섹션의 1 단계에서 만든 LDF 파일을 가져올 경우 이러한 특성이 계속 ADAM 특성 목록에 추가되지는지 않습니다. 스키마를 검사할 ADAM 스키마 MMC나 ADSIEDIT 사용하여 이 동작을 확인할 수 있습니다. 이 문제는 다음 Ldifde 작업이 실패하면 자동으로 가져오기 때문입니다. 현재, Ldifde 오류를 보고하지 않습니다. 자동으로 ADSchemaAnalyzer LDF 파일을 생성하는 방식으로 인해 실패합니다. ADSchemaAnalyzer는 ntdsschemaaddntdsSchemamodify 명령을 사용합니다. 이러한 명령은 관대한 LDAP 컨트롤을 해제합니다. 모든 오류 자동 있음을 의미합니다.

또한 각 클래스에 대해 선택적 특성 목록에 추가할 수 있는 모든 특성은 하나의 추가 수정 작업은 추가할 수 있습니다. 따라서 문제가 있는 경우 해당 특성 중 하나를 추가하여 전체 작업이 실패하고 목록에서 특성이 추가됩니다. 따라서 문제가 특성을 찾기 위해 추가 단계는 수행해야 합니다.

일반적으로 실패 가능성이 높은 원인 중복 개체 식별자를 특성 또는 특성 정의 Active Directory 및 ADAM 다른 몇 가지 차이가 있습니다. Windows Server 2003에서 ADSchemaAnalyzer LdapDisplayName 특성과 클래스를 사용하여 Active Directory 및 ADAM 비교합니다. 중복된 OID 이 즉 누락된 수 있습니다. 그리고 및 해당 LDapDisplayName ADAM에 존재하지 않을 경우 새 특성으로 특성을 볼 수 있습니다. Windows Server 2008 (Active Directory/LDS), ADSchemaAnalyzer 개체 식별자 및 충돌이 있으면 보고합니다 찾았습니다.

속성

기술 자료: 923835 - 마지막 검토: 2008년 7월 16일 수요일 - 수정: 2.0
본 문서의 정보는 다음의 제품에 적용됩니다.
  • Microsoft Windows Server 2003, Standard Edition (32-bit x86)
  • Microsoft Windows Server 2003, Enterprise Edition (32-bit x86)
  • Microsoft Windows Server 2003, Enterprise x64 Edition
  • Windows Server 2008 Datacenter
  • Windows Server 2008 Enterprise
  • Windows Server 2008 Standard
키워드:?
kbmt kbprb kbtshoot KB923835 KbMtko
기계 번역된 문서
중요: 본 문서는 전문 번역가가 번역한 것이 아니라 Microsoft 기계 번역 소프트웨어로 번역한 것입니다. Microsoft는 번역가가 번역한 문서 및 기계 번역된 문서를 모두 제공하므로 Microsoft 기술 자료에 있는 모든 문서를 한글로 접할 수 있습니다. 그러나 기계 번역 문서가 항상 완벽한 것은 아닙니다. 따라서 기계 번역 문서에는 마치 외국인이 한국어로 말할 때 실수를 하는 것처럼 어휘, 구문 또는 문법에 오류가 있을 수 있습니다. Microsoft는 내용상의 오역 또는 Microsoft 고객이 이러한 오역을 사용함으로써 발생하는 부 정확성, 오류 또는 손해에 대해 책임을 지지 않습니다. Microsoft는 이러한 문제를 해결하기 위해 기계 번역 소프트웨어를 자주 업데이트하고 있습니다.

피드백 보내기

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com