Différences
Ci-dessous, les différences entre deux révisions de la page.
Prochaine révision | Révision précédenteDernière révisionLes deux révisions suivantes | ||
informatique:reseau:ldap:migration_bdb_hdb_mdb [2019/08/06 10:27] – créée bn8 | informatique:reseau:ldap:migration_bdb_hdb_mdb [2022/11/16 11:56] – bn8 | ||
---|---|---|---|
Ligne 3: | Ligne 3: | ||
**Postulat de départ :** vous avez un database configurée en tant que // | **Postulat de départ :** vous avez un database configurée en tant que // | ||
- | Il faut d' | + | **Pré-requis :** Installer le script [[https:// |
- | * Créer le fichier ///tmp/load-module.ldif// : <code ldif>dn: cn=module{0}, | + | |
+ | Il faut d' | ||
+ | dn: cn=module{0}, | ||
changetype: modify | changetype: modify | ||
add: olcModuleLoad | add: olcModuleLoad | ||
- | olcModuleLoad: | + | olcModuleLoad: |
- | * Jouer ce LDIF via // | + | EOF</ |
- | # Ou : | + | |
- | ldapmodify -Y EXTERNAL -H ldapi:/// -f / | + | |
- | Stopper // | + | On sauvegarde |
- | + | check_slapdd_crc32 | |
- | On fait quelques | + | rsync -av /etc/ |
- | slapcat | + | |
On migre la configuration : | On migre la configuration : | ||
- | * On renomme le fichier // | + | * On renomme le fichier // |
# Pour HDB : | # Pour HDB : | ||
- | mv ' | + | [ -e ' |
[ -d ' | [ -d ' | ||
# Ou pour BDB : | # Ou pour BDB : | ||
- | mv ' | + | [ -e ' |
[ -d ' | [ -d ' | ||
- | * Éditer | + | * On adapte |
- | * supprimer les deux premières ligne liées au //CRC//. Exemple : < | + | * **dn et olcDatabase |
- | # CRC32 ddd6c93e</ | + | * **objectClass et structuralObjectClass :** changer // |
- | * **dn :** changer //hdb// (ou //bdb//) en //mdb// | + | |
- | * **objectClass et structuralObjectClass :** changer // | + | |
* **olcDbCheckpoint :** conserver en l' | * **olcDbCheckpoint :** conserver en l' | ||
- | * **olcDatabase :** changer | + | * supprimer les lignes des attributs suivants: |
- | * supprimer | + | |
- | * ajouter // | + | |
+ | | ||
+ | | ||
+ | * '' | ||
+ | * '' | ||
+ | * '' | ||
+ | * '' | ||
+ | * '' | ||
+ | * '' | ||
+ | * '' | ||
+ | * '' | ||
+ | * '' | ||
+ | * ajouter la ligne '' | ||
+ | * On vérifie la nouvelle configuration : <code bash> | ||
+ | check_slapdd_crc32 -p /etc/ldap/slapd.d.new/ -f | ||
+ | slaptest -F /etc/ldap/slapd.d.new/ | ||
+ | slapschema -F /etc/ldap/slapd.d.new/ -b cn=config</ | ||
+ | |||
+ | Maintenant que la configuration est préparer, on va : | ||
+ | | ||
+ | * Exporter au format LDIF les données de l' | ||
+ | * Mettre en place la nouvelle configuration | ||
+ | * Supprimer et réimporter les données de l' | ||
+ | * Relancer OpenLDAP | ||
- | On supprime et réimporte les données à partir du dump //LDIF// : <code bash>rm -fr /var/lib/ldap/* | + | Cela devrait être assez rapide, tout dépends de la taille de l' |
- | slapadd -n 1 -q -l /tmp/ldif | + | <code bash> |
- | chown openldap: -R / | + | DB_DIRECTORY=$( grep -iE ' |
+ | echo "DB directory: $DB_DIRECTORY" | ||
+ | [ -n " | ||
+ | service slapd stop && \ | ||
+ | slapcat -n1 > /tmp/ldif && \ | ||
+ | rsync -av --delete / | ||
+ | rm -f $DB_DIRECTORY/*.bdb $DB_DIRECTORY/ | ||
+ | slapadd -n 1 -q -l / | ||
+ | chown openldap: -R $DB_DIRECTORY && \ | ||
+ | service slapd start</ | ||
- | On relance // | + | Si tout est ok, vous pouvez supprimer les sauvegardes |
- | Si tout est ok, vous pouvez supprimer les sauvegardes : <code bash>rm -fr /tmp/ldif /etc/ldap/slapd.d.bkp/</code> | + | <note tip>Si vous aviez un cron de purge des logs binaires |