Scénario #29624
Erreur reconfigure sur Seth + eole-gpo-script
100%
Description
sur un seth en version 2.7.1 (à jour en utilisant la procédure Maj-release),
j'ai systématiquement une erreur lors du reconfigure :
Samba/Seth reconfigure * Active Directory est initialisé, reload la configuration * Mise à jour du backend DNS Reading domain information DNS accounts already exist No zone file /var/lib/samba/bind-dns/dns/BUREAUTIQUE.IN.AC-DIJON.FR.zone DNS records will be automatically created DNS partitions already exist dns-smb-dc1 account already exists See /var/lib/samba/bind-dns/named.conf for an example configuration include file for BIND and /var/lib/samba/bind-dns/named.txt for further documentation required for secure DNS updates Finished upgrading DNS Samba/Seth reconfigure end run-parts: executing /usr/share/eole/postservice/26-actions reconfigure run-parts: executing /usr/share/eole/postservice/26-partages reconfigure run-parts: executing /usr/share/eole/postservice/30-gposcript reconfigure run-parts: /usr/share/eole/postservice/30-gposcript exited with return code 1 Erreur : postservice
Le problème provient du/des paquet(s) eole-gpo-*
en les désinstallant, plus d'erreurs.
si je les ré-installe, l'erreur se produit de nouveau.
Subtasks
Related issues
Associated revisions
Import du code Gpo_Script (importation/reg_to_xml)
Import du code GPO de la version 4.11
Utilisation des fonctions samba pour les Credentials
REF #29624
Utilisation de 'gpo-tool importation' sur Seth
REF #29624
Quick fix for ScribeAD (no CreoleGet in addc container)
Ref: #29624
Utilisation du Mdp et fallback kerberos sinon.
REF #29624
mise en commentaire de debug(s) car pas util en prod
REF #29624
trop de debug
REF #29624
History
#1 Updated by Joël Cuissinat over 3 years ago
- Parent task set to #29652
#2 Updated by Joël Cuissinat over 3 years ago
Pourrais-tu nous donner la sortie de la commande en mode "debug" :
bash -x /usr/share/eole/postservice/30-gposcript
#3 Updated by Joël Cuissinat over 3 years ago
- Description updated (diff)
- Assigned To set to Joël Cuissinat
#4 Updated by samuel morin over 3 years ago
voilà le résultat après ré-installation des paquets :
root@smb-dc1:~# bash -x /usr/share/eole/postservice/30-gposcript+ set -e + . /etc/eole/gposcript.conf ++ GPOSCRIPT=0 + . /etc/eole/samba4-vars.conf ++ AD_REALM=bureautique.in.ac-dijon.fr ++ AD_DOMAIN=bureautique ++ AD_HOST_NAME=smb-dc1 ++ AD_HOST_IP=172.30.96.30 ++ NOM_CARTE_NIC1=ens160 ++ AD_SERVER_ROLE='controleur de domaine' ++ BASEDN=DC=bureautique,DC=in,DC=ac-dijon,DC=fr ++ NTP_SERVERS=ntp.ac-dijon.fr ++ AD_ADDITIONAL_DC_IP='172.30.96.32 ' ++ AD_DOMAIN_SID= ++ AD_ADDITIONAL_DC=non ++ AD_DNS_BACKEND=BIND9_DLZ ++ AD_ADMIN=Administrator ++ AD_ADMIN_PASSWORD_FILE=/var/lib/samba/.eole-ad-dc ++ AD_HOST_KEYTAB_FILE=/var/lib/samba/eole-ad-dc.keytab ++ ACTIVER_AD_HOMES_SHARE=non ++ ACTIVER_AD_PROFILES_SHARE=non ++ AD_HOMES_SHARE_HOST_NAME=smb-filer1 ++ AD_PROFILES_SHARE_HOST_NAME=smb-filer1 ++ AD_HOME_SHARE_PATH=/home/adhomes ++ AD_PROFILE_SHARE_PATH=/home/adprofiles ++ AD_INSTANCE_LOCK_FILE=/var/lib/samba/.instance_ok ++ AD_BACKEND_STORE=tdb ++ AD_PLAINTEXT_SECRETS=non + KEYFILE=/tmp/gpoinit.keytab + '[' -f /tmp/gpoinit.keytab ']' + GPONAME=eole_script ++ cut -d ' ' -f2 ++ grep '^cn: {' ++ ldbsearch -H /var/lib/samba/private/sam.ldb '(&(objectClass=groupPolicyContainer)(displayname=eole_script))' cn + GPOID='{89573784-A827-40D7-B367-3FCD0E39B1B3}' ++ tr a-z A-Z ++ echo bureautique.in.ac-dijon.fr + USER=Administrator@BUREAUTIQUE.IN.AC-DIJON.FR + SCRIPTS_DIR=/home/sysvol/bureautique.in.ac-dijon.fr/scripts + GPOSCRIPT_DATA_DIR=/var/tmp/gpo-script + HASH=/var/tmp/gpo-script/eole_script_hash + FLAG=/var/tmp/gpo-script/update_eole_script + '[' 0 -eq 0 ']' + makedirs + '[' -d /home/sysvol/bureautique.in.ac-dijon.fr/scripts ']' + for dir in users groups machines os + '[' -d /home/sysvol/bureautique.in.ac-dijon.fr/scripts/users ']' + for dir in users groups machines os + '[' -d /home/sysvol/bureautique.in.ac-dijon.fr/scripts/groups ']' + for dir in users groups machines os + '[' -d /home/sysvol/bureautique.in.ac-dijon.fr/scripts/machines ']' + for dir in users groups machines os + '[' -d /home/sysvol/bureautique.in.ac-dijon.fr/scripts/os ']' + gpo_already_exists + kinituser + samba-tool domain exportkeytab /tmp/gpoinit.keytab --principal=Administrator@BUREAUTIQUE.IN.AC-DIJON.FR + kinit Administrator@BUREAUTIQUE.IN.AC-DIJON.FR -k -t /tmp/gpoinit.keytab ++ grep -q 'display name : eole_script' ++ samba-tool gpo listall -k 1 + kdestroyuser + kdestroy + rm -f /tmp/gpoinit.keytab + return 0 + delete_flag + '[' -e /var/tmp/gpo-script/update_eole_script ']' + rm -f /var/tmp/gpo-script/update_eole_script + return 0 + echo 'Remise à zéro du GPO EOLE "eole_script"' Remise à zéro du GPO EOLE "eole_script" + delete_gpo eole_script + '[' -z '{89573784-A827-40D7-B367-3FCD0E39B1B3}' ']' + echo 'Suppression du GPO EOLE "eole_script"' Suppression du GPO EOLE "eole_script" + kinituser + samba-tool domain exportkeytab /tmp/gpoinit.keytab --principal=Administrator@BUREAUTIQUE.IN.AC-DIJON.FR + kinit Administrator@BUREAUTIQUE.IN.AC-DIJON.FR -k -t /tmp/gpoinit.keytab + gpo_name=eole_script + samba-tool gpo del '{89573784-A827-40D7-B367-3FCD0E39B1B3}' -k 1 GPO {89573784-A827-40D7-B367-3FCD0E39B1B3} is linked to containers Removed link from DC=bureautique,DC=in,DC=ac-dijon,DC=fr. GPO {89573784-A827-40D7-B367-3FCD0E39B1B3} deleted. + kdestroyuser + kdestroy + rm -f /tmp/gpoinit.keytab + create_gpo eole_script + echo 'Enregistrement du GPO EOLE "eole_script"' Enregistrement du GPO EOLE "eole_script" + kinituser + samba-tool domain exportkeytab /tmp/gpoinit.keytab --principal=Administrator@BUREAUTIQUE.IN.AC-DIJON.FR + kinit Administrator@BUREAUTIQUE.IN.AC-DIJON.FR -k -t /tmp/gpoinit.keytab ++ samba-tool gpo create eole_script -k 1 ERROR: A GPO already existing with name 'eole_script' + msg=
#5 Updated by Joël Cuissinat over 3 years ago
- Status changed from Nouveau to En cours
#6 Updated by Joël Cuissinat over 3 years ago
- aca.dc1-2.7.0-instance-default
- apt-eole install eole-gpo-script
- reconfigure
- time Maj-Release #real 5m34,946s
- reconfigure
run-parts: executing /usr/share/eole/postservice/30-gposcript reconfigure Remise à zéro du GPO EOLE "eole_script" Suppression du GPO EOLE "eole_script" GPO {1D6CCE4C-93F6-43B4-B08E-9F201F125BE9} is linked to containers Removed link from DC=domseth,DC=ac-test,DC=fr. GPO {1D6CCE4C-93F6-43B4-B08E-9F201F125BE9} deleted. Enregistrement du GPO EOLE "eole_script" run-parts: executing /usr/share/eole/postservice/99-check-console-setup reconfigure
Il faudrait essayer de nettoyer le GPO et ses fichiers à la main ?
#7 Updated by Joël Cuissinat over 3 years ago
- Subject changed from erreur reconfigure to Erreur reconfigure sur Seth + eole-gpo-script
- Status changed from En cours to Nouveau
- Assigned To deleted (
Joël Cuissinat) - Parent task changed from #29652 to #29749
#8 Updated by Gilles Grandgérard over 3 years ago
Humm..
set -e deleteflag sans test avec un return 1
ça va bugger fort
#9 Updated by Gilles Grandgérard over 3 years ago
sur aca.dc1 + dc2 + file <== important
sur aca.dc1 :
- instance avec import
- apt-eole install eole-gpo-script
- reconfigure
...
run-parts: executing /usr/share/eole/postservice/30-gposcript reconfigure Remise à zéro du GPO EOLE "eole_script" Suppression du GPO EOLE "eole_script" GPO {0F107615-D117-411F-9AA2-F9FB975E2664} is linked to containers Removed link from DC=domseth,DC=ac-test,DC=fr. GPO {0F107615-D117-411F-9AA2-F9FB975E2664} deleted. Enregistrement du GPO EOLE "eole_script" ERROR: GPO '{61627293-3D27-4F26-B9CE-2FC27EA9D1DC}' does not exist run-parts: /usr/share/eole/postservice/30-gposcript exited with return code 255 Erreur : postservice
#10 Updated by Gilles Grandgérard over 3 years ago
Origine du problème :
- Le code initial de gpo-script a été mis en œuvre sur un module Scribe (donc en mono serveur AD)
- Le problème n’apparaît que dans les infra avec plusieurs DC
- Le script 'importation.py' crée une GPO 'eole_scripts' puis la mets à jours plusieurs fois (jusqu'à 7 fois !). Le problème vient de la "non" réplication instantané du Sysvol.
Le script doit s’exécuter sur le DC1 uniquement.
Mais, ce n'est pas suffisant, car nous avons un 'cluster' de DC, donc chaque commande 'samba-tool' passe d'un DC à l'autre (DC1 --> DC2 --> .. --> DC1 ).
Or, entre 2 commandes le dossier 'sysvol' n'est pas forcément mis à jour... d’où, l'erreur de type 'deltree' sur un répertoire de GPO inconnu !
- La solution est donc de s’assurer que la commande 'importation.py' se fasse dans un mode 'transactionnelle'. toutes les commandes sont faites dans un même context.
Solution :
- récupération du code 'restauration' de GPO de samba 4.11. Cela permet de comprendre comment la copie doit se faire ....
- portage du compte 30-gposcript dans un fichier python 'importation.py'
- Ajout des sous fonctions a Gpo-Tool comme suit :
Usage: gpo-tool <subcommand>
Eole Samba Administration Tool.
Options:
-h, --help show this help message and exit
Version Options:
-V, --version Display version number
Available Subcommands:
gpo411 - Group Policy Object (GPO) Management (Samba 4.11).
importation - Group Policy Object (GPO) EOLE Scripts.
policy - Group Policy Object (GPO) Management.
For more help on a specific subcommand, please type: gpo-tool <subcommand> (-h|--help)
- Import du code Gpo_Script (importation/reg_to_xml)
- Utilisation des fonctions samba pour les Credentials
#11 Updated by Gilles Grandgérard over 3 years ago
- Status changed from Nouveau to Résolu
#12 Updated by Gilles Grandgérard over 3 years ago
- Related to Demande #24772: eole-gpo-script : traceback à la suppression du GPO si elle est "tenue" par quelqu'un added
#13 Updated by Gilles Grandgérard over 3 years ago
- Related to Scénario #29493: Passer nos outils "GPO" en python3 sur EOLE 2.8.0 added
#14 Updated by Gilles Grandgérard over 3 years ago
- Related to Tâche #29016: Permettre la mise à jour du GPO en cas de changement. added
#15 Updated by Gilles Grandgérard over 3 years ago
- Related to Tâche #28799: Exécuter le script 30-gposcript sur le maître dans le cas d’un module sans conteneur addc added
#16 Updated by Gilles Grandgérard over 3 years ago
- Related to Scénario #29747: L’utilisation de kerberos doit dispenser de saisir un mot de passe sur Eole 2.8.0 added
#17 Updated by Joël Cuissinat over 3 years ago
- Parent task deleted (
#29749)
#18 Updated by Joël Cuissinat over 3 years ago
- Tracker changed from Tâche to Scénario
- Due date set to 04/10/2020
- Assigned To set to Gilles Grandgérard
- Release set to EOLE 2.7.1.3
- Story points set to 1.0
#19 Updated by Joël Cuissinat over 3 years ago
- Target version changed from sprint 2020 13-15 Equipe MENSR to sprint 2020 16-18 Equipe MENSR
#20 Updated by Gilles Grandgérard over 3 years ago
- Target version changed from sprint 2020 16-18 Equipe MENSR to sprint 2020 19-21 Equipe MENSR
#21 Updated by Gilles Grandgérard over 3 years ago
- Status changed from Résolu to Terminé (Sprint)
#22 Updated by Gilles Grandgérard almost 3 years ago
- Related to Tâche #31114: Depuis 2.7.1, les GPO registres sont appliquées partiellement (EnableLinkedConnections) added