I have to print through a Samba server sharing an HP printer. After upgrading to 12.04 I'm no longer able to get it to work.

The printer is shared through a samba server and I need to provide logon info (domain, username and password).

The machine that I'm having trouble with is a fresh install of Ubuntu 12.04 64 bit. As a measure to troubleshoot, I created a fresh install of ubuntu 10.04 32 bit as a virtual box image on the Ubuntu 12.04 64 bit machine and had no trouble getting it to print.

I suspect authentication to be the problem. Any idea as to what is wrong? Any suggestions how to make further troubleshooting? Any information I should provide to enable you to help me?

EDIT: To be more specific, when I want to add a network printer I do this through the GUI and when I need to input credentials it will not verify me (although this works fine on the virtual box).

print dialog. As username I input domain/username Print dialog. As username I input domain/username.

If I choose "Prompt user if authentication is required" and then press verify it prompts me for credentials(username, domain and password). If I input username as: domain/username, let domain be empty and supply a password it is able to verify everything. This is the only way that I have made it to verify credentials on Ubuntu 12.04. This however doesn't make me able to print.

5 Answers 5


I just tried setting up a printer in Ubuntu 12.04 in a similar situation. I want to access printers on a Windows server in a domain. Wasn't working - they were being held for authentication too. My local username on the Ubuntu box is not the same as my Active Directory domain username. (I may be Samba not perfectly set up.) Best solution so far for me:

  1. Choose Add new printer in Printing, click open 'Network Printers', select 'Windows Printer via SAMBA'

  2. Click 'Browse' to browse for printer (it prompts for authentication to access Windows server with printer)

  3. Select the correct printer or enter URI.

  4. URI for new printer in New Printer dialog is now 'smb://servername/printername'

  5. Select 'Set authentication details now'

  6. Enter details as 'domain\username' and password (if I click 'verify' now it says printer is not accessible, but I clicked Forward anyway.)

  7. Select driver

  8. Print test page


If I chose 'Prompt user if authentication is required' instead of 'Set authentication details now', then the "verify" button reports that the printer is accessible. (This is one of the first things I tried.) But the jobs get held for authentication. I deleted that printer and tried the steps above, ignoring the verify button, and things now seem to work. Perhaps the Verify button doesn't handle usernames of 'domain\username' format, or perhaps I need to have the correct domain name set in my Samba settings in smb.conf.


Try adding the printer without credentials, and then open the list of print jobs after initiating them. Now each job should have the status "Awaiting approval" or similar (My system is Danish), right click, and chose to approve the job. When entering your credentials, put a forward slash in front of your username. That worked for me.

  • Now evince prompts for password by it self. I haven't tried with other programs, but test pages must still be approved manually.
    – beruic
    Jun 21, 2012 at 11:26
  • I tried. The print job is hold for authentication but when I try to authenticate (have tried with both forward slash and backward slash) the job seems to be processed and disappears from the queue but nothing comes out of the printer.
    – thomas
    Jun 21, 2012 at 15:02
  • Did you check that the printer didn't have any unresolved issued that caused your job to just be accepted by the server, but not printed? Like a paper jam, or missing paper or something?
    – beruic
    Jun 21, 2012 at 18:04
  • Yes. That is not the case. Also every time I need to print I start up a virtual box with ubuntu 10.04 and from here I'm able to print just fine. The setup procedure is exactly the same just it doesnt work on my 12.04 64 bit. Authentication and maybe the 64 bit vs. 32 bit is a suspect in my mind. But how do I troubleshoot? any logs that would help? other tests I can perform to see if samba is causing problems?
    – thomas
    Jun 22, 2012 at 8:23

Printing via Samba in 12.04 is broken. See: https://bugs.launchpad.net/ubuntu/+source/samba/+bug/967410

  • 2
    That bug seems to be related to having an Ubuntu server and Windows clients. This question is about the opposite situation (Windows server, and Ubuntu client), but of course, they could be related.
    – beruic
    Jul 16, 2012 at 23:46

In /etc/samba/smb.conf, specify the workgroup:

# Change this to the workgroup/NT-domain name your Samba server will part of
workgroup = WORKGROUP  # Name of the group in AD

Then run /etc/init.d/smb restart.

  • This solved my problem, except than the smb restart part, I had to manually restart the computer to make it run Oct 30, 2013 at 10:14

This is an old question, but it happened to me with 16.04 LTS, so I think this problem persists and is worth answering.

  1. Add the printer via the GUI, do not enter the credentials yet;
  2. Edit the configuration file, e.g. sudo vi /etc/cups/printers.conf
  3. Navigate to DeviceURI line and edit it so that the URI contained username and password, like this:

    DeviceURI smb://user:my%20password@workgroup/server/usbprinter1
  4. Keep in mind to UrlEncode the password if it contains unsafe characters; mine contained whitespaces, and the GUI for some reason failed to encode it; this was the entire reason for my problem;

  5. Save the file and exit, e.g. Esc :wq;
  6. sudo service cups restart to restart the service.

Now you will be able to print the test page and use the printer normally.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .