Connexion

Besoin d'aide ? Une question ? Un avis ? Rejoignez nous sur notre salon IRC pour clavarder

Forum

Système et matériels » Imprimantes scanners et Appareils Photo [Réglé] Quels changements dans CUPS recemment ? plus d'impression depuis quelques semaines

Papoteur Membre non connecté

Rang

Avatar

Modérateur Équipe Mageia

Inscrit le : 03/10/2011 à 22h16

Localisation : Metz

Messages: 8019

Le 29/12/2017 à 22h18

Reprise du message précédent

Bonsoir,
je pense qu'il serait utile de faire un rapport de bogue sur ghostscript, et si ça débouche sur celui de Mageia afin de provoquer une mise à jour.
Mais c'est toi qui vois.


Yves
   
ylyco Membre non connecté

Rang

Avatar

Inscrit le : 31/12/2014 à 21h51

Messages: 87

Le 30/12/2017 à 09h25
Je viens de poster sur :
https://bugs.ghostscript.com/show_bug.cgi?id=698837

N'étant pas habitué à faire ce genre de démarche, je ne suis pas sûr que cela porte ses fruits...
Peut être aurai-je une réponse dans les prochains jours.

Ce qui m'étonne, c'est que je sois un des rares, voire le seul, à avoir le problème ?
   
Papoteur Membre non connecté

Rang

Avatar

Modérateur Équipe Mageia

Inscrit le : 03/10/2011 à 22h16

Localisation : Metz

Messages: 8019

Le 30/12/2017 à 22h19
Bonsoir,
Je pense qu'il faut que tu précises le pilote et l'imprimante que tu utilises.


Yves
   
ylyco Membre non connecté

Rang

Avatar

Inscrit le : 31/12/2014 à 21h51

Messages: 87

Le 31/12/2017 à 09h07
Merci pour le conseil Papoteur : ajout apporté. Merci.
   
ylyco Membre non connecté

Rang

Avatar

Inscrit le : 31/12/2014 à 21h51

Messages: 87

Le 11/01/2018 à 16h02
J'ai donc contacté la liste de Ghostscript, dont voici une partie de la réponse :
Code TEXT :
 
You may have to discuss this with someone in the CUPS user group, to determine how to capture the intermediate file and the Ghostscript command line. I am aware that it is possible to do this, I can't tell you how.
 


J'ai donc contacté la liste de Cups, et j'ai eu la réponse :
Code TEXT :
 
Unfortunately, this is a Ghostscript problem and not a CUPS problem.  I'd start with your Linux distribution's support page since it is probably a packaging issue in the new version of Ghostscript.
 


Je suis alors tombé sur cette page : https://bugs.mageia.org/show_bug.cgi?id=21630

Ce qui m'a intéressé, c’était surtout la partie indiquant les relations de paquets entre cups/ghostscript :
Code TEXT :
 
Updated packages in 6/core/updates_testing:
========================
ghostscript-9.20-3.1.mga6
ghostscript-dvipdf-9.20-3.1.mga6
ghostscript-common-9.20-3.1.mga6
ghostscript-X-9.20-3.1.mga6
ghostscript-module-X-9.20-3.1.mga6
lib(64)gs9-9.20-3.1.mga6
lib(64)gs-devel-9.20-3.1.mga6
lib(64)ijs1-0.35-122.1.mga6
lib(64)ijs-devel-0.35-122.1.mga6
ghostscript-doc-9.20-3.1.mga6
 


J'ai tenté de downgrader Cups 2.2.4, et aussi les paquets dépendants, avec les commandes suivantes :
Code BASH :
 
urpmi --downgrade ghostscript-9.20-3.mga6.x86_64 ghostscript-X-9.20-3.mga6.x86_64 ghostscript-common-9.20-3.mga6.x86_64 ghostscript-fonts-8.11-21.mga6.noarch ghostscript-module-X-9.20-3.mga6.x86_64
urpmi --downgrade cups-filesystem-2.2.4-1.mga6.noarch python3-cups-1.9.73-2.mga6.x86_64 libcups2-2.2.6-1.mga6.i586 cups-common-2.2.4-1.mga6.x86_64 cups-2.2.4-1.mga6.x86_64 lib64cups-filters1-1.13.4-2.mga6.x86_64 lib64cups2-2.2.4-1.mga6.x86_64 cups-filters-1.13.4-2.mga6.x86_64 cups-pk-helper-0.2.6-1.mga6.x86_64
urpmi --downgrade lib64gs9-9.20-3.mga6.x86_64 lib64ijs1-0.35-122.mga6.x86_64 
 


