Printing problem in Fedora 32

Relative new user here. I have three IP network printers, 2 of which are Lexmark Postscript machines, on my home network. Fedora discovered them at the original install (at release 31) and identified them by model number with no problem. I browse the internet with NAT using Firefox with no trouble so I don’t think there are any networking problems. However, I can’t actually print to the printers. The jobs actually go to the queue and register as being there but don’t actually spool to the printer. I can’t print a test page either. Can someone suggest what I am doing wrong or what I can do to check what might be wrong? Thanks in advance and I appreciate your time.

-mraki

Have you tried installing any lexmark specific drivers?

It seems strange to me that you would wait several months to ask for help with printing problems. I would assume that your 3rd printer is working correctly and you are only asking for help with these two that may/may not have ever worked…

For any detailed help we need to know the printer models, how they are connected, what you have tried to fix the issue, did they ever work with fedora, etc. Without detailed input we are only stabbing in the dark trying to help.

1 Like

Check the output:

sudo ls -l -R /etc/cups
sudo grep -v -e ^# -e ^$ /etc/cups/printers.conf

So here’s the output “sudo ls …” command:

<>
/etc/cups:
total 116
-rw-------. 1 root lp 0 Aug 5 00:36 classes.conf
-rw-r–r–. 1 root lp 0 Aug 5 00:36 client.conf
-rw-r–r–. 1 root root 28646 Mar 8 2020 cups-browsed.conf
-rw-r–r–. 1 root root 30436 Aug 27 23:58 cups-browsed.conf.rpmnew
-rw-r-----. 1 root lp 6274 Aug 5 00:35 cupsd.conf
-rw-r-----. 1 root lp 6274 Aug 5 00:35 cupsd.conf.default
-rw-r-----. 1 root lp 2996 Aug 22 15:58 cups-files.conf
-rw-r-----. 1 root lp 2996 Aug 5 00:35 cups-files.conf.default
-rw-r–r–. 1 root lp 0 Aug 5 00:36 lpoptions
drwxr-xr-x. 2 root lp 4096 Sep 13 11:59 ppd
-rw-------. 1 root lp 1705 Sep 13 12:05 printers.conf
-rw-------. 1 root lp 1727 Sep 13 12:01 printers.conf.O
-rw-r–r–. 1 root lp 142 Aug 5 00:35 snmp.conf
-rw-r-----. 1 root lp 142 Aug 5 00:35 snmp.conf.default
drwx------. 2 root lp 4096 Aug 5 00:35 ssl
-rw-r-----. 1 root lp 715 Sep 26 16:44 subscriptions.conf
-rw-r-----. 1 root lp 411 Sep 26 16:43 subscriptions.conf.O

/etc/cups/ppd:
total 624
-rw-r-----. 1 root lp 136053 Jan 1 2020 C543.ppd
-rw-r-----. 1 root lp 217895 Jan 1 2020 Canon-D460-490-UFRII-LT.ppd
-rw-r-----. 1 root lp 136051 Sep 13 11:59 X543.ppd
-rw-r-----. 1 root lp 136055 Sep 13 11:59 X543.ppd.O

/etc/cups/ssl:
total 0
<>

