Pour migrer le schéma Sun ONE* vers Novell eDirectory, procédez comme suit :
Vous pouvez enregistrer les erreurs qui se sont produites lors de la comparaison du schéma dans un fichier d'erreurs à l'aide de la commande suivante :
ice -e nom_fichier_erreurs_LDIF -C -a -SLDAP -s serveur_Sun_ONE -p port_Sun_ONE -DLDAP -s serveur_eDirectory -p port_eDirectory
Par exemple :
ice -e err.ldf -C -a -SLDAP -s sun_srv1 -p sun_port1 -DLDAP -s edir_srv2 -p edir_port2
Les éventuelles erreurs rencontrées lors de la comparaison du schéma sont inscrites dans le fichier d'erreurs (err.ldf dans l'exemple). Il n'est pas nécessaire de vous loguer pour exécuter cette opération, sauf si l'un des serveurs requiert une authentification afin de lire le DSE racine. Microsoft Active Directory requiert une authentification pour lire le DSE racine.
Erreur LDAP : 53 (Impossible d'exécuter le DSA)
Tous les enregistrements qui contiennent des références à ces définitions produisent l'erreur suivante :
Erreur LDAP : 16 : (Attribut inexistant)
Par conséquent, les enregistrements qui contiennent des références à ces objets ou qui tentent de modifier ces définitions doivent être commentés dans le fichier d'erreurs LDIF (err.ldf dans l'exemple).
Erreur LDAP : 80 (Erreur NDS : assignation de nom ambiguë (-651)
Cette erreur se produit car Sun ONE n'utilise pas la même méthode de détermination des règles d'assignation de nom que eDirectory.
Pour y remédier, utilisez l'une des trois options suivantes :
Ajoutez un attribut d'assignation de nom valable à chaque définition objectClasses en cause.
Par exemple :
Pour ajouter l'attribut d'assignation de nom [ cn ] à la classe d'objet netscapeMachineData, modifiez l'entrée (en italique dans l'exemple ci-dessous) dans le fichier err.ldf comme suit afin d'inclure le drapeau X-NDS_NAMING :
dn: cn=schemachangetype: modifyadd: objectClassesobjectClasses: ( 2.16.840.1.113730.3.2.32 NAME 'netscapeMachineData'
DESC 'iPlanet defined objectclass' SUP top STRUCTURAL MAY 'cn' X-NDS_NAMING 'cn' )-
Affectez la valeur AUXILIARY ou ABSTRACT à chaque définition objectClasses en cause.
Par exemple :
Pour modifier la définition objectclass de la classe d'objet netscapeMachineData et affecter la valeur AUXILIARY à la place de STRUCTURAL, modifiez l'entrée du fichier err.ldf (en italique dans l'exemple ci-dessous) comme suit :
dn: cn=schemachangetype: modifyadd: objectClassesobjectClasses: ( 2.16.840.1.113730.3.2.32 NAME 'netscapeMachineData'
DESC 'iPlanet defined objectclass' SUP top AUXILIARY )-
Pour modifier la définition objectclass de la classe d'objet netscapeMachineData et affecter la valeur ABSTRACT à la place de STRUCTURAL, modifiez l'entrée du fichier err.ldf (en italique dans l'exemple ci-dessous) comme suit :
dn: cn=schemachangetype: modifyadd: objectClassesobjectClasses: ( 2.16.840.1.113730.3.2.32 NAME 'netscapeMachineData'
DESC 'iPlanet defined objectclass' SUP top ABSTRACT )-
Ajoutez cn à la définition de Top dans eDirectory afin de générer un attribut d'assignation de nom éventuel pour toutes les objectClasses.
Il existe deux façons d'ajouter cn à Top :
Créez un fichier de la manière suivante et donnez-lui le nom topsch.ldf.
version : 1
dn:cn=schema
changetype: modify
delete: objectclasses
objectclasses: ( 2.5.6.0 NAME 'top' STRUCTURAL )
-
add:objectclasses
objectclasses: (2.5.6.0 NAME 'top' STRUCTURAL MAY cn)
Utilisez la ligne de commande ci-dessous de l'utilitaire d'importation, de conversion et d'exportation Novell :
ice -SLDIF -f nom_fichier_LDIF -DLDAP -s serveur_eDirectory -p port_eDirectory -d DN_Admin_eDirectory -w mot_de_passe_eDirectory
Par exemple :
ice -SLDIF -f topsch.ldf -DLDAP -s edir_srv2 -p edir_port2 -d cn=admin,o=org -w pwd1
1. Dans Novell iManager, cliquez sur le bouton Rôles et tâches .
2. Cliquez sur Schéma > Ajouter un attribut.
3. Dans la liste Classes disponibles, sélectionnez Haut, puis cliquez sur OK.
4. Double-cliquez sur CN dans la liste Attributs facultatifs disponibles.
5. Cliquez sur OK.
Erreur LDAP : 16 (Attribut inexistant)
Pour corriger cette erreur, modifiez la définition objectClass afin d'hériter de la nouvelle classe d'objet de ndsLoginProperties et supprimez l'attribut userPassword de la liste Attributs obligatoires.
Par exemple :
Une classe d'objet contenant l'attribut userPassword dans la liste Attributs obligatoires :
version : 1
dn: cn=schemaz
changetype: modify
add: objectClasses
objectClasses: ( 0.9.2342.19200300.100.4.19 NAME 'simpleSecurityObject' DESC '
Standard LDAP objectClass' SUP top STRUCTURAL MUST userPassword )
doit être modifiée comme suit (prêtez attention à la modification dans la dernière ligne) :
version : 1
dn: cn=schema
changetype: modify
add: objectClasses
objectClasses: ( 0.9.2342.19200300.100.4.19 NAME 'simpleSecurityObject' DESC '
Standard LDAP objectClass' SUP (ndsLoginProperties $ top) STRUCTURAL )
Utilisez la commande d'importation, de conversion et d'exportation Novell suivante pour importer le fichier LDIF de comparaison de schéma modifié (err.ldf dans l'exemple) :
ice -e fichier_erreur -SLDIF -f fichier_LDIF_modifié -DLDAP -s serveur_eDirectory -p port_eDirectory -d DN_Admin_eDirectory -w mot_de_passe_eDirectory
Par exemple :
ice -e errors.ldf -SLDIF -f err.ldf -DLDAP -s edir_srv2 -p edir_port2 -d cn=admin,o=org -w pwd1