Comment migrer des ports locaux lors de la migration d'impression – Bien choisir son serveur d impression

Bonjour Askperf! Je m'appelle Tingu, et aujourd'hui je vais parler d'un problème intéressant de migration d'impression que j'ai eu il y a quelques semaines.

Nous avons eu un cas où un serveur d'applications fonctionnait sous Windows 2003, où plus de 400 files d'attente d'impression ont été créées. Le port a été créé en tant que port local pour transférer le travail d'impression en cas d'échec, comme indiqué dans l'article Technet «Transfert de documents vers une autre imprimante».

Le port a été configuré en tant que nom_serveur_impression imprimante. Voir l'exemple de capture d'écran ci-dessous:

Ici, nous essayions de déplacer l'application vers un serveur 2012 R2 et voulions migrer toutes les files d'attente d'impression vers le nouveau serveur. Nous avons utilisé printbrm pour migrer toutes les imprimantes locales. Mais le problème que nous avons rencontré est qu'il n'a pas migré les ports locaux.

Lorsque nous avons commencé la migration, nous n'avons pas vu les ports locaux répertoriés:

De plus, après la migration, le port n'était pas présent:

Nous avons essayé d'ajouter le port manuellement, mais nous avons donné l'erreur «le port existe déjà». En outre, le Registre indique que l'imprimante est configurée pour utiliser le redirecteur.

Nous avions vraiment besoin de faire migrer les ports locaux car il peut être fastidieux de recréer tous les ports et de les mapper à leur file d'attente d'impression respective.

Nous avons créé un laboratoire de test et avons vu le même problème lors de la migration. Peu importe à partir de quel système d'exploitation nous migrions. Pendant la migration, nous avons vu un ID d'événement 81 sur le serveur 2012 R2. (Cet événement n'est pas déclenché si vous migrez vers 2003 ou 2008R2):

Nom du journal: Microsoft-Windows-PrintBRM / Admin
Source: Microsoft-Windows-PrintBRM
Date: 25/12/2014
ID de l'événement: 81
Catégorie de tâche: restaurer
Niveau: erreur
Mots-clés: file d'attente d'impression
Utilisateur: Joe
Ordinateur: 12345

La description:
Printbrm.exe (l'Assistant Migration d'imprimante ou l'outil de ligne de commande) n'a pas pu restaurer le test de la file d'attente d'impression. Le processus de restauration se poursuivra, en ignorant cette file d'attente. Erreur: 0x80070057 qui est «paramètre non valide»
Erreur: 0x80070057 qui pointe vers un «paramètre non valide»

Nous avons donc déterminé que lorsque vous utilisez printbrm pour la migration, il ne migre pas les ports locaux. La raison en est que le port local est spécifique au serveur et qu'il peut provoquer des conflits ou ne pas fonctionner si vous le migrez vers un autre serveur. Mais dans notre cas, il s'agit d'un transitaire, et nous avons besoin qu'il soit migré.

Des tests supplémentaires ont révélé que si un port local auquel l'imprimante est mappée est déjà présent sur le serveur de destination, les imprimantes migrées utiliseront ce port local pour les imprimantes.

Par exemple: sur le serveur source, vous avez une imprimante mappée sur LPT1 et le serveur de destination a un port LPT1 disponible; puis après la migration, l'imprimante sera configurée pour utiliser ce port. Nous avons créé un redirecteur sur le serveur de destination pour une imprimante de test avant la migration, et après l'importation de l'imprimante, nous constatons que le port est mappé en conséquence.

Maintenant, la question est de savoir comment migrer plusieurs ports locaux à la fois?

Voici ce que nous avons fait…

Depuis la gestion de l'impression sur un serveur 2012 R2, nous avons ajouté le serveur 2003. Ensuite, nous avons exporté la liste des ports dans un fichier .csv:

Cela nous a donné la liste de tous les ports devant être migrés. Nous avons ensuite créé un script pour ajouter les ports au serveur de destination. Comme dans notre cas, le serveur de destination était le serveur Windows 2012 R2, nous avons donc utilisé la commande powershell Add-PrinterPort.

Nous avons copié tous les ports requis dans le bloc-notes et l'avons enregistré en tant que fichier .ps1:

Nous avons exécuté le fichier .ps1 en tant qu'administrateur, et tous les ports ont été créés sur le serveur de destination!

Remarque Si vous avez déjà essayé la migration avant de créer les ports sur le serveur de destination, il se peut que l'erreur «port existe déjà» s'affiche lors de l'exécution de la commande powershell. Vous devrez peut-être supprimer les imprimantes migrées et redémarrer le spouleur, puis réessayer la commande powershell pour terminer la création du port.

Après cela, nous avons suivi la procédure de migration normale et toutes les imprimantes ont été mappées sur le bon port.

J'espère que ces informations vous seront utiles la prochaine fois que vous effectuerez une migration d'imprimante.

-Tingu

Laisser un commentaire