13.8. Migration de répertoires de versions précédentes

En commençant avec la publication de Red Hat Linux 9, OpenLDAP utilise le système Berkeley DB de Sleepy Cat Software comme son format de stockage sur disque pour les répertoires. Des versions précédentes de OpenLDAP utilisaient le Gestionnaire de bases de données GNU (gdbm). Ce faisant, avant de mettre à niveau une implémentation LDAP de Red Hat Enterprise Linux 3 de Red Hat Enterprise Linux 2.1 ou Red Hat Linux 7.x vers 8, effectuez les étapes suivantes :

  1. Avant la mise à niveau du système d'exploitation, exécutez la commande /usr/sbin/slapcat -l ldif-output qui produira un fichier LDIF nommé ldif-output qui contient les entrées du répertoire LDAP.

  2. Mettez à niveau le système d'exploitation, tout en faisant attention à ne pas reformater la partition contenant le fichier LDIF.

  3. Importez de nouveau le répertoire LDAP sur le format Berkeley DB mis à niveau en exécutant la commande /usr/sbin/slapadd -l ldif-output.

ImportantImportant
 

Si un répertoire LDAP n'est pas exporté avant la mise à niveau vers Red Hat Enterprise Linux 3 de Red Hat Enterprise Linux 2.1 ou Red Hat Linux 7.x par 8, utilisez la commande /usr/sbin/slapcat-gdbm -l ldif-output pour extraire l'ancien répertoire (en remplaçant ldif-output par le nom du fichier de la sortie LDIF). Cette commande crée un fichier LDIF approprié pour l'import avec la commande slapadd.

13.8.1. Migration des répertoires 1.x

Dans Red Hat Linux 7.1, le format de stockage sur disque utilisé par le serveur LDAP slapd est maintenant gdbm. Si vous faites une mise à niveau d'un répertoire LDAP à partir d'un système qui exécutait Red Hat Linux 7.0 ou une version antérieure, vous devrez extraire les répertoires LDAP existants pour les placer dans un fichier LDIF à l'aide de la commande suivante :

ldbmcat -n > <ldif_file>

Dans la commande ci-dessus, remplacez <ldif_file> par le nom du fichier de sortie. Tapez ensuite la commande suivante pour importer ce fichier :

slapadd -l <ldif_file>

ImportantImportant
 

Seul le super-utilisateur peut utiliser /usr/sbin/slapadd. Toutefois, le serveur de répertoires tourne en tant que l'utilisateur ldap. Par conséquent, le serveur de répertoires ne sera pas en mesure de modifier tout fichier créé par slapadd. Pour résoudre ce problème, tapez la commande ci-dessous lorsque vous avez fini d'utiliser slapadd :

chown -R ldap /var/lib/ldap