Et du coup j'ai pu imprimer à nouveau avec ma Dell1320c... impeccable !

Puis j'ai voulu faire une mise à jour de mon système, pour avoir les derniers paquets que je venais de downgrader :


J'ai relancé le service Cups maintenant en 2.2.6.
J'ai essayé d'imprimer une page de test : à nouveau l'erreur d'impression est revenue :
Code TEXT :
 
D [11/Jan/2018:15:50:26 +0100] [Job 523] END GCUnrecoverable error: undefined in .currentglobal
D [11/Jan/2018:15:50:26 +0100] [Job 523] Operand stack:
D [11/Jan/2018:15:50:26 +0100] [Job 523] --nostringval--
 


J'en reviens donc à cette correction de bug : https://bugs.mageia.org/show_bug.cgi?id=21630
J'imagine que ce correctif génère ce nouveau problème ?...

J'aimerai bien savoir si je suis le seul à l'avoir ?..
.

Remarque :
j'ai remis mes paquets Cups/Ghostscripts en 2.2.4/9.20 (qui seulement fonctionne chez moi) en attendant d'avoir une réponse...
Edité par ylyco Le 11/01/2018 à 16h07
   
Papoteur Membre non connecté

Rang

Avatar

Modérateur Équipe Mageia

Inscrit le : 03/10/2011 à 22h16

Localisation : Metz

Messages: 8019

Le 11/01/2018 à 19h34
Bonjour,
On aime ce genre de réponse, c'est pas chez nous va te plaindre chez le voisin...
J'ai trouvé cette page qui détaille comment décortiquer un problème d'impression. Elle me semble un bon début, même si je n'ai pas exploré complètement.
https://en.opensuse.org/SDB:How_to_Report_a_Printing_Issue


Yves
   
ylyco Membre non connecté

Rang

Avatar

Inscrit le : 31/12/2014 à 21h51

Messages: 87

Le 12/01/2018 à 11h59
Bon je ne m'en sorts pas avec la liste de Ghostscript... je ne comprends pas ce qu'ils me demandent : un " input file ", mais je ne sais pas quoi exactement.
Voir l'échange sur le lien https://bugs.ghostscript.com/show_bug.cgi?id=698837

Je laisse tomber...

Peut être qu'un autre utilisateur plus qualifié que moi, si ce problème d'impression est présent ailleurs que chez moi, arrivera à trouver une solution ?...
Edité par ylyco Le 12/01/2018 à 12h02
   
Papoteur Membre non connecté

Rang

Avatar

Modérateur Équipe Mageia

Inscrit le : 03/10/2011 à 22h16

Localisation : Metz

Messages: 8019

Le 12/01/2018 à 13h58
Bonjour,
Je crois que tu n'es pas loin du but.
Tu as réussi à capturer le fichier appout lorsque tu as envoyé "Hello". Il faudrait maintenant capturer l'impression d'un "vrai" fichier. De préférence un truc assez léger. Tu es censé récupérer un fichier Postscript.
Citation :
[root@localhost regis]# echo Hello | lp -d Dell1320c
request id is Dell1320c-533 (0 file(s))
[root@localhost regis]# ls -l /var/spool/cups
total 84
...
-rw-r----- 1 root lp 6 janv. 12 10:39 d00533-001
drwxrwx--T 2 root lp 4096 janv. 12 10:31 tmp/
[root@localhost regis]# cp /var/spool/cups/d00533-001 ~/appout
[root@localhost regis]# chmod 777 ~/appout
[root@localhost regis]# cupsenable Dell1320c
[root@localhost regis]# file ~/appout
/root/appout: ASCII text
[root@localhost regis]# cat ~/appout
Hello

Tout ce qu'ils attendent est le fichier appout lorsque l'erreur apparaît et éventuellement le fichier source et l'indication de l'application. N'y mets pas d'information confidentielle, évidemment.


Yves
   
Papoteur Membre non connecté

Rang

Avatar

Modérateur Équipe Mageia

Inscrit le : 03/10/2011 à 22h16

Localisation : Metz

Messages: 8019

Le 12/01/2018 à 14h14
Dans le commentaire 11, on te demande également d'appliquer les conseils du paragraphe suivant. Je le cite et le traduis.
Citation :
Getting the data which would go to the printer

Another important piece of data for debugging printing problems is the data which is supposed to be sent to the printer. In the previous section we captured what the application has sent to CUPS. CUPS applies several filters to this data to convert it into the printer's native language. Here we capture the result of these filters:

Activate printing into a file by adding a line containing "FileDevice yes" to /etc/cups/cups-files.conf and restarting CUPS by the command
$ sudo restart cups

