Questions fréquentes propres au module Horus
- Erreur MySQL : Too many connections
- Erreur MySQL : Access denied for user 'debian-sys-maint'@'localhost'
- Modifier le mot de passe d'un utilisateur en ligne de commande
- Impossible de trouver ClientScribe & ClientHorus
- Comment effectuer un changement de nom de domaine académique
- Comment effectuer un changement de nom du serveur de fichier
- Comment effectuer un changement de l'identifiant de l'établissement (UAI)
Erreur MySQL : Too many connections
Le nombre de connexions clientes maximum simultanées à la base de données MySQL est atteint.
Truc & astuceAugmenter le paramètre mysql_max_connexions
Dans l'interface de configuration du module, en mode expert, aller dans l'onglet Mysql
et adapter le Nombre maximum de connexions simultanées
aux usages constatés.
Lancer la commande reconfigure
pour appliquer le nouveau réglage.
Erreur MySQL : Access denied for user 'debian-sys-maint'@'localhost'
Suite à une restauration ou à une migration il est possible de rencontrer l'erreur suivante :
ERROR 1045 (28000): Access denied for user 'debian-sys-maint'@'localhost' (using password: YES)
Truc & astuceIl faut remettre à jour le mot de passe de l'utilisateur MySQL "debian-sys-maint"
En mode non conteneur il faut :
récupérer le nouveau mot de passe MySQL :
# grep password /etc/mysql/debian.cnf
se connecter à la console MySQL :
# mysqld_safe --skip-grant-tables & mysql -u root mysql
mettre à jour le mot de passe :
UPDATE user SET Password=PASSWORD('MOT_DE_PASSE_RECUPERE_AVEC_GREP') WHERE User='debian-sys-maint' ;
FLUSH PRIVILEGES ;
quitter la console :
\quit
ouCtrl + d
relancer MySQL :
# killall mysqld
attendre quelques secondes
# service mysql start
En mode conteneur il faut :
se connecter au conteneur bdd :
# ssh bdd
récupérer le nouveau mot de passe MySQL :
# grep password /etc/mysql/debian.cnf
se connecter à la console MySQL :
# mysqld_safe --skip-grant-tables & mysql -u root mysql
mettre à jour le mot de passe :
UPDATE user SET Password=PASSWORD('MOT_DE_PASSE_RECUPERE_AVEC_GREP') WHERE User='debian-sys-maint' ;
FLUSH PRIVILEGES ;
quitter la console :
\quit
ouCtrl + d
relancer MySQL :
# killall mysqld
attendre quelques secondes
# service mysql start
quitter le conteneur :
# exit
ouCtrl + d
Modifier le mot de passe d'un utilisateur en ligne de commande
Le mot de passe d'un utilisateur LDAP peut être modifié en ligne de commande avec la commande smbldap-passwd
.
Exemple
# smbldap-passwd <user>
Changing UNIX and samba passwords for <user>
New password:
Retype new password:
#
Impossible de trouver ClientScribe & ClientHorus
La commande apt-eole install client-scribe
renvoie le message "le paquet n'existe pas".
Truc & astuce
ClientScribe & ClientHorus étaient une expérimentation de client lourd pour GNU Linux sur la version EOLE 2.2 mais qu'elle n'a pas été poursuivie.
Les paquets client-scribe
et client-horus
n'existent plus.
Comment effectuer un changement de nom de domaine académique
Le changement du nom de domaine académique entraîne un dysfonctionnement de l'annuaire LDAP car la construction de l'annuaire utilise cette valeur et n'a lieu qu'une fois au moment de l'instance.
Pour connaître le nom de domaine utilisé dans l'annuaire :
# slapcat -f /etc/ldap/slapd.conf -o ldif-wrap=no | grep -E 'dn: ou=[^,]+,ou=education'
Le nom utilisé ici est ac-test
:
dn: ou=ac-test,ou=education,o=gouv,c=fr
Le nom de domaine Nom de domaine académique
se change dans l'interface de configuration du module dans l'onglet Général
.
Le suffixe peut être changé dans le même onglet à la ligne Suffixe du nom de domaine académique
.
Pour connaître la valeur de ces variables en ligne de commande :
# CreoleGet nom_academie
ac-test
# CreoleGet suffixe_domaine_academique
fr
Truc & astuce
La solution consiste à extraire l'annuaire, à faire la modification souhaitée dans tous le .ldif
, puis à injecter l'annuaire modifié.
Truc & astuce
Extraire l’annuaire :
Arrêt du service
# service slapd stop
Extraction vers ~root/full-ldap-old.ldif
:
# slapcat -f /etc/ldap/slapd.conf -o ldif-wrap=no > ~root/full-ldap-old.ldif
Truc & astuce
Remplacer toutes les occurrences de ou=ac-test par ou=ac-dijon et toutes les occurrences de ou : ac-test par ou : ac-dijon avec la commande :
# sed -e 's/ou=ac-test,/ou=ac-dijon,/g' -e 's/ou: ac-test,/ou=ac-dijon,/g' ~root/full-ldap-old.ldif > ~root/full-ldap-fixed.ldif
Truc & astuce
Vérifier l'absence (hors messagerie -i) de la chaîne ac-test dans le nouveau fichier :
# grep 'ac-test' ~root/full-ldap-fixed.ldif
Injection du nouvel annuaire avec les commandes suivantes :
Supprimer les anciens fichiers d'annuaire, sauf le fichier
/var/lib/ldap/DB_CONFIG
# rm -f /var/lib/ldap/[^D]*
Injecter l'annuaire corrigé
# slapadd -f /etc/ldap/slapd.conf -l ~root/full-ldap-fixed.ldif
-######### 47.59% eta 04s elapsed 03s spd 307.1 k/s
Closing DB...
Corriger le propriétaire des fichiers de la base de données
# chown -R openldap: /var/lib/ldap/
Redémarrer l'annuaire
# service slapd start
Truc & astuce
Vérifier le bon fonctionnement du service avec la commande diagnose.
Comment effectuer un changement de nom du serveur de fichier
Le changement du nom du contrôleur de domaine et/ou du nom du domaine Samba entraîne un dysfonctionnement de l'annuaire LDAP car la construction de l'annuaire utilise cette valeur et n'a lieu qu'une fois au moment de l'instance.
Pour connaître le nom du domaine Samba utilisé dans l'annuaire :
# slapcat -f /etc/ldap/slapd.conf -o ldif-wrap=no | grep "^sambaDomainName"
Le nom utilisé ici est dompedago
:
sambaDomainName: dompedago
Pour connaître le nom du contrôleur de domaine utilisé dans l'annuaire :
# slapcat -f /etc/ldap/slapd.conf -o ldif-wrap=no | grep -m1 'sambaShareURI'
Le nom utilisé ici est scribe
:
sambaShareURI: \\scribe\icones$
Le nom du contrôleur de domaine et le nom du domaine Samba sont configurés dans l'interface de configuration du module dans l'onglet Samba
.
Pour connaître la valeur de ces variables en ligne de commande :
# CreoleGet smb_netbios_name
scribe
# CreoleGet smb_workgroup
dompedago
Truc & astuce
La solution consiste à extraire l'annuaire, à faire la modification souhaitée dans tous le .ldif
, puis à injecter l'annuaire modifié.
Truc & astuce
Extraire l’annuaire après arrêt du service :
Arrêt du service
# service slapd stop
Extraction vers ~root/full-ldap-old.ldif
:
# slapcat -f /etc/ldap/slapd.conf -o ldif-wrap=no > ~root/full-ldap-old.ldif
Truc & astuce
Remplacer toutes les occurrences de scribe par nomnetbios avec la commande :
# sed -e 's/\\\\scribe\\/\\\\nomnetbios\\/g' ~root/full-ldap-old.ldif > ~root/full-ldap-prefixed.ldif
Truc & astuce
Remplacer toutes les occurrences de dompedago par nomworkgroup avec la commande :
# sed -e 's/=dompedago,/=nomworkgroup,/g' -e 's/sambaDomainName: dompedago/sambaDomainName: nomworkgroup/g' ~root/full-ldap-prefixed.ldif > ~root/full-ldap-fixed.ldif
Truc & astuce
Vérifier l'absence (hors messagerie -i) de la chaîne ac-test dans le nouveau fichier :
# grep 'scribe' ~root/full-ldap-prefixed.ldif
Injection du nouvel annuaire avec les commandes suivantes :
Supprimer les anciens fichiers d'annuaire, sauf le fichier
/var/lib/ldap/DB_CONFIG
# rm -f /var/lib/ldap/[^D]*
Injecter l'annuaire corrigé
# slapadd -f /etc/ldap/slapd.conf -l ~root/full-ldap-prefixed.ldif
-######### 47.59% eta 04s elapsed 03s spd 307.1 k/s
Closing DB...
Corriger le propriétaire des fichiers de la base de données
# chown -R openldap: /var/lib/ldap/
Redémarrer l'annuaire
# service slapd start
Truc & astuce
Vider le cache de Samba :
# net cache flush
Si cela ne suffit pas il faut supprimer les fichiers /var/lib/samba/wins.dat
et /var/cache/samba/browse.dat
:
# service samba stop
# rm -f /var/lib/samba/wins.dat /var/cache/samba/browse.dat
# service samba start
Truc & astuce
Vérifier le bon fonctionnement du service avec la commande diagnose.
Comment effectuer un changement de l'identifiant de l'établissement (UAI)
L'identifiant de l'établissement est une valeur verrouillée dans l'interface de configuration une fois le serveur instancié.
Il est vivement recommandé de ne pas éditer manuellement le fichier config.eol
pour éviter les erreurs de frappe ou de type de données.
Truc & astuce
Exporter puis importer le fichier de configuration courant permet de passer outre le verrouillage des variables.
Attention
Cette astuce demande une bonne maîtrise des implications que peut avoir le changement d'une valeur verrouillée. Et une valeur n'est jamais verrouillée sans raison.
Par exemple, le changement de l'identifiant de l'établissement ne se répercute pas sur l'annuaire dont le schéma n'est construit qu'une fois au moment de l'instance du serveur.
Exemple
Pour modifier la valeur verrouillée Identifiant de l'établissement
:
ouvrir l'interface de configuration du module ;
importer le fichier de configuration courant :
Fichier
→Importer une Configuration
→/etc/eole/config.eol
;modifier la valeur de l'identifiant de l'établissement ;
enregistrer la configuration :
Fichier
→Enregistrer la configuration
;procéder à une reconfiguration du serveur à l'aide de la commande
reconfigure
.
Le changement de l'identifiant de l'établissement (UAI) entraîne un dysfonctionnement de l'annuaire LDAP car la construction de l'annuaire utilise cette valeur et n'a lieu qu'une fois au moment de l'instance.
Pour connaître l'identifiant utilisé dans l'annuaire :
# slapcat -f /etc/ldap/slapd.conf -o ldif-wrap=no | grep "cn=edu"
L'UAI utilisé ici est 0000000A
:
dn: cn=edu,ou=local,ou=groupes,ou=0000000A,ou=ac-test,ou=education,o=gouv,c=fr
L'UAI est configuré dans l'interface de configuration du module dans l'onglet Général
.
Pour connaître la valeur de cette variable en ligne de commande :
# CreoleGet numero_etab
0000000A
Truc & astuce
La solution consiste à extraire l'annuaire, à faire la modification souhaitée dans tous le .ldif
, puis à injecter l'annuaire modifié.
Truc & astuce
Extraire l’annuaire après arrêt du service :
Arrêt du service
# service slapd stop
Extraction vers ~root/full-ldap-old.ldif
:
# slapcat -f /etc/ldap/slapd.conf -o ldif-wrap=no > ~root/full-ldap-old.ldif
Truc & astuce
Remplacer toutes les occurrences de 0000000A par 0000000B avec la commande :
# sed -e 's/ou=0000000A/ou=0000000B/g' -e 's/ou: 0000000A/ou: 0000000B/g' ~root/full-ldap-old.ldif > ~root/full-ldap-prefixed.ldif
Truc & astuce
Vérifier l'absence de la chaîne 0000000A dans le nouveau fichier :
# grep '0000000A' ~root/full-ldap-prefixed.ldif
Injection du nouvel annuaire avec les commandes suivantes :
Supprimer les anciens fichiers d'annuaire, sauf le fichier
/var/lib/ldap/DB_CONFIG
# rm -f /var/lib/ldap/[^D]*
Injecter l'annuaire corrigé
# slapadd -f /etc/ldap/slapd.conf -l ~root/full-ldap-prefixed.ldif
-######### 47.59% eta 04s elapsed 03s spd 307.1 k/s
Closing DB...
Corriger le propriétaire des fichiers de la base de données
# chown -R openldap: /var/lib/ldap/
Redémarrer l'annuaire
# service slapd start
Procéder à la reconfiguration du serveur pour la prise en compte du changement de la valeur de l'identifiant dans l'interface de configuration du module.
Truc & astuce
Vérifier le bon fonctionnement du service avec la commande diagnose.