LDAP 설치 오류 "slapadd: dn="cn=config" 항목을 추가할 수 없습니다(line=1):"

LDAP 설치 오류 "slapadd: dn="cn=config" 항목을 추가할 수 없습니다(line=1):"

저는 LDAP를 처음 사용하고 컴퓨터 클러스터에 LDAP를 설치하려고 합니다. 나는 이 기술적인 빠른 시작 가이드를 읽었습니다.https://www.openldap.org/doc/admin26/quickstart.html. 8단계까지 모두 완료했는데 9단계의 slapd 구성 명령이 문제를 일으키고 있습니다.

가이드에는 "이제 다음 명령을 실행하여 slapd(8)에서 사용할 구성 데이터베이스를 가져올 수 있습니다. su root -c /usr/local/sbin/slapadd -n 0 -F /usr/local/etc/slapd.d -l /usr/local/etc/openldap/slapd.ldif" 라고 나와 있습니다.

내가 실행한 명령은sudo /usr/local/sbin/slapadd -n 0 -F /usr/local/etc/slapd.d -l /usr/local/etc/openldap/slapd.ldif

명령에 나열된 모든 디렉터리가 존재하며 해당 파일, 기호 링크 및 디렉터리도 존재합니다. 명령을 실행하면 이 오류가 발생합니다.slapadd: could not add entry dn="cn=config" (line=1): Closing DB...

문제를 해결하는 동안 8단계로 돌아갔습니다. 끝에 "지정된 olcDbDirectory는 slapd(8)를 시작하기 전에 존재해야 한다는 점에 유의하십시오"라고 명시되어 있습니다. 내 slapd.ldif 파일의 olcDbDirectory는 다음과 같습니다./usr/local/var/openldap-data

디렉토리가 존재하지만 권한이 없기 때문에 디렉토리에 들어갈 수 없습니다. 아마도 이것이 오류가 발생하는 이유 중 하나일 수 있다고 생각합니다. 또한 내 slapd.d디렉터리( /etc/ldap/slapd.d) 안에 디렉터리와 파일이 있습니다. 디렉토리의 내용은 다음과 같습니다. 'cn=config' 'cn=config.ldif' 다른 게시물을 읽고 있는데 항목이 두 개 있어서는 안 된다는 내용을 읽었습니다. 하지만 확실하지 않기 때문에 아무것도 삭제하지 않았습니다.

이 문제를 해결하려면 어떤 조치를 취해야 합니까? 나는 같은 오류가 있는 다른 많은 사람들을 찾지 못했습니다. 주목해야 할 중요한 점은 이전에 LDAP 설치를 여러 번 시도했다는 것입니다. 이러한 시도는 실패하거나 만족스럽지 못한 결과를 가져왔기 때문에 결국 제거하게 되었습니다. 어쩌면 이 오류를 일으키는 모든 파일을 제거하지 않았을 수도 있습니다. 이 문제에 대한 도움을 주시면 감사하겠습니다. 더 많은 정보를 제공해야 한다면 알려주시기 바랍니다.

감사해요.


답변1

여기에는 두 개의 데이터베이스가 관련됩니다.

  • -n 0~이다구성cn=config에 개별 LDIF 파일 묶음으로 저장된 데이터베이스(접두사 )입니다 /usr/local/etc/slapd.d.

  • -n 1당신의 첫 번째입니다데이터에 LMDB 또는 BDB 데이터베이스로 저장된 데이터베이스(접두사 o=Foo또는 기타)입니다 .dc=foo,dc=bar/usr/local/var/openldap-data

항목을 다음으로 가져오려고 합니다.구성데이터베이스는 /etc에 저장되므로 현재는 /var의 디렉터리가 중요하지 않습니다.

실제로는 반대의 문제가 있는 것 같습니다. 다음 항목을 추가하려고 합니다.이미 존재 함, 언급한 대로 /etc/ldap/slapd.d디렉터리에 해당 .ldif파일이 이미 있습니다. 따라서 "slapadd"를 사용하여 파일을 가져오기 전에 먼저 slapd.d/ 디렉터리에서 모든 파일을 제거해야 합니다.

(또는 "이전 스타일"로 시작하여 slapd.confslapd를 사용하여 LDIF 형식으로 변환할 수도 있습니다 slapd -f slapd.conf -F slapd.d.)

또 다른 문제는 동일한 것에 대한 두 가지 다른 경로에 대해 이야기하고 있다는 것입니다. 먼저 로 가져오고 그 다음에 는 동일하지 않은 을 /usr/local/etc/slapd.d찾습니다 ./etc/ldap/slapd.d

(전체적으로 OpenLDAP 시스템이 설치되어 있는 것처럼 들립니다.그리고사용자 정의 컴파일된 둘 다 서로 다른 경로를 사용합니다. 좋은 것은 아닙니다. 나는 정말로 이 혼란스러운 부분을 정리하고또는또 하나 설치...

사실 저도 추천드리고 싶습니다신선한이미 여러 가지 다른 작업을 실행하고 있는 시스템이 아닌 시스템입니다. )

관련 정보