Clone the queue of the printer with problems. The clone should print into a file and not to the actual printer, but should use the same driver, so that the same filters get applied. Use the command:
$ lpadmin -p test -E -v file:/tmp/printout -P /etc/cups/ppd/<queue name>.ppd
Replace "<queue name>" by the name of the queue with the problem. The clone has also exactly the same default settings as the original queue.

Print the job which failed to the new print queue "test". If you have selected options in the print dialog, use the same options as you used when you encountered the problem. Wait until the job finishes (disappears in the job viewer). You will have a non-empty file named /tmp/printout then. Copy this file to your home directory:
$ sudo cp /tmp/printout ~
$ sudo chmod 777 ~/printout
Attach this file to your bug report and/or examine it.


Obtenir les données destinées à l'imprimante


D'autres données importantes pour le débogage des problèmes d'impression sont celles qui doivent être envoyées à l'imprimante. Dans la section précédente, nous avons capturé ce que l'application a envoyé à CUPS. CUPS applique plusieurs filtres à ces données pour les convertir dans la langue maternelle de l'imprimante. Ici nous capturons le résultat de ces filtres:

  • Activez l'impression dans un fichier en ajoutant une ligne contenant "FileDevice yes" dans /etc/cups/cups/cups-files.conf et en redémarrant CUPS par la commande
    Code BASH :
    # systemctl restart cups
  • Clonez la file d'attente de l'imprimante avec des problèmes. Le clone doit imprimer dans un fichier et non pas sur l'imprimante elle-même, mais en utilisant le même pilote, de sorte que les mêmes filtres seront appliqués. Utilisez la commande:
    Code BASH :
    lpadmin -p test -E -v fichier: /tmp/printout -P /etc/cups/ppd/<nom de la file>. ppd

    Remplacer "<nom de la file d'attente>" par le nom de la file d'attente avec le problème. Le clone a également exactement les mêmes paramètres par défaut que la file d'attente originale.
  • Imprimez le travail qui a échoué dans la nouvelle file d'attente "test". Si vous avez sélectionné des options dans la boîte de dialogue d'impression, utilisez les mêmes options que celles utilisées lorsque vous avez rencontré le problème. Attendez jusqu' à ce que le travail soit terminé (disparaît dans la visionneuse de travail). Vous aurez alors un fichier non vide nommé /tmp/printout. Copiez ce fichier dans votre répertoire personnel:
    Code BASH :
    # cp /tmp/printout ~
    # chmod 777 ~/printout
  • Attachez ce fichier à votre rapport de bogue et/ou examinez-le.


Traduit avec www.DeepL.com/Translator

PS: je ne suis pas sûr que tu aies besoin de cette étape puisqu'elle ne va pas au bout. J'imagine que le fichier printout sera vide.
PS2: j'avoue ne pas très bien comprendre ce qu'est le fichier de file d'attente. Tout ce que j'ai là est un fichier ppd qui porte le nom de l'imprimante. Edité par Papoteur Le 12/01/2018 à 14h22


Yves
   
ylyco Membre non connecté

Rang

Avatar

Inscrit le : 31/12/2014 à 21h51

Messages: 87

Le 12/01/2018 à 16h41
Merci pour ton aide encore une fois :)

Mais pas mal d'effort pour faire choux blanc du côté de Ghostscript :

Code TEXT :
 
(In reply to ylyco from comment #15)
> Sorry to bother you, but I'm not an expert in computer science, and I don't
> speak  English fluently...
 
I understand that, I'm trying to be as clear as I can be.
 
 
> This is my last shot :
> I join you some files, I generated after running this linux command :
> 
>     echo Hello | lp -d Dell1320c
> 
> I don't use a specific program to generate it, but only the command line
> witch purpose is to print the single word " Hello ". The printer doesn't
> print anything, and even not react at all.
> 
> So, there are some files :
> - Capturing print job data :
>       appout: ' ASCII text ' type
 
Which just says 'Hello'. Its not PostScript
 
 
> - Getting the data which would go to the printer :
>       printout : whitch is empty
> - and the Cups error_log file
 
Which shows me that there was some real PostScript sent to Ghostscript, and that it produced an error. Sadly it does not include the actual PostScript.
 
 
> I hope you have the elements asked this time.
 
Sorry, no. There is still no PostScript here, which is what would get sent to Ghostscript.
 
Without seeing what is being sent to Ghostscript, I cannot investigate the problem.
 
I suggest you contact the CUPS team and ask them for help with your problem, if you can get their help to capture the actual PostScript being sent to Ghostscript then please feel free to reopen this bug report.
 


Donc je devrai retourner vers CUPS, mais ceux-ci m'ont déjà demandé de voir ... avec Mageia :

Code TEXT :
 
I'd start with your Linux distribution's support page since it is probably a packaging issue in the new version of Ghostscript.
 


Qu'en penses-tu Papoteur ?

Même si je demande une impression en ligne de commande ( echo Hello | lp -d Dell1320c ), alors que Ghostscripts ne devrait pas être impliqué, j'ai quand même une erreur qui concernerait celui-ci.
   
Papoteur Membre non connecté

Rang

Avatar

Modérateur Équipe Mageia

Inscrit le : 03/10/2011 à 22h16

Localisation : Metz

Messages: 8019

Le 12/01/2018 à 19h58
Pourrais-tu préciser ce que tu as imprimé à 15:52 ?

Lors de cette impression, plusieurs filtres sont lancés :
Citation :
D [12/Jan/2018:15:52:38 +0100] [Job 545] 4 filters for job:
D [12/Jan/2018:15:52:38 +0100] [Job 545] texttopdf (text/plain to application/pdf, cost 32)
D [12/Jan/2018:15:52:38 +0100] [Job 545] pdftopdf (application/pdf to application/vnd.cups-pdf, cost 66)
D [12/Jan/2018:15:52:38 +0100] [Job 545] pdftops (application/vnd.cups-pdf to application/vnd.cups-postscript, cost 100)
D [12/Jan/2018:15:52:38 +0100] [Job 545] /usr/lib/cups/filter/FXM_PF (application/vnd.cups-postscript to printer/Dell1320c, cost 0)

A un moment, ghostscript est lancé avec la commande :
Code BASH :
 Running command line for gs: gs -q -dNOPAUSE -dBATCH -dSAFER -dNOMEDIAATTRS -sDEVICE=ps2write -sOUTPUTFILE=%stdout -dLanguageLevel=3 -r600 -dCompressFonts=false -dNoT3CCITT -dNOINTERPOLATE -c \'save pop\' -f /var/spool/cups/tmp/cupsN18LGH

On voit que le fichier traité est : /var/spool/cups/tmp/cupsN18LGH
L'as-tu encore ? Quel est son contenu ?
Chez moi le répertoire tmp est vide.
Je viens de voir une aide au debogage de fedora :
https://fedoraproject.org/wiki/How_to_debug_printing_problems#Running_filters_by_hand
Tu pourrais essayer cette méthode en fonction des filtres ci-dessus.


Yves
   
ylyco Membre non connecté

Rang

Avatar

Inscrit le : 31/12/2014 à 21h51

Messages: 87

Le 12/01/2018 à 21h05
Papoteur :
Pourrais-tu préciser ce que tu as imprimé à 15:52 ?

Lors de cette impression, plusieurs filtres sont lancés :
Citation :
D [12/Jan/2018:15:52:38 +0100] [Job 545] 4 filters for job:
D [12/Jan/2018:15:52:38 +0100] [Job 545] texttopdf (text/plain to application/pdf, cost 32)
D [12/Jan/2018:15:52:38 +0100] [Job 545] pdftopdf (application/pdf to application/vnd.cups-pdf, cost 66)
D [12/Jan/2018:15:52:38 +0100] [Job 545] pdftops (application/vnd.cups-pdf to application/vnd.cups-postscript, cost 100)
D [12/Jan/2018:15:52:38 +0100] [Job 545] /usr/lib/cups/filter/FXM_PF (application/vnd.cups-postscript to printer/Dell1320c, cost 0)



J'avais généré au format PDF à travers l'imprimante virtuelle "Pdf" une page contenant le mot "Hello", que j'avais essayé d'imprimer réellement ensuite sur ma Dell.

Papoteur :

A un moment, ghostscript est lancé avec la commande :
Code BASH :
 Running command line for gs: gs -q -dNOPAUSE -dBATCH -dSAFER -dNOMEDIAATTRS -sDEVICE=ps2write -sOUTPUTFILE=%stdout -dLanguageLevel=3 -r600 -dCompressFonts=false -dNoT3CCITT -dNOINTERPOLATE -c 'save pop' -f /var/spool/cups/tmp/cupsN18LGH

On voit que le fichier traité est : /var/spool/cups/tmp/cupsN18LGH
L'as-tu encore ? Quel est son contenu ?
Chez moi le répertoire tmp est vide.


selon la page https://en.opensuse.org/SDB:How_to_Report_a_Printing_Issue, je me rappelle avoir lancé des commandes du type :

Code TEXT :
 
gs -r50 -sPAPERSIZE=a4 -dFIXEDMEDIA /tmp/print-job-data.save
gs -r50 -sPAPERSIZE=letter -dFIXEDMEDIA /tmp/print-job-data.save
 

Mais cela avait été fait avant que je n'utilise ensuite les méthodes de la page pour Ubuntu : https://wiki.ubuntu.com/DebuggingPrintingProblems.

Papoteur :

Le fichier error_log contenait très certainement trace de ces manipulations là.
On voit que le fichier traité est : /var/spool/cups/tmp/cupsN18LGH
L'as-tu encore ? Quel est son contenu ?
Chez moi le répertoire tmp est vide.

Non, je n'ai plus ce fichier maintenant...

Papoteur :

Je viens de voir une aide au debogage de fedora :
https://fedoraproject.org/wiki/How_to_debug_printing_problems#Running_filters_by_hand
Tu pourrais essayer cette méthode en fonction des filtres ci-dessus.

Ok, je tenterai ça demain. Merci pour ton aide. Bonne soirée. Edité par ylyco Le 12/01/2018 à 21h11
   
ylyco Membre non connecté

Rang

Avatar

Inscrit le : 31/12/2014 à 21h51

Messages: 87

Le 14/01/2018 à 17h44
J'ai jeté un rapide regard sur la page de Fedora, mais je n'ai pas encore eu le temps de m'y pencher sérieusement dessus, plus tard sans doute...

Mais je viens de faire un nouveau test (interessant ?) :

1 - j'ai laissé Cups en 2.2.6, mais j'ai mis seulement les paquets de GhostScripts de 9.20, à savoir :

Code TEXT :
 
urpmi --downgrade ghostscript-9.20-3.mga6.x86_64 ghostscript-X-9.20-3.mga6.x86_64 ghostscript-common-9.20-3.mga6.x86_64 ghostscript-fonts-8.11-21.mga6.noarch ghostscript-module-X-9.20-3.mga6.x86_64
 
urpmi --downgrade lib64gs9-9.20-3.mga6.x86_64 lib64ijs1-0.35-122.mga6.x86_64
 


J'ai testé mon imprimante en usb et par le serveur d'impression de ma Freebox (en socket) : ça fonctionne dans les 2 cas.


2 - j'ai remis les paquets de GhostScript en 9.22, et testé (en usb ou en socket) : ça ne fonctionne plus du tout...


Conclusion du moment :
Pas de problème du côté des paquets Cups en 2.2.6, et de compatibilité avec Ghostscript 9.20.
Mais dès que je mets les paquets Ghostscripts en 9.22, c'est la cata...


Est-ce un problème de génération de paquet Ghostscrips dans la distribution ?
Car même quand je lance la commande " echo Hello | lp -d Dell1320c ", qui n'est pas soumis à un PDF mais juste du texte, en 9.20 ça fonctionne, et en 9.22 je n'ai plus rien.

Qu'en penses tu Papoteur ?


PS :
j'ai l'impression que je suis le seul à avoir un problème de ce type, est-ce mon pilote en i386 non packagé par défaut, qui rentre en conflit avec cette version particulière de Ghostscript ?
   
Papoteur Membre non connecté

Rang

Avatar

Modérateur Équipe Mageia

Inscrit le : 03/10/2011 à 22h16

Localisation : Metz

Messages: 8019

Le 15/01/2018 à 10h13
Bonjour,
Oui, il est très probable que le coupable soit ghostscript. Ton pilote doit générer des commandes rares, probablement.
C'est pour ça que tes interlocuteurs voudraient récupérer le fichier qui est envoyé en entrée à la commande gs.


Yves
   
ylyco Membre non connecté

Rang

Avatar

Inscrit le : 31/12/2014 à 21h51

Messages: 87

Le 26/02/2018 à 18h26
Bon, je ne suis plus seul avec ce problème.
Les choses pourraient évoluer en Mars du côté de Ghostscript. Un autre intervenant, bien plus qualifié que moi, a eu un échange avec eux, et leur a apporté du grain à moudre :

https://bugs.ghostscript.com/show_bug.cgi?id=698837

Peut être y aura-t-il une solution bientôt ?...

En attendant je reste en 9.20 pour Ghostscript chez moi.

A suivre...
   
Papoteur Membre non connecté

Rang

Avatar

Modérateur Équipe Mageia

Inscrit le : 03/10/2011 à 22h16

Localisation : Metz

Messages: 8019

Le 27/02/2018 à 10h42
Bonjour,
De ce que je comprends, gs est devenu sensible à la présence de l'option -dDEBUG. La nouvelle version en préparation aurait déjà une correction. Elle devrait sortir en mars.


Yves
   
Répondre
Vous n'êtes pas autorisé à écrire dans cette catégorie