- forum
- PowerShell
- Entraide pour les initiés
- remplacement de fichier puis lancement de service qui ne fonctionne plus!!!
Question remplacement de fichier puis lancement de service qui ne fonctionne plus!!!
- Scirop
- Auteur du sujet
- Hors Ligne
- Nouveau membre
-
Réduire
Plus d'informations
- Messages : 8
- Remerciements reçus 0
il y a 2 ans 5 mois - il y a 2 ans 5 mois #33640
par Scirop
Bonjour,
Nous avons un script qui parcours un serveur, mets en place des fichiers de configuration et lance des services en fonction de ces fichiers de configuration.
Ce script est utilisé depuis des années sans souci
Depuis quelques temps (entre le 22/10 et le 29/10) le script a arrêté de fonctionner.
Il s'agit des lignes suivantes:
Que j'ai traduit dans une version allégée:
La pause (start-sleep) avant de lancer le service a été ajoutée depuis l'apparition du problème
Le problème se produit aussi bien dans le powershell du serveur 5.1.17763.4974, qu'en powershell 7
Pour que ça fonctionne on peut mettre en place le fichier ini avant de lancer le script ou bien arréter le script pendant le start-sleep et lancer le service à la main.
C'est donc que lors du lancement de service, le fichier ini n'est pas mis à jour, ou n'est pas lu malgrès la pause qui a été ajoutée.
Qu'est -ce qui peut bien justifier ça??? Qu'est-ce que je peux tenter pour corriger/contourner le problème?
Nous avons un script qui parcours un serveur, mets en place des fichiers de configuration et lance des services en fonction de ces fichiers de configuration.
Ce script est utilisé depuis des années sans souci
Depuis quelques temps (entre le 22/10 et le 29/10) le script a arrêté de fonctionner.
Il s'agit des lignes suivantes:
Que j'ai traduit dans une version allégée:
Copy-Item -Path ("D:\Common\0000\lbr\startup_\") ("D:\Common\0000\lbr\startup\") -Recurse
Copy-Item -Path ("D:\Common\0000\lbr\orthopv5_MAJ_PROD.ini") ("D:\Common\0000\lbr\orthopv5.ini") -Force
write-host "pause apres changement de INI avant lancement service"
Start-Sleep -Seconds 15
# Lancement du service de mise à jour automatique
Start-Service -Name "MustG5_Maj_0000"
Copy-Item -Path ("D:\Common\0000\lbr\orthopv5_ORIGINAL.ini") ("D:\Common\0000\lbr\orthopv5.ini")
Remove-Item -Path ("D:\Common\0000\lbr\startup\")La pause (start-sleep) avant de lancer le service a été ajoutée depuis l'apparition du problème
Le problème se produit aussi bien dans le powershell du serveur 5.1.17763.4974, qu'en powershell 7
Pour que ça fonctionne on peut mettre en place le fichier ini avant de lancer le script ou bien arréter le script pendant le start-sleep et lancer le service à la main.
C'est donc que lors du lancement de service, le fichier ini n'est pas mis à jour, ou n'est pas lu malgrès la pause qui a été ajoutée.
Qu'est -ce qui peut bien justifier ça??? Qu'est-ce que je peux tenter pour corriger/contourner le problème?
Pièces jointes :
Dernière édition: il y a 2 ans 5 mois par Scirop. Raison: correction de la mise en page de l'extrait de code
Connexion ou Créer un compte pour participer à la conversation.
- Arnaud Petitjean
-
- Hors Ligne
- Modérateur
-
il y a 2 ans 5 mois #33655
par Arnaud Petitjean
MVP PowerShell et créateur de ce magnifique forum
Auteur de 6 livres PowerShell aux éditions ENI
Fondateur de la société Start-Scripting
Besoin d'une formation PowerShell ?
Réponse de Arnaud Petitjean sur le sujet remplacement de fichier puis lancement de service qui ne fonctionne plus!!!
Bonjour Scirop,
Pour que nous puissions t'aider au mieux, pourrais-tu nous partager le message d'erreur complet s'il y en a un ?
En général ça aide énormément car les messages d'erreur de PowerShell sont très clairs.
Merci
Arnaud
PS : merci de bien vouloir te présenter dans le forum adhoc
Pour que nous puissions t'aider au mieux, pourrais-tu nous partager le message d'erreur complet s'il y en a un ?
En général ça aide énormément car les messages d'erreur de PowerShell sont très clairs.
Merci
Arnaud
PS : merci de bien vouloir te présenter dans le forum adhoc
MVP PowerShell et créateur de ce magnifique forum
Auteur de 6 livres PowerShell aux éditions ENI
Fondateur de la société Start-Scripting
Besoin d'une formation PowerShell ?
Connexion ou Créer un compte pour participer à la conversation.
- Scirop
- Auteur du sujet
- Hors Ligne
- Nouveau membre
-
Réduire
Plus d'informations
- Messages : 8
- Remerciements reçus 0
il y a 2 ans 5 mois #33661
par Scirop
Réponse de Scirop sur le sujet remplacement de fichier puis lancement de service qui ne fonctionne plus!!!
Bonjour,
Merci de te pencher sur mon problème qui est tellement incroyable à mes yeux...
Je n'ai pas de message d'erreur.
La copie du fichier ini se fait bien (puisque si je l'ouvre pendant le start-sleep, le orthopv5.ini est bien remplacé par le orthopv5_MAJ_prod.ini)
Le service se lance bien, mais il ne tient pas compte du remplacement de fichier; il se comporte comme avec le orthopv5_original.ini.
Merci de te pencher sur mon problème qui est tellement incroyable à mes yeux...
Je n'ai pas de message d'erreur.
La copie du fichier ini se fait bien (puisque si je l'ouvre pendant le start-sleep, le orthopv5.ini est bien remplacé par le orthopv5_MAJ_prod.ini)
Le service se lance bien, mais il ne tient pas compte du remplacement de fichier; il se comporte comme avec le orthopv5_original.ini.
Connexion ou Créer un compte pour participer à la conversation.
- Arnaud Petitjean
-
- Hors Ligne
- Modérateur
-
il y a 2 ans 5 mois #33666
par Arnaud Petitjean
MVP PowerShell et créateur de ce magnifique forum
Auteur de 6 livres PowerShell aux éditions ENI
Fondateur de la société Start-Scripting
Besoin d'une formation PowerShell ?
Réponse de Arnaud Petitjean sur le sujet remplacement de fichier puis lancement de service qui ne fonctionne plus!!!
C'est curieux que ce soit arrêté subitement de marcher.
As tu regardé ce qu'il y a dans tes logs ?
Par ailleurs, pourquoi ne pas arrêter le service ou faire un Restart-Service au lieu d'un Start-Service ?
As-tu essayé de faire l'action manuellement pour voir s'il n'y a pas un message d'erreur qui serait passé inaperçu ?
Arnaud
As tu regardé ce qu'il y a dans tes logs ?
Par ailleurs, pourquoi ne pas arrêter le service ou faire un Restart-Service au lieu d'un Start-Service ?
As-tu essayé de faire l'action manuellement pour voir s'il n'y a pas un message d'erreur qui serait passé inaperçu ?
Arnaud
MVP PowerShell et créateur de ce magnifique forum
Auteur de 6 livres PowerShell aux éditions ENI
Fondateur de la société Start-Scripting
Besoin d'une formation PowerShell ?
Connexion ou Créer un compte pour participer à la conversation.
- Scirop
- Auteur du sujet
- Hors Ligne
- Nouveau membre
-
Réduire
Plus d'informations
- Messages : 8
- Remerciements reçus 0
il y a 2 ans 5 mois #33671
par Scirop
Réponse de Scirop sur le sujet remplacement de fichier puis lancement de service qui ne fonctionne plus!!!
Je suis bien d'accord. ça fonctionnait parfaitement depuis plusieurs années (2-3 ans) il y a eu quelques évolutions importantes (gestion de plusieurs serveurs, système de mise à jour différentiés...), mais les dernières évolutions datent d'il y a quelques mois et cela fonctionnait encore.
Mais du jour au lendemain. Plus moyen de faire fonctionner le système.
Le service ne tourne pas en général.
Le dossier est en générale organisé pour lancer l'application en mode manuel.
Mais lors de mises à jour le script de mise à jour dont est extrait le système ci-dessus est lancé.
Oh purée, j'ai trouvé!!!
Après avoir lancé le service on remet le fichier ini dans son état initial...
Soit le serveur est plus lent pour lancer le service, soit il est plus rapide pour re-remplacer le fichier!
en mettant une pause de 1s après le lancement du service ça passe.
Merci.
Le fait d'avoir creusé en en parlant m'a aidé à retrouver la voie!
Mais du jour au lendemain. Plus moyen de faire fonctionner le système.
Le service ne tourne pas en général.
Le dossier est en générale organisé pour lancer l'application en mode manuel.
Mais lors de mises à jour le script de mise à jour dont est extrait le système ci-dessus est lancé.
Oh purée, j'ai trouvé!!!
Après avoir lancé le service on remet le fichier ini dans son état initial...
Soit le serveur est plus lent pour lancer le service, soit il est plus rapide pour re-remplacer le fichier!
en mettant une pause de 1s après le lancement du service ça passe.
Merci.
Le fait d'avoir creusé en en parlant m'a aidé à retrouver la voie!
Connexion ou Créer un compte pour participer à la conversation.
- Arnaud Petitjean
-
- Hors Ligne
- Modérateur
-
il y a 2 ans 5 mois #33673
par Arnaud Petitjean
MVP PowerShell et créateur de ce magnifique forum
Auteur de 6 livres PowerShell aux éditions ENI
Fondateur de la société Start-Scripting
Besoin d'une formation PowerShell ?
Réponse de Arnaud Petitjean sur le sujet remplacement de fichier puis lancement de service qui ne fonctionne plus!!!
Super ! Je suis content que tu aies pu résoudre ton problème (même si je n'ai rien fait
).
Cela étant dit, je n'aime pas trop les solutions à base de temporisation car c'est en général pas très fiable. La preuve...
Il serait mieux de faire une boucle qui attends l'arrêt ou le redémarrage du service certainement. Non ? (désolé si je n'ai pas saisi tout le contexte)
Arnaud
Cela étant dit, je n'aime pas trop les solutions à base de temporisation car c'est en général pas très fiable. La preuve...
Il serait mieux de faire une boucle qui attends l'arrêt ou le redémarrage du service certainement. Non ? (désolé si je n'ai pas saisi tout le contexte)
Arnaud
MVP PowerShell et créateur de ce magnifique forum
Auteur de 6 livres PowerShell aux éditions ENI
Fondateur de la société Start-Scripting
Besoin d'une formation PowerShell ?
Les utilisateur(s) suivant ont remercié: Frédéric FOUCAN
Connexion ou Créer un compte pour participer à la conversation.
- forum
- PowerShell
- Entraide pour les initiés
- remplacement de fichier puis lancement de service qui ne fonctionne plus!!!
Temps de génération de la page : 0.079 secondes
- Vous êtes ici :
-
Accueil
-
forum
-
PowerShell
-
Entraide pour les initiés
- remplacement de fichier puis lancement de service qui ne fonctionne plus!!!