Linux – Print from Linux to Windows networked printer

cupslinuxnetworkingprintingsamba

I want to print from a Debian (Lenny) workstation to a Windows networked printer. I'm not even sure what type of Windows network this is. Our tech-support is friendly but doesn't want to get involved with supporting Linux. I need to use it for a variety of reasons and am completely stumped because I know nothing about Windows networking.

They gave me URI smb://msprint.ourorg.edu as the "address" of the printer and further confirmed that the domain is "OURORG" and the share is "PHYS-PRI". I've installed CUPS and made sure that it's running as a daemon, I've clicked on the system-config-printer[1] icon, selected the printer as a Windows printer shared via SAMBA and entered the above URI. Attempting to print a testpage just sees it sit in the queue.

I attempted to see if I could access the share using two other methods.

Method 1.
First I tried the "smbclient" from the CLI:

$ smbclient -L //msprint.ourorg.edu -U user23
timeout connecting to 192.168.44.3:445
timeout connecting to 192.168.44.3:139
Connection to msprint.ourorg.edu failed (Error NT_STATUS_ACCESS_DENIED)

Method 2.
I tried to use the GUI tool Smb4K.

This shows me four other toplevel (I'm assuming they're domains?) groupings one of which is the one which our IT department supplied to me. Clicking them shows a bunch of other machines with (what I assume are NetBIOS names?) including my own. I see all sorts of other networked printers belonging to other departments but none within mine. Certainly not the PHYS-PRI one suggested to me by the IT folks.

I realize that I'm probably using the wrong terminology for the windows network, but can anyone help me with this? What steps should I be taking in debugging this? Do I need to actually run my machine as a SAMBA server to authenticate to the printer or should I just be able to communicate using CUPS?

  1. It's a GUI to CUPS configuration http://cyberelk.net/tim/software/system-config-printer/

Best Answer

You used the wrong syntax with smbclient:

  • Either use smbclient -L msprint.ourorg.edu -U user23 (to List all shares on server msprint.ourorg.edu
  • Or use smbclient -L \\msprint.ourorg.edu\share_name -U user23 (to display content of share 'share_name' on server *msprint.ourorg.edu