Jump to content

Sharing a printer on Arch to Windows clients

Following the stereotype that printers never "just work", I need help with sharing my Samsung ML-2160 on Arch.

I already followed some guides, installed CUPS and the samsung-unified-driver package. I got the printer to work with CUPS and I can print the test page without any problems. However the problems start when I want to share my printer to a Windows client. I tried Samba first (Here is the config). I tried adding the printer like so: 

image.thumb.png.cb49a7dfc82434140bbda89ca6a1ab1c.png

 

It than prompts me for a driver, I select my printer model

image.png.74589b2bc7124deadcdddfe43d797efa.png

 

Press OK, and I can see the printer in the control panel

image.png.eda265b0134748ff90533752fe69dcf1.png

 

HOWEVER when I try to print anything with it, nothing happens. Not even any errors, it just doesn't print or do anything.

Next I tried THIS, connecting via IPP. Followed every step precisely, but the same thing happens as before.

I tried setting the printer make/model to raw in CUPS too, but that didn't work either.

image.png.ce7b4d8c54185ba5167844cfaf12d29c.png

 

So this is where I am right now. I can print the CUPS test page with these settings, but I cannot print when the printer is shared.

image.png.9efeed7ea6ce670dbeb475596d758647.png

 

Link to comment
Share on other sites

Link to post
Share on other sites

does the printer work when it's connected directly to a windows client? might just be a windows driver issue.

Link to comment
Share on other sites

Link to post
Share on other sites

1 minute ago, manikyath said:

does the printer work when it's connected directly to a windows client? might just be a windows driver issue.

yes, it does work

Link to comment
Share on other sites

Link to post
Share on other sites

According to the cups documentation you need to enable printer sharing on the cups server before you can access printers remotely via IPP. If you haven't done that already that could be your issue: https://www.cups.org/doc/sharing.html

 

Also do you have a firewall on your arch computer? Maybe you are blocking IPP requests.

Link to comment
Share on other sites

Link to post
Share on other sites

27 minutes ago, N0ps32 said:

According to the cups documentation you need to enable printer sharing on the cups server before you can access printers remotely via IPP. If you haven't done that already that could be your issue: https://www.cups.org/doc/sharing.html

 

Also do you have a firewall on your arch computer? Maybe you are blocking IPP requests.

I have enabled printer sharing in cups, and the printer shows in windows too. I can connect to it no problem, but when I try to print a word document for example, nothing happens.

There aren't any firewalls installed on the server. Could the router be blocking requests?

Link to comment
Share on other sites

Link to post
Share on other sites

It's been a few decades when I used Windows, but typically for a shared printer you don't install drivers on the client. CUPS has the drives and handles the printer for the client, and shares the printer (as a generic printer with advertised features, such as color/BW, Duplex, paper sizes etc.).

 

But as someone who has abandoned Windows I really can't help on the Windows side, nor can I vouch that your CUPS configuration is correct. From a quick glance it seems your CUPS is configured correctly. What I would do is remove all printer from Windows, and try to re-add the printer as a network printer. Do not choose a printer model to add (that will assume a local printer or a non-managed printer connected straight to the LAN, without a server such as CUPS in between).

Link to comment
Share on other sites

Link to post
Share on other sites

Try this.. (on the Linux system)

useradd guest -s /bin/nologin

then

sudo nano /etc/samba/smb.conf

edit the following sections to read as follows, add any lines that don't already exist

[global]
security = user
map to guest = bad user
guest account = guest

[guest]
comment = guest
path = /tmp/
public = yes
only guest = yes
printable = no

scroll to the bottom and add

[Printers]
browsable = yes
guest ok = yes

[tmp]
comment = Temporary file space
path = /tmp
read only = no
public = yes

then finally do (or just reboot)

sudo systemctl restart smb nmb

^ if this fails with an error saying nmb is not running then instead do

sudo systemctl restart smb

Now your printer share should be mapped to allow guest users to print from the /tmp folder.

 

To share a printer over Samba the client must have a valid account on the Linux host and have read/write access to at least one folder. You can do this manually if you like but the above method should bypass it for everyone.

 

Edit - Also you added the printer to Windows incorrectly, it should be smb://192.168.xxx.xxx

Main Rig:-

Ryzen 7 3800X | Asus ROG Strix X570-F Gaming | 16GB Team Group Dark Pro 3600Mhz | Corsair MP600 1TB PCIe Gen 4 | Sapphire 5700 XT Pulse | Corsair H115i Platinum | WD Black 1TB | WD Green 4TB | EVGA SuperNOVA G3 650W | Asus TUF GT501 | Samsung C27HG70 1440p 144hz HDR FreeSync 2 | Ubuntu 20.04.2 LTS |

 

Server:-

Intel NUC running Server 2019 + Synology DSM218+ with 2 x 4TB Toshiba NAS Ready HDDs (RAID0)

Link to comment
Share on other sites

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×