[Ubuntu Wiki] Update of "DebuggingPrintingProblems" by vorlon

Ubuntu Wiki noreply at ubuntu.com
Tue Jul 3 19:37:30 UTC 2018


Dear Wiki user,

You have subscribed to a wiki page or wiki category on "Ubuntu Wiki" for change notification.

The "DebuggingPrintingProblems" page has been changed by vorlon:
http://wiki.ubuntu.com/DebuggingPrintingProblems?action=diff&rev1=101&rev2=102

Comment:
take advantage of wiki list autonumbering instead of hard-coding numbers

  == USB printer ==
  
   1. Make sure that the printer is connected to your system and powered on.
-  2. Open a terminal/console and check if the usb kernel modules are loaded: <<BR>> {{{$ lsmod | grep usb}}}
+  1. Open a terminal/console and check if the usb kernel modules are loaded: <<BR>> {{{$ lsmod | grep usb}}}
-  3. Unplug the USB printer cable from your computer and enter this command: <<BR>> {{{$ tail -f /var/log/syslog }}}
+  1. Unplug the USB printer cable from your computer and enter this command: <<BR>> {{{$ tail -f /var/log/syslog }}}
-  4. Reconnect the USB printer cable, you should see some messages appearing.
+  1. Reconnect the USB printer cable, you should see some messages appearing.
-  5. Press Ctrl-C to stop the logging.
+  1. Press Ctrl-C to stop the logging.
-  6. Check whether the printer gets correctly detected by the USB subsystem and determine its USB vendor/product IDs and the USB bus and device addresses: <<BR>> {{{$ lsusb}}} <<BR>> Note: The USB bus and device addresses change if you turn off or unplug the printer. Please re-run this command if needed.
+  1. Check whether the printer gets correctly detected by the USB subsystem and determine its USB vendor/product IDs and the USB bus and device addresses: <<BR>> {{{$ lsusb}}} <<BR>> Note: The USB bus and device addresses change if you turn off or unplug the printer. Please re-run this command if needed.
-  7. Check whether the device files for the printer get created and the ownerships ("root lp") and permissions (non-HP: "crw-rw-r--", HP: "crw-rw-r--+") correctly set: <<BR>> {{{$ ls -l /dev/usb/lp* /dev/bus/usb/*/*}}}
+  1. Check whether the device files for the printer get created and the ownerships ("root lp") and permissions (non-HP: "crw-rw-r--", HP: "crw-rw-r--+") correctly set: <<BR>> {{{$ ls -l /dev/usb/lp* /dev/bus/usb/*/*}}}
-  8. Determine the printer's device ID strings: <<BR>> {{{$ sudo usb_printerid /dev/usb/lp0}}} <<BR>> {{{$ sudo usb_printerid /dev/usb/lp1}}} <<BR>> {{{...}}} <<BR>> For HP printers also use <<BR>> {{{$ hp-info -i}}} <<BR>> and choose the printer with the problem from the text menu, then copy the "deviceid" entry from the output (can be several lines).
+  1. Determine the printer's device ID strings: <<BR>> {{{$ sudo usb_printerid /dev/usb/lp0}}} <<BR>> {{{$ sudo usb_printerid /dev/usb/lp1}}} <<BR>> {{{...}}} <<BR>> For HP printers also use <<BR>> {{{$ hp-info -i}}} <<BR>> and choose the printer with the problem from the text menu, then copy the "deviceid" entry from the output (can be several lines).
-  9. For HP printers: Check that you have the latest version of HPLIP and whether HPLIP connects to them: <<BR>> {{{$ hp-makeuri <Bus>:<Device>}}} <<BR>> Replace "<Bus>" and "<Device>" by the bus and device numbers from the "lsusb" output (not vendor and product ID). The numbers must be supplied with three digits, zero-padded from the left, like "008:015". (More information from [[http://hplipopensource.com/]].)
+  1. For HP printers: Check that you have the latest version of HPLIP and whether HPLIP connects to them: <<BR>> {{{$ hp-makeuri <Bus>:<Device>}}} <<BR>> Replace "<Bus>" and "<Device>" by the bus and device numbers from the "lsusb" output (not vendor and product ID). The numbers must be supplied with three digits, zero-padded from the left, like "008:015". (More information from [[http://hplipopensource.com/]].)
-  10. Find out if your printer gets detected by CUPS: <<BR>> {{{$ lpinfo -v}}}
+  1. Find out if your printer gets detected by CUPS: <<BR>> {{{$ lpinfo -v}}}
-  11. Attach the output of the above commands to the bug report.
+  1. Attach the output of the above commands to the bug report.
  
  Note that problems cannot only caused by CUPS but also by the kernel (package "linux"), libusb, HPLIP (package "hplip"), and several third-party printer drivers.
  
  == Parallel port printer ==
  
   1. Make sure that the printer is connected to your system and powered on.
-  2. Open a terminal/console and check if the lp, ppdev, and parport_pc kernel modules are loaded: <<BR>> {{{$ lsmod | grep lp}}} <<BR>> {{{$ lsmod | grep ppdev}}} <<BR>> {{{$ lsmod | grep parport_pc}}}
+  1. Open a terminal/console and check if the lp, ppdev, and parport_pc kernel modules are loaded: <<BR>> {{{$ lsmod | grep lp}}} <<BR>> {{{$ lsmod | grep ppdev}}} <<BR>> {{{$ lsmod | grep parport_pc}}}
-  3. Check if the kernel detected the parallel port during bootup: <<BR>> {{{$ dmesg | grep par }}}
+  1. Check if the kernel detected the parallel port during bootup: <<BR>> {{{$ dmesg | grep par }}}
-  4. Check if the device files of the parallel port(s) are created and have the correct permissions and ownerships: <<BR>> {{{$ ls -l /dev/lp* /dev/parport* }}}
+  1. Check if the device files of the parallel port(s) are created and have the correct permissions and ownerships: <<BR>> {{{$ ls -l /dev/lp* /dev/parport* }}}
-  5. Check if the printer auto-detection result appears in the kernel's virtual file system: <<BR>> {{{$ ls -l /proc/sys/dev/parport/parport*/autoprobe* }}} <<BR>> {{{$ sudo cat /proc/sys/dev/parport/parport*/autoprobe* }}}
+  1. Check if the printer auto-detection result appears in the kernel's virtual file system: <<BR>> {{{$ ls -l /proc/sys/dev/parport/parport*/autoprobe* }}} <<BR>> {{{$ sudo cat /proc/sys/dev/parport/parport*/autoprobe* }}}
-  6. Find out if your printer gets detected by CUPS: <<BR>> {{{$ lpinfo -v}}}
+  1. Find out if your printer gets detected by CUPS: <<BR>> {{{$ lpinfo -v}}}
-  7. Run the parallel port CUPS backend separately, once with standard user privileges and once as root: <<BR>> {{{$ /usr/lib/cups/backend/parallel }}} <<BR>> {{{$ sudo /usr/lib/cups/backend/parallel }}}
+  1. Run the parallel port CUPS backend separately, once with standard user privileges and once as root: <<BR>> {{{$ /usr/lib/cups/backend/parallel }}} <<BR>> {{{$ sudo /usr/lib/cups/backend/parallel }}}
-  8. Attach the output of the above commands to the bug report.
+  1. Attach the output of the above commands to the bug report.
  
  Note that problems can be caused not only by CUPS, but also by the kernel (package "linux"), HPLIP (package "hplip"), and several third-party printer drivers.
  
  == Network printer ==
  
   1. Make sure the printer is turned on and connected to your network. In the case of a WLAN (wireless) printer the printer needs to be configured to use your wireless network.
- 
-  2. Check the printer's configuration by printing a configuration page via the printer's front panel menus. This gives information about the IP address of the printer and about the protocols it supports (JetDirect/AppSocket, LPD, IPP, SMB/Windows, ...).
+  1. Check the printer's configuration by printing a configuration page via the printer's front panel menus. This gives information about the IP address of the printer and about the protocols it supports (JetDirect/AppSocket, LPD, IPP, SMB/Windows, ...).
- 
-  3. You can also find the printer's IP address via the configuration web interface of your router. Many routers you can configure that the printer always gets the same IP and you can also assign a host name.
+  1. You can also find the printer's IP address via the configuration web interface of your router. Many routers you can configure that the printer always gets the same IP and you can also assign a host name.
- 
-  4. To change the printer's configuration either use the printer's front panel menus or the printer's web configuration interface. To access this web interface, enter the IP address of the printer into the address or URL line of a web browser.
+  1. To change the printer's configuration either use the printer's front panel menus or the printer's web configuration interface. To access this web interface, enter the IP address of the printer into the address or URL line of a web browser.
- 
-  5. If your printer is supposed to connect via WLAN and it does not get an IP address, make sure that your WLAN is turned on and that the correct network name (SSID) and password are set by the front panel menus of the printer. If the printer has no front panel menus, you have to connct it with an ethernet cable first and configure the WLAN access through the web interface. On some HP printers there is WLAN connection but no ethernet connection. These you have to connect via USB and then use the hp-wificonfig tool from the hplip-gui package to configure them.
+  1. If your printer is supposed to connect via WLAN and it does not get an IP address, make sure that your WLAN is turned on and that the correct network name (SSID) and password are set by the front panel menus of the printer. If the printer has no front panel menus, you have to connct it with an ethernet cable first and configure the WLAN access through the web interface. On some HP printers there is WLAN connection but no ethernet connection. These you have to connect via USB and then use the hp-wificonfig tool from the hplip-gui package to configure them.
- 
-  6. Set up the printer via system-config-printer ("Add" button). Wait around 15 seconds for the network scan (spinning icon must disappear). Usually you should select the default connection type as system-config-printer tries to find the best possibility. Generally use HP printers through the HPLIP connection, other printers preferably with DNS-SD connections (will continue to work whn the router changes the IP of the printer) and from the protocols use preferably AppSocket/jetDirect. The implementation of IPP in the printer's firmware has often bugs. Make sure the desired protocols and DNS-SD/mDNS/BonJour support are active in the printer's hardware configuration.
+  1. Set up the printer via system-config-printer ("Add" button). Wait around 15 seconds for the network scan (spinning icon must disappear). Usually you should select the default connection type as system-config-printer tries to find the best possibility. Generally use HP printers through the HPLIP connection, other printers preferably with DNS-SD connections (will continue to work whn the router changes the IP of the printer) and from the protocols use preferably AppSocket/jetDirect. The implementation of IPP in the printer's firmware has often bugs. Make sure the desired protocols and DNS-SD/mDNS/BonJour support are active in the printer's hardware configuration.
- 
-  7. Open a terminal/console and run the commands: <<BR>> {{{$ ping <IP of the printer>}}} <<BR>> {{{$ nmap <IP of the printer>}}} <<BR>> Replace "<IP of the printer>" by the printer's IP address. The first command checks whether you can access the printer through the network, the second shows which port numbers are used by the printer and through this which protocols are active (80: Has web interface, 139: SMB, 443: encrypted IPP or encrypted web interface, 515: LPD, 631: IPP, 9100: JetDirect/AppSocket). Install the "nmap" package if needed.
+  1. Open a terminal/console and run the commands: <<BR>> {{{$ ping <IP of the printer>}}} <<BR>> {{{$ nmap <IP of the printer>}}} <<BR>> Replace "<IP of the printer>" by the printer's IP address. The first command checks whether you can access the printer through the network, the second shows which port numbers are used by the printer and through this which protocols are active (80: Has web interface, 139: SMB, 443: encrypted IPP or encrypted web interface, 515: LPD, 631: IPP, 9100: JetDirect/AppSocket). Install the "nmap" package if needed.
- 
-  8. Run the commands: <<BR>> {{{$ /usr/lib/cups/backend/snmp}}} <<BR>> {{{$ sudo /usr/lib/cups/backend/dnssd}}} <<BR>> The output shows whether the printers get found by CUPS or system-config-printer and with which device URIs and protocols.
+  1. Run the commands: <<BR>> {{{$ /usr/lib/cups/backend/snmp}}} <<BR>> {{{$ sudo /usr/lib/cups/backend/dnssd}}} <<BR>> The output shows whether the printers get found by CUPS or system-config-printer and with which device URIs and protocols.
- 
-  9. Run the command <<BR>> {{{$ /usr/lib/cups/backend/snmp <IP of the printer>}}} <<BR>> if a printer does not get found by the simple "/usr/lib/cups/backend/snmp" call.
+  1. Run the command <<BR>> {{{$ /usr/lib/cups/backend/snmp <IP of the printer>}}} <<BR>> if a printer does not get found by the simple "/usr/lib/cups/backend/snmp" call.
- 
-  10. Find out if your printer gets detected by CUPS: <<BR>> {{{$ lpinfo -v}}}
+  1. Find out if your printer gets detected by CUPS: <<BR>> {{{$ lpinfo -v}}}
- 
-  11. Run the commands: <<BR>> {{{$ avahi-browse -a -v -t -r}}} <<BR>> {{{$ avahi-browse -a -v -c -r}}} <<BR>> These commands show whether your printer is visible via DNS-SD/mDNS/BonJour.
+  1. Run the commands: <<BR>> {{{$ avahi-browse -a -v -t -r}}} <<BR>> {{{$ avahi-browse -a -v -c -r}}} <<BR>> These commands show whether your printer is visible via DNS-SD/mDNS/BonJour.
- 
-  12. Run <<BR>> {{{$ ifconfig}}} <<BR>> {{{$ route}}} <<BR>> to check general network health.
+  1. Run <<BR>> {{{$ ifconfig}}} <<BR>> {{{$ route}}} <<BR>> to check general network health.
- 
-  13. Attach the output of the above commands to the bug report.
+  1. Attach the output of the above commands to the bug report.
  
  Note that problems cannot only caused by CUPS but also by the kernel (package "linux"), HPLIP (package "hplip"), and several third-party printer drivers.
  
@@ -75, +63 @@

  We highly recommend not to buy and use these adapters to get old parallel-only printers connected to newer computers without parallel port. Please try the following alternatives:<<BR>>
  
   1. First check whether the printer is really parallel-only. If it has a USB or Ethernet port, use one of these for connection. If you do not have free USB ports on your computer, use a USB hub.
-  2. If you have already a USB -> Parallel adapter and you have an All-in-One router (or NAS) with USB port, try to connect the printer with the adapter there, if the router has print server functionality, your printer should appear as a network printer.
+  1. If you have already a USB -> Parallel adapter and you have an All-in-One router (or NAS) with USB port, try to connect the printer with the adapter there, if the router has print server functionality, your printer should appear as a network printer.
-  3. You can also get an old JetDirect (or compatible) network print box on eBay or Amazon for cheap, which also makes a network printer out of your printer.
+  1. You can also get an old JetDirect (or compatible) network print box on eBay or Amazon for cheap, which also makes a network printer out of your printer.
-  4. At least with USB -> Parallel adapters you can use with a Ubuntu machine proceeding as follows: Make sure that there is no other native USB printer or printer with USB -> Parallel adapter connected. This works only with one single printer on USB. Set up the printer with the device URI "parallel:/dev/usb/lp0", either by selecting "Enter URI" on the first page of the add-printer wizard of system-config-printer, or by right-clicking the icon of an existing (non-working) print queue, choosing "Properties" in the pop-up menu, and editing the "Device URI" field in the properties dialog. Note that you have to select printer manufacturer and model manually when adding a new printer.
+  1. At least with USB -> Parallel adapters you can use with a Ubuntu machine proceeding as follows: Make sure that there is no other native USB printer or printer with USB -> Parallel adapter connected. This works only with one single printer on USB. Set up the printer with the device URI "parallel:/dev/usb/lp0", either by selecting "Enter URI" on the first page of the add-printer wizard of system-config-printer, or by right-clicking the icon of an existing (non-working) print queue, choosing "Properties" in the pop-up menu, and editing the "Device URI" field in the properties dialog. Note that you have to select printer manufacturer and model manually when adding a new printer.
  
  Note that if the alternative you choose makes a network printer out of your printer that system-config-printer should find it as a network printer (wait for the scan to finish when the spinning icon disappears, then open the "Network printer" section). Perhaps you will need to choose make and model of the printer manually to finish the setup.<<BR>>
  
@@ -88, +76 @@

  = CUPS error_log =
  This is a file where CUPS writes information about what it is doing. Almost all printing problems can be diagnosed from the error log, so it is the first place to look to start solving problems. To be useful, you must change the logging level: <<BR>>
   1. In Oneiric or newer with Unity desktop click the gear icon at the upper right (the one also used to log out) and in the menu showing up then, click "Printer" (or, in some versions, "Printers"). Or go to "System Settings" in the launcher and click on "Printing". The printer setup tool system-config-printer will open. Select "Server Settings" in the list on the left or in newer versions with the printers showing as icons choose "Server" in the main menu and then "Settings". Note that the main menu will be in the bar at the top of the screen if Oneiric (or newer) with Unity is used. There it only appears if you move the mouse into the top bar. Then check the checkbox "Save debugging information for troubleshooting" and click "Apply".
-  2. In all Ubuntu flavors (also Kubuntu and server editions) you can run <<BR>> {{{$ cupsctl LogLevel=debug}}} <<BR>> to activate debug logging.
+  1. In all Ubuntu flavors (also Kubuntu and server editions) you can run <<BR>> {{{$ cupsctl LogLevel=debug}}} <<BR>> to activate debug logging.
-  3. In Karmic and later (CUPS 1.4.x) there is an automatic debug logging only for failed print jobs. So if you problem was a failed print job, the error_log can already contain the desired information. Unfortunately, only 200 debug message lines get logged per failed job. Run the command <<BR>> {{{$ cupsctl LogDebugHistory=999999}}} <<BR>> for practically unlimited logging of failed jobs.
+  1. In Karmic and later (CUPS 1.4.x) there is an automatic debug logging only for failed print jobs. So if you problem was a failed print job, the error_log can already contain the desired information. Unfortunately, only 200 debug message lines get logged per failed job. Run the command <<BR>> {{{$ cupsctl LogDebugHistory=999999}}} <<BR>> for practically unlimited logging of failed jobs.
-  4. Clear the queue from any stuck jobs by deleting the jobs in the job viewer or running the "{{{cancel -a}}}" command.
+  1. Clear the queue from any stuck jobs by deleting the jobs in the job viewer or running the "{{{cancel -a}}}" command.
-  5. Try to print something. Wait until the job disappears from the queue or turns into "Stopped" state, independent whether something gets out of the printer. If the job never reaches "Stopped" state after the printer not showing any reaction for a longer time you also can go on to the next step.
+  1. Try to print something. Wait until the job disappears from the queue or turns into "Stopped" state, independent whether something gets out of the printer. If the job never reaches "Stopped" state after the printer not showing any reaction for a longer time you also can go on to the next step.
-  6. Scan or photograph the printout if it is not correct and attach the images to the bug report.
+  1. Scan or photograph the printout if it is not correct and attach the images to the bug report.
-  7. Add {{{/var/log/cups/error_log}}} as an attachment to the bug report. Note that the file is not accessible for normal users. From Jaunty on you can access it from the account of the first user set up (in general users in the "adm" group). Otherwise you need to access it as root. To view the file run <<BR>> {{{$ sudo less /var/log/cups/error_log}}} <<BR>> and to copy it for attaching to a bug report run <<BR>> {{{$ sudo cp /var/log/cups/error_log ~}}} <<BR>> {{{$ sudo chmod 777 ~/error_log}}}
+  1. Add {{{/var/log/cups/error_log}}} as an attachment to the bug report. Note that the file is not accessible for normal users. From Jaunty on you can access it from the account of the first user set up (in general users in the "adm" group). Otherwise you need to access it as root. To view the file run <<BR>> {{{$ sudo less /var/log/cups/error_log}}} <<BR>> and to copy it for attaching to a bug report run <<BR>> {{{$ sudo cp /var/log/cups/error_log ~}}} <<BR>> {{{$ sudo chmod 777 ~/error_log}}}
  
  = Troubleshooting Wizard =
  
@@ -110, +98 @@

  Often it is needed to find out what actually got sent to the printer in order to determine whether the problem is caused by the application or by the printing subsystem. It is easiest to capture the job data from the application so that it can be analyzed to see whether it is already broken or not. To do so, follow these steps: <<BR>>
  
   1. Clear the print queues of old jobs. Either use the job viewer or run the command <<BR>> {{{$ cancel -a}}} <<BR>> in a terminal window.
-  2. Disable the print queue with which you have the problem. Use system-config-printer (System -> Administration -> Printing in GNOME classic, Gear icon at the upper right of the screen -> Printers in Unity), right-click the appropriate printer icon, and click "Enabled" in the pop-up menu, so that the check mark disappears; or run the command <<BR>> {{{$ cupsdisable <PRINTER>}}} <<BR>> in a terminal window (Replace "<PRINTER>" by the name of the print queue). This makes jobs stay in the queue so that you can capture them.
+  1. Disable the print queue with which you have the problem. Use system-config-printer (System -> Administration -> Printing in GNOME classic, Gear icon at the upper right of the screen -> Printers in Unity), right-click the appropriate printer icon, and click "Enabled" in the pop-up menu, so that the check mark disappears; or run the command <<BR>> {{{$ cupsdisable <PRINTER>}}} <<BR>> in a terminal window (Replace "<PRINTER>" by the name of the print queue). This makes jobs stay in the queue so that you can capture them.
-  3. Now print the job from your application. When the application has finished sending the job, check via the job viewer or the command <<BR>> {{{$ lpstat -o}}} <<BR>> whether it is in the queue.
+  1. Now print the job from your application. When the application has finished sending the job, check via the job viewer or the command <<BR>> {{{$ lpstat -o}}} <<BR>> whether it is in the queue.
-  4. Display the content of CUPS' spool directory using the command <<BR>> {{{$ sudo ls -1 /var/spool/cups}}} <<BR>> (Enter your password when asked).
+  1. Display the content of CUPS' spool directory using the command <<BR>> {{{$ sudo ls -1 /var/spool/cups}}} <<BR>> (Enter your password when asked).
-  5. There should be exactly one file beginning with a "d". Copy this file to your home directory: <<BR>> {{{$ sudo cp /var/spool/cups/d... ~/appout}}} <<BR>> {{{$ sudo chmod 777 ~/appout}}}
+  1. There should be exactly one file beginning with a "d". Copy this file to your home directory: <<BR>> {{{$ sudo cp /var/spool/cups/d... ~/appout}}} <<BR>> {{{$ sudo chmod 777 ~/appout}}}
-  6. Re-enable the print queue: <<BR>> {{{$ cupsenable <PRINTER>}}} <<BR>>
+  1. Re-enable the print queue: <<BR>> {{{$ cupsenable <PRINTER>}}} <<BR>>
-  7. If the file gets printed correctly now, try the above procedure with another file, we need a file where the problem occurs.
+  1. If the file gets printed correctly now, try the above procedure with another file, we need a file where the problem occurs.
-  8. Check via the command <<BR>> {{{$ file ~/appout}}} <<BR>> what format the file is. It is usually PDF or PostScript. Display the file on the screen to see whether the problem already occurs (error message, missing characters, wrong colors, ...). If you see the problem already, the application is the culprit, assign your bug report to the application's package, otherwise assign it to the "cups" package.
+  1. Check via the command <<BR>> {{{$ file ~/appout}}} <<BR>> what format the file is. It is usually PDF or PostScript. Display the file on the screen to see whether the problem already occurs (error message, missing characters, wrong colors, ...). If you see the problem already, the application is the culprit, assign your bug report to the application's package, otherwise assign it to the "cups" package.
-  9. Attach the original file of your application and the ~/appout file to your bug report.
+  1. Attach the original file of your application and the ~/appout file to your bug report.
  
  = 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:
  
   1. Activate printing into a file by adding a line containing "FileDevice yes" to /etc/cups/cups-files.conf and restarting CUPS by the command <<BR>> {{{$ sudo restart cups}}}
-  2. 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: <<BR>> {{{$ lpadmin -p test -E -v file:/tmp/printout -P /etc/cups/ppd/<queue name>.ppd}}} <<BR>>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.
+  1. 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: <<BR>> {{{$ lpadmin -p test -E -v file:/tmp/printout -P /etc/cups/ppd/<queue name>.ppd}}} <<BR>>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.
-  3. 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: <<BR>> {{{$ sudo cp /tmp/printout ~}}} <<BR>> {{{$ sudo chmod 777 ~/printout}}}
+  1. 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: <<BR>> {{{$ sudo cp /tmp/printout ~}}} <<BR>> {{{$ sudo chmod 777 ~/printout}}}
-  4. Attach this file to your bug report and/or examine it.
+  1. Attach this file to your bug report and/or examine it.
  
  = Sending a file to the printer unfiltered =
  
@@ -139, +127 @@

  Use one of the following methods for unfiltered printing:
  
   1. Independent how your printer is connected, you can print unfiltered by using the "lp" or "lpr" commands with the "-oraw" argument: <<BR>> {{{$ lp -d <printer> -oraw <file>}}} <<BR>> {{{$ lpr -P <printer> -oraw <file>}}} <<BR>> Replace <printer> by the name of your print queue and <file> by the name of the file you want to print. This does not work around bugs in CUPS backends (the modules which CUPS uses to communicate with printer hardware), see the next steps for such cases.
-  2. If the printer is connected via USB or parallel port, you can send the job directly to the printer's device file: <<BR>> {{{$ sudo -s}}} <<BR>> {{{# cat file > /dev/lp0}}} <<BR>> {{{# cat file > /dev/usb/lp0}}} <<BR>> {{{# cat file > /dev/usb/lp1}}} <<BR>> {{{# exit}}} <<BR>> The numbers in the device file names can vary (sse also sections "USB Printer" and "Parallel port printer" above).
+  1. If the printer is connected via USB or parallel port, you can send the job directly to the printer's device file: <<BR>> {{{$ sudo -s}}} <<BR>> {{{# cat file > /dev/lp0}}} <<BR>> {{{# cat file > /dev/usb/lp0}}} <<BR>> {{{# cat file > /dev/usb/lp1}}} <<BR>> {{{# exit}}} <<BR>> The numbers in the device file names can vary (sse also sections "USB Printer" and "Parallel port printer" above).
-  3. If the printer is connected via the network (both ethernet or WLAN), you can use "nc" ("netcat", part of the netcat-openbsd and netcat-traditional packages, install one of them if needed) to send unfiltered data: <<BR>>{{{$ nc -w1 <printer> 9100 < <file>}}}<<BR>> Replace <printer> by the host name or IP address of your printer and <file> by the name of the file you want to send. If the printer refuses the job, check in the printer's web configuration interface whether JetDirect/AppSocket/9100 printing is enabled (see also the section "Network printer" above).
+  1. If the printer is connected via the network (both ethernet or WLAN), you can use "nc" ("netcat", part of the netcat-openbsd and netcat-traditional packages, install one of them if needed) to send unfiltered data: <<BR>>{{{$ nc -w1 <printer> 9100 < <file>}}}<<BR>> Replace <printer> by the host name or IP address of your printer and <file> by the name of the file you want to send. If the printer refuses the job, check in the printer's web configuration interface whether JetDirect/AppSocket/9100 printing is enabled (see also the section "Network printer" above).
  
  = PostScript (PDF) printer chokes on the PostScript (PDF) coming from Ubuntu =
  
@@ -149, +137 @@

  If you have a PostScript or PDF printer and it does not print correctly from Ubuntu, please report a bug and proceed as follows, telling all your results in your bug report and staying tuned for further instructions of the developers:
  
   1. Tell us the exact Ubuntu version which you are using.
-  2. Tell us the exact printer model.
+  1. Tell us the exact printer model.
-  3. Attach the error_log, as described in the section "CUPS error_log" on this page.
+  1. Attach the error_log, as described in the section "CUPS error_log" on this page.
-  4. Attach the input file which you tried to print and tell us with which application you tried to print it.
+  1. Attach the input file which you tried to print and tell us with which application you tried to print it.
-  5. Attach the data which CUPS receives from the application (section "Capturing print job data" on this page).
+  1. Attach the data which CUPS receives from the application (section "Capturing print job data" on this page).
-  6. Attach the data which the printer receives (section "Getting the data which would go to the printer" on this page)
+  1. Attach the data which the printer receives (section "Getting the data which would go to the printer" on this page)
-  7. Examine the file obtained in the previous step by running the command <<BR>> {{{$ file printout}}} <<BR>> 
+  1. Examine the file obtained in the previous step by running the command <<BR>> {{{$ file printout}}} <<BR>> 
-  8. If the file is PostScript or PDF, subscribe "cliddell" (Chris Liddell, Ghostscript upstream developer) to the bug report and also try to display the file on the screen with "evince" and "gs".
+  1. If the file is PostScript or PDF, subscribe "cliddell" (Chris Liddell, Ghostscript upstream developer) to the bug report and also try to display the file on the screen with "evince" and "gs".
-  9. Send the file unfiltered to the printer (as described in the section "Sending a file to the printer unfiltered". You should get the same problem, if you get a different (correct or incorrect) result, there is a problem with the CUPS backend (program which CUPS uses to communicate with the printer hardware).
+  1. Send the file unfiltered to the printer (as described in the section "Sending a file to the printer unfiltered". You should get the same problem, if you get a different (correct or incorrect) result, there is a problem with the CUPS backend (program which CUPS uses to communicate with the printer hardware).
-  10. If the file is PostScript, try to send uncompressed PostScript. To do so print the file obtained in step (5) with one of the commands <<BR>> {{{$ lpr -P <printer> -o psdebug <file>}}} <<BR>> {{{$ lp -d <printer> -o psdebug <file>}}} <<BR>> Repeat the steps (6) - (9) printing this way. See also the file /usr/share/doc/cups-filters/README.gz, section "POSTSCRIPT PRINTING DEBUG MODE".
+  1. If the file is PostScript, try to send uncompressed PostScript. To do so print the file obtained in step (5) with one of the commands <<BR>> {{{$ lpr -P <printer> -o psdebug <file>}}} <<BR>> {{{$ lp -d <printer> -o psdebug <file>}}} <<BR>> Repeat the steps (6) - (9) printing this way. See also the file /usr/share/doc/cups-filters/README.gz, section "POSTSCRIPT PRINTING DEBUG MODE".
-  11. As a workaround for the time being you can switch to an alternative program for generating the PostScript which is sent to the printer. Run <<BR>> {{{$ lpadmin -p <printer> -o pdftops-renderer-default=pdftops}}} <<BR>> to switch over and <<BR>> {{{$ lpadmin -p <printer> -R pdftops-renderer-default}}} <<BR>> to switch back. Make sure that you switch back if you follow further instructions from the developers in your bug report, or create a separate print queue for the workaround. See also the file /usr/share/doc/cups-filters/README.gz, section "POSTSCRIPT PRINTING RENDERER AND RESOLUTION SELECTION".
+  1. As a workaround for the time being you can switch to an alternative program for generating the PostScript which is sent to the printer. Run <<BR>> {{{$ lpadmin -p <printer> -o pdftops-renderer-default=pdftops}}} <<BR>> to switch over and <<BR>> {{{$ lpadmin -p <printer> -R pdftops-renderer-default}}} <<BR>> to switch back. Make sure that you switch back if you follow further instructions from the developers in your bug report, or create a separate print queue for the workaround. See also the file /usr/share/doc/cups-filters/README.gz, section "POSTSCRIPT PRINTING RENDERER AND RESOLUTION SELECTION".
  
  = USB printer does not print or prints garbage =
  
@@ -167, +155 @@

  If your printer is connected via USB try the following steps to find out whether such exception rules could solve your problem:
  
   1. Does your printer also allow to be connected via network? Or does your router have a USB port which can be used to make a network printer out of a USB printer? Try out these connection methods. If your printer works with them, continue with the following steps. Continue also with the following steps if you do not have possibilities to use your printer as a network printer. Otherwise, your printer has a problem which does not fall into this class.
- 
-  2. Make sure your printer is connected via USB again. Run the following command in a terminal window <<BR>> {{{$ cancel -a}}} <<BR>> {{{$ lpadmin -p <queue> -o usb-unidir-default=true}}} <<BR>> with <queue> being the print queue name of the printer with problems. Now your computer does purely uni-directional USB communication with your printer. Does printing work correctly now? Run <<BR>> {{{$ lpadmin -p <queue> -R usb-unidir-default}}} <<BR>> to remove this change.
+  1. Make sure your printer is connected via USB again. Run the following command in a terminal window <<BR>> {{{$ cancel -a}}} <<BR>> {{{$ lpadmin -p <queue> -o usb-unidir-default=true}}} <<BR>> with <queue> being the print queue name of the printer with problems. Now your computer does purely uni-directional USB communication with your printer. Does printing work correctly now? Run <<BR>> {{{$ lpadmin -p <queue> -R usb-unidir-default}}} <<BR>> to remove this change.
- 
-  3. Run <<BR>> {{{$ cancel -a}}} <<BR>> {{{$ lpadmin -p <queue> -o usb-no-reattach-default=true}}} <<BR>> to make the USB backend not re-attach the usblp kernel module after the communication with the printer. Does printing work correctly for you now? Undo this change via <<BR>> {{{$ lpadmin -p <queue> -R usb-no-reattach-default}}}
+  1. Run <<BR>> {{{$ cancel -a}}} <<BR>> {{{$ lpadmin -p <queue> -o usb-no-reattach-default=true}}} <<BR>> to make the USB backend not re-attach the usblp kernel module after the communication with the printer. Does printing work correctly for you now? Undo this change via <<BR>> {{{$ lpadmin -p <queue> -R usb-no-reattach-default}}}
  
  Please report a bug on the package "cups", preferably by running the command <<BR>> {{{$ ubuntu-bug cups}}} <<BR>> Report your results of the tests above and paste in the output of the <<BR>> {{{$ lsusb}}} <<BR>> command.
  



More information about the Ubuntu-bugsquad mailing list