The printer types (Lexmark X543, C543 and Canon are all enumerated correctly. The output of the second command is here:

<>
NextPrinterId 4

PrinterId 1
UUID urn:uuid:7bb1107d-7b60-3dac-679b-83ea176e11fc
Info Lexmark C543
MakeModel Lexmark C543
DeviceURI dnssd://Lexmark%20C543._pdl-datastream._tcp.local/
State Idle
StateTime 1577901012
ConfigTime 1577901012
Type 8425692
Accepting Yes
Shared Yes
JobSheets none none
QuotaPeriod 0
PageLimit 0
KLimit 0
OpPolicy default
ErrorPolicy stop-printer


PrinterId 2
UUID urn:uuid:20221d6f-7472-36e5-4c2c-d25138ab91f7
Info Canon D460-490(09:30:80)
MakeModel Generic Text-Only Printer
DeviceURI dnssd://Canon%20D460-490(09%3A30%3A80)._printer._tcp.local/
State Idle
StateTime 1577901919
ConfigTime 1577901919
Type 12292
Accepting Yes
Shared Yes
JobSheets none none
QuotaPeriod 0
PageLimit 0
KLimit 0
OpPolicy default
ErrorPolicy stop-printer


PrinterId 3
UUID urn:uuid:6a37b865-c263-39ce-56f0-9d1e972987b5
Info Lexmark X543
MakeModel Lexmark X543
DeviceURI dnssd://Lexmark%20X543._pdl-datastream._tcp.local/
State Idle
StateTime 1600023918
ConfigTime 1600023566
Type 75534556
Accepting Yes
Shared Yes
JobSheets none none
QuotaPeriod 0
PageLimit 0
KLimit 0
OpPolicy default
ErrorPolicy stop-printer
Attribute marker-colors #00FFFF,#FF00FF,#FFFF00,#000000,none,none,none,none
Attribute marker-levels 90,30,100,40,0,100,90,-1
Attribute marker-names Cyan Cartridge,Magenta Cartridge,Yellow Cartridge,Black Cartridge,Waste Toner Box,Fuser,ITU,Photo Drum
Attribute marker-types toner,toner,toner,toner,waste-toner,other,other,opc
Attribute marker-change-time 1578768315

<>

1 Like

Have you tried installing any lexmark specific drivers?

No, I have not.

It seems strange to me that you would wait several months to ask for help with printing problems. I would assume that your 3rd printer is working correctly and you are only asking for help with these two that may/may not have ever worked…

It might seem strange if you dropped all your other computing resources and decided to put all your processing eggs into a system basket you knew little about and had to do everything on this new system. Instead, I still have other processing boxes all of whom print just fine to these printers so I know they work ok. I figured while I was learning and trying to figure out the problem out on my own (I don’t like to bother folks for fear that I didn’t try hard enough on my own, RTFM and all), and I needed to print, I could use my other devices of which I have a few. I finally came to the conclusion that I made every effort I could think of and I needed help. Oh, and I focus on the Lexmark because I know the Canon has very proprietary drivers. If that doesn’t print, there could multiple reasons. Any half reasonable Postscript driver should work on the Lexmarks (see below).

For any detailed help we need to know the printer models, how they are connected, what you have tried to fix the issue, did they ever work with fedora, etc. Without detailed input we are only stabbing in the dark trying to help.

The printers are a Canon D480 (duplexing black and white), Lexmark C543 (color duplexing) and Lexmark X543 (color duplexing with scanning) on fixed IP at 192.168.1.200, .201 and .202 respectively. I inspected and tried and varied every property Gnome exposes from the interface. I noted the behavior when printing and saw what happened to jobs when initiated until I had to delete them from the queue when it became clear that they would not print. I verified that I could see the printer status from their embedded web servers because they have that feature. I focused on the Lexmarks because as postscript printers, I understood those to be the lingua franca of the Linux world, for the most part. Finally, I searched the forums for printing related problems and found only HP related problems that seemed they were more related to the PCL language driving the printers, not so much to the dispatching of printer jobs.

That’s sort of the best I can do to help because I don’t know the Linux commands to provide more detailed interrogation of the system. The Fedora system setup seemed to enumerate and setup of the printers with no intervention of my part. If it needed intervention for me to install drivers, it certainly didn’t notify to do so. If I do need to do so now, I would be appreciative of guidance or pointers to docs on how to do that. Yes, I did try to look in the help and Fedora docs on how to do that but they were a little less than helpful in that regard.

Thank you for your understanding on this.

-mraki

1 Like

First, What Fedora Spin are you using? In other words, Fedora Workstation, Fedora KDE, Fedora Cinnamon, Fedora XFCE, etc., etc.
Second, have you downloaded linux print drivers specifically for your printers and have already tried using them?
Third, if you have not already downloaded linux print drivers for your specific printers, please go to the following websites and download the printer drivers. Just make sure you select the correct operating system. I think with the Cannon it is the Linux 64bit and the lexmark is linux and then fedora.

Cannon D480: https://www.usa.canon.com/internet/portal/us/home/support/details/printers/support-laser-printers-imageclass/imageclass-d480/imageclass-d480?tab=drivers_downloads

Lexmark C543: http://support.lexmark.com/index?page=product&segment=SUPPORT&productCode=LEXMARK_C543&locale=en&userlocale=EN#4

LexmarkX543: http://support.lexmark.com/index?page=product&locale=en&productCode=LEXMARK_X543&segment=SUPPORT&userlocale=EN#3

NOTE: The Lexmark C543 stopped support along time ago, so the latest Fedora drivers were for Fedora 17. The Lexmark X543 has support up to Fedora 29. Even though the drivers may be older, it is still worth a try.

Fifth, install the drivers.
Sixth, add a new printer for each printer. Even if the operating system automatically creates a printer for you, add a new printer and choose the correct driver from what you just installed.
Seven, if you do not know how to install printer drivers, then ask for help.
Eight, as long as there is nothing wrong with the drivers, and you added a new printer profile for each printer with the correct drivers, you should be able to print.

Here is a link to another post where it shows the steps I took to install a particular print driver. Sometimes it can be easier, and some time it can be harder. It really depends on how the packages are set up. https://discussion.fedoraproject.org/t/printer-prints-various-symbols/74243/9?u=kulani

1 Like

Thank you for the information on your situation. My comment was not meant as criticism, just curious about the delay. Sorry if it was taken wrong.
I would suspect that the issue with the lexmark printers is the driver missing since the web site indicates a proprietary ppd file is needed and you indicated you have only done what linux was able to set up for you. This pagegives some instructions on setting up lexmark printers and these link to the specific driver ppd files needed for the C543 and X543 printers, as well as instructions for set up. I hope this helps a bit.

Also, in my /etc/cups/printers.conf I note that my printer that is network connected is specifically enumerated with the IP address in that file. See specifically the DeviceURI below for my default printer and compare it to yours.

<DefaultPrinter HP_Color_LaserJet>
PrinterId 3
UUID urn:uuid:71bd80e2-f22d-304b-442c-dc0a087a258e
Info 
Location 
MakeModel HP Color LaserJet Pro MFP M277 Postscript (recommended)
DeviceURI hp:/net/HP_Color_LaserJet_MFP_M277dw?ip=192.168.2.126
State Idle
StateTime 1600261974
ConfigTime 1597373283
Type 8425484
Accepting Yes
Shared Yes
JobSheets none none
QuotaPeriod 0
PageLimit 0
KLimit 0
OpPolicy default
ErrorPolicy stop-printer
</DefaultPrinter>

My approach would be to first download the required ppd files and put them in /etc/cups/ppd/ then try printing. If that works you are done.

If that does not work then remove one of the lexmark printers in the settings-> printers control panel and reboot to make sure the system totally forgets the old config.
Finally you can go into the settings->printers control panel again and recreate the printer but make sure you tell it which ppd file to use(if needed), the IP, and that it is network connected.
Finally print a test page. If the configuration is now correct you should be successful and you can repeat on the other printer.

1 Like

First, I’d like to thank you for your detailed answer. I guess it never occurred to me that Fedora’s printer installations was not what it appeared. Fedora gave me the impression that it had set everything up for me and that the printers were largely installed and configured. If it had not indicated any action on printers originally, I would have concluded that I had to take action to install them. I’m familiar with the idea of fetching drivers in general and printer drivers specifically and I would have gone off and started to perform that task.

Nonetheless, in response to your instructions, I can report progress but not quite total success.

In answer to your first question, I’m using Fedora Workstation 32 (64-bit) with Gnome 3.36.6.

Lexmark provides an RPM file for the X543 for a 64-bit driver install for Fedora. Although last reported as supporting Fedora 29, installation went without a hitch, I was able to add a new printer object with no problem and it works fine. Test page comes out perfectly.

The Lexmark C543 only provides an RPM file for a 32-bit driver. I was unsure whether to try it or not because I’m unfamiliar with the details here. Will a 32-bit driver work with 64-bit workstation? If no, am I out of luck? Lexmark also provides PPD files for the C543 with loads of help/instruction/install files. However, all the descriptions behave as if the C543 is the only Lexmark Postcript printer that you will be addressing from your system. Since I just got the X543 working, I didn’t want to take too many steps that might put what was working (with the X543) at risk. Any advice here? It’s a shame because a C543 is just an X543 without the scanner. I purposely bought it because it has the same print engine and uses the same color cartridges. That way, I can stock only one set of cartridges for both printers. Is there any way to use the X543 driver for the C543? Or should I try the .ppd route? How do I prevent conflict with the other Lexmark?

As for the Canon, they provide an RPM file for 64-bit driver compatible with CUPS. However, when performing the install of the RPM, I get the following error message:

error: Failed dependencies:
libglade-2.0.so.0()(64bit) is needed by cnrdrvcups-ufr2-us-5.20-1.x86_64

Isn’t this what RPM suppose to help with, i.e., resolve the dependency and retrieve the needed file (assuming it exists in a registered repository somewhere)? Does it mean it doesn’t have a repository with the needed file?

Anyway, solid progress but still a few hiccups. I still have some learning to do but it’s details that are preventing total success here. Thanks in advance for any follow up help offered.

-mraki

The automatic configuration using DNS-SD is known to be problematic.
I recommend to try other CUPS backends such as AppSocket/IPP/LPD.

Use DNF to install RPM packages:

sudo dnf install /path/to/package.rpm

It should automatically resolve dependencies.
The required dependency is in the main repository:

> dnf -q provides "libglade-2.0.so.0()(64bit)"
libglade2-2.6.4-23.fc32.x86_64 : The libglade library for loading user interfaces
Repo        : fedora
Matched from:
Provide    : libglade-2.0.so.0()(64bit)

I would first try the rpm you got for the C543. Just because it is a 32 bit package does not mean it cannot be used on your 64 bit system.
The worst that is likely to happen is it does not work!

If that fails then try the driver for the X543 on the C543. Just because it is labeled differently does not necessarily mean it does not work.

You could look at the name of the ppd file for the X543 in /etc/cups/ppd and make a copy for safety.
It could be that the only difference is the scanner and it might just work. If named specifically for the printer it supports then make another copy named for the C543.
Again. the worst that is likely to happen is it does not work.!

The Canon will need to be handled the same. Simply install libglade with the command “dnf install libglade2-2.6.4-23.fc32.x86_64” to solve the dependency then install the Canon driver. You can also install both at the same time with dnf by using the command “dnf install libglade2-2.6.4-23.fc32.x86_64 path/to/cnrdrvcups-ufr2-us-5.20-1.x86_64”

RPM has been mostly replaced by dnf which does much more about installing dependencies. With rpm it alerts you to missing dependencies but does not necessarily pull them in. Dnf tries to pull in the dependencies for you if the .rpm package allows.

BTW, I found the libglade package needed with the command “dnf provides libglade-2.0.so.0()(64bit)”

Well, call me surprised. Not only did Canon driver install (once I issued the proper command) and work but the 32-bit Lexmark driver did as well. Drivers installed and printer objects added using those drivers. I’m practical not religious about these things. All printers are installed, print just fine and that’s great. Thank you and thanks to all those that responded to this thread.

If I had any other question, let me ask an opportunistic one. I would certainly give myself some time to read up on my own - again, I try to be self reliant about these things. However, if I could be pointed in the right direction (like how to look into it), it might save me some time. Feel free to ignore if it’s too much to ask - if I have problems, I’ll start a new thread after studying. So, here goes:

Both the Canon and the Lexmark X543 have scanning capability and at least the Lexmark drivers suggest that the scanning capability was included in the driver package (i.e., in the RPM). I think the Canon does too but I’m less sure. What form would that driver take or what back end would be used to connect to that front end? Would it be a TAME-like thing or is there a TWAIN-like middleware needed? Thanks for any direction giving - I’ll go read up from there.

-mraki

1 Like

I cannot directly answer since I do not use either canon or lexmark printers, but I can suggest that you install (if not already done) something like xsane (using dnf) then open that. If the first screen that opens up shows the choice to select one or both the scanners then that will be all that is needed.
When xsane first starts it scans for usable devices
ab699b1938897b97beec48493318d198dd4394fa.png
then it displays what it found


for my HP printer I also had to install libsane-hpaio and the HP proprietary plugin to access my HP printer scanner. I would suspect that you might have similar needs – possibly a proprietary scanner ddriver and possibly a sane printer specific package. Research with a liberal use of a search engine such as google will help.

I did a quick search for “how to scan with xsane using PRINTER NAME” and this is one thing I came up with for the lexmark and this one for the canon although there are many other pages listed that contain info on how to use the scanners for both printers.

1 Like

OK, thanks computersavvy. That gives me a firm direction to follow - xsane. I’ll chase it from here. If for some reason I run into problems and get stuck, I’ll start a new thread and ask for help (with more detail, of course).

Thanks again.

-mraki

Did you try to use the generic Document Scanner application provided with the gnome software?

If you want to use xsane to scan over network, you will need to supply a URL to the printer’s IP address (or DNS FQDN, but I doubt you have them in DNS). For example, I use xsane to scan from an HP MFU via the following command:

xsane hpaio:/net/Officejet_<model number major_minor>?ip=192.168.2.14

That command line parameter has to be discovered by you somehow. I used HP documentation. Lexmark might have something similar available. A quick google search brings up this page, which I show here from the cache because otherwise it requires a login: Lexmark xsane
It mentions that you have to d/l and install scanner drivers from Lexmark, so you will probably end up creating an account there anyway.

Hello, all,

I didn’t realize there was a document scanning utility in Gnome already. In response to kulani’s suggestion, I went ahead to try it since was already installed. I started it up and after it searched for available scanners, only the Lexmark X543 came up - the Canon did not. I’m not sure why but no matter, I’ll just post the resulting behavior with the Lexmark. I’m sorry I didn’t document it better so the best I can do at the moment is report the sequence of steps and apparent behavior if not the exact specifics.

The Lexmark seemed to go through a “first use” sequence to initialize itself. I say that because it had a license acceptance step after which it appeared to be ready to go. I tried to initiate a single page scan from the page feeder. It gave a dialog box posing a radio button choice, something to the effect of that there needed to be communication channel established to the scanner. It offered a pair of choices, each with a protocol and an accompanying IP address. I didn’t recognize either of the protocols, which I probably should have written down but I vaguely remember something like one being “virts”. In my own defense, it seemed like as long as I was choosing something that didn’t conflict with something already on my network or system, I wouldn’t likely break anything. The IP addresses were apparently random as well, The printer is normally fixed at 192.168.1.202 as a printer but neither was that address but were both in the 192.168.1.X subnet needed. I chose the “virts://192.168.1.x” option (if it was virts) and operations continued.

Afterward, instructions from Lexmark came that said to the effect of “Do either option (1), (2) or (3)” to initiate the scan - which, in short, amounted to “Go to the printer, press a few buttons or two to start the scan”. I went to the printer, pressed the required buttons. The page feeder initiated and the page was consumed while the printer display read “Scanning”. Very soon after the page started to feed, the printer display changed from “Scanning” to “Cancelling”. Then “No communications” appeared on “Scan Log” page which got printed for every attempt (I’d love to suppress that) in addition to the message “Scan Failed”. I tried both instructions (1) or (2) in the Lexmark instructions but I don’t think (3) was possible because it was like it was for a different printer - those buttons didn’t exist on the X543. I probably got 10 Scan Log pages so I didn’t want to go too much further - it was getting wasteful.

So, whatever choice I made of the radio buttons, it wasn’t entirely wrong, it seems, because a communications channel specifically for scanning to the printer was established. I can go back and try to find the message with more specificity the communications message if that helps but I’m not sure how to trigger it. As always, I welcome any suggestions. Thanks in advance.

-mraki

It is likely if you have not specifically installed the scanner driver (usually proprietary) for the specific printer that your scanning software cannot see it. In my screenshot of xsane above you can see that it is using the hpaio driver with a URI including IP address following it. (the line with the radio button checked).

Your failure to find the canon printer scanner clearly indicates that the proper driver is not installed or configured.

The first step with the “license” is common when you use proprietary software for the first time.

Try again and tell us what you actually see. Generic “I got a message” is not really helpful without knowing what the message said so it’s information can be understood. Even a screenshot could be helpful so you do not have to try to remember/copy the details. Triggering the message is usually as simple as repeating what gave you the message.

The error logs that printed from the attempt to use the lexmark scanner indicate either the wrong driver, the wrong protocol for the URI, or selecting the wrong connection that was shown by the document scanner software and the connection was lost so the printer could not send the scan results pack to the PC.

It has been mentioned before that you can encounter problems if the printer uses DHCP to get its IP because that address can change if it is not permanently assigned as reserved for the DHCP server or statically assigned at the printer. I would suggest that you verify the IP assigned at the printer and make certain that it is static and will not change. Then power cycle the printer and make certain that you can get a reliable ping return and print to that printer. Following all that you can then try the scanning again as its IP will never change and can be relied upon.

I have never had to download a separate driver for the scanner. Once I installed the printer driver, the scanner worked as well. However, there may be other software that is compatible with the printer. For example, I know that HP makes linux versions of their windows printing and scanning software, you know that would come on the CD that came with the printer. However, I doubt there is anything like that for older printers. So, all I can say is keep on trying or install another software. I have been busy so I don’t have much time to research, but that mostly consists of googling and playing with my own linux laptop.

The manufacturers website is almost always the definitive information source. HP, Canon, Lexmark, Brother, and others usually have some piece of proprietary software necessary to fully enjoy their product. I personally am not aware of any printers that ship with linux drivers included. AFAIK those are always either in the distribution or require download.

All my recent experiences with HP have required the plugin to enable use of the scanner. Even though HPLIP (FOSS) allows full use of printing the scanner portion still requires a proprietary plugin to operate.

1 Like

Let me retrench a little bit. Two of the three printers have scanning capability but all three printers have static IP addresses, set at the printers’ control panels. They are not changing and have been verified even after power outages so their memory settings are non-volatile. They are:

Canon imageClass D480: 192.168.1.200
Lexmark C543: 192.168.1.201 (no scanning ability)
Lexmark X543: 192.168.1.202

The X543 and the C543 are virtually the same from a printing engine standpoint (they use the same printer cartridges even). There is no doubt to me that the drivers I installed are the ones the manufacturers designed, developed, intended and released for their respective printers. The Canon driver spans the D460- 490 models and the Lexmarks are model specific – it’s pretty hard to mess this up. I can’t attest to the functionality of the manufacturers’ drivers and I admit to my (very possible) inability to configure the drivers, the application or invoke the correct protocols but I’m pretty sure the right drivers are installed as they all print properly, even the 32-bit driver on the D480.

When I open Gnome’s Document Scanner Utility, it proclaims “Ready to Scan”. In its pull down selector, it offers three choices (when there really should only 2, 1 Canon and 1 Lexmark): “Lexmark Lexmark C543 Ethernet”, “Lexmark Lexmark X543 Ethernet” and “Lexmark Network” (all listed literally this way). I set the Document Scanner utility to scan “All Pages From Feeder” and “Image” just to capture a single page as a test. Selecting “Lexmark Network” is fruitless and gives an immediate error. Selecting the C543 makes it think a bit but it eventually is smart enough to realize that the C543 doesn’t have scanning capability. When I select the X543, I get the following:

“Application Error! Your system’s hostname is assigned to the localhost IP address 127.0.0.1. This application needs the systems hostname to correspond to an IP address stored on a DNS server.” It asks to select from the two radio buttons to continue:

enp2s0: 192.168.1.107
virbr0: 192.168.122.1

Despite the IP address errors and since I can’t change the dialog box in any way, this time (unlike the previous time), I selected the first one (in my earlier post, I selected the address that started with the virbr0 prefix). Nonetheless, the behavior is nearly the same. Instructions are given on screen to go to the printer to enter a profile number on the printer keypad. This time, the scan proceeds and appears to complete before the error is thrown. The scan log prints (again wasting a page) saying there is a communication problem.

From this, it would seem that I need to edit the hosts name file somewhere, no? On my router or on this Linux computer? Something to point the protocol to the correct IP? Something like enp2s0: 192.168.1.202 perhaps? Again, I thank you for any help offered in advance.

-mraki

One little aside: In most apps (e.g., LibreOffice), and when I open “Settings” from Gnome, only the 3 active printers are shown. However, in Firefox, the print dialog (before printing), the good (newly, properly operating) printer drivers show but also the bad (originally installed but non working and removed) printer drivers show. Why is that and can it be fixed?