Linux (Cups) printer visible to windows, invisible to linux boxes ?
Linux - NetworkingThis forum is for any issue related to networks or networking.
Routing, network cards, OSI, etc. Anything is fair game.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
Distribution: Used many over the years, main ones now "CentOS", Slackware and Arch
Posts: 31
Rep:
Linux (Cups) printer visible to windows, invisible to linux boxes ?
I have several (four !) PC's networked together with a wired ethernet. One is my "internet gateway", now running Fedora Core 1, driving an adsl modem thanks to the "eciadsl" driver, sharing the connection with the others thanks to "firestarter" (which I've told to "trust" the "internal" eth0 network card. The other PC's are dual boot Fedora Core and either Win98SE or WinXP. All machines see the 'net just fine whether booted from windows or linux.
I've used the redhat tools in Fedora to enable a samba server sharie on a "shared directory area" and when I loaded and ran fedora for the first time, it detected and set up the Samsung ML4600 printer on the "gateway" machine's parallel port.
If I boot any of the Win98SE machines I can see and use the internet, see and use the "shared area" and see and use the Samsung Printer. On the gateway machine I can log in and do all of this too. So I guess most of the system must be working.
So here's the problem(s): The WinXP machine can SEE, but can't USE the Samsung Printer. If I try looking at the printer properties in XP I get an "Access Denied" error in the printer properties title bar ! But that's not the worst bit, when I boot any of the other PC's in linux, they can see the 'net and they see the shared disk area just fine from the "smb:///" window but none of them can detect the samsung printer.
Ive checked through other printer / networking threads on this site but they all seem to cover situations where no-one can see anything.
I have a nagging feeling this will be something distro-specific and either stupid or esoteric to do with a config file (similar to the way fedora's default sendmail.cf config refuses connection attempts from machines other than 127.0.0.1) but I'm now so confused I don't know where to start !
The windows XP problem just sounds like you need to add a list of samba users who can use the printer in smb.conf
The linux problem (which will probably suffer from the above as well) is best solved by using cups to configure the printer. Make sure cups is running on the client machine then add the smb printer from the cups web interface.
Distribution: Used many over the years, main ones now "CentOS", Slackware and Arch
Posts: 31
Original Poster
Rep:
sorted and thanks
Thanks for the tips on how to proceed ! I suspected this was all down to the config file and indeed it was. As the Fedora Core 1 release doesn't yet have the same standard of documentation as its predecessor redhat shrike had, I think it might be useful to put the details here.
The breakthrough came when I realised the cups daemon on the machine hosting the printer was configured to only accept "ipp" requests on port 631 from 127.0.0.1 (just like the default sendmail config only allowed tcp/ip connections on port 25 from 127.0.0.1).
I discovered this when I ran "lpstat -v" on that machine, which returned the message "device for lp0: /parallel/dev/lp0" and then went to one of the other pc's on my network, and tried running "lpstat -h <hostname> -v" only to get a "connection refused" error ! Gotcha !!!!
After a lengthy session reading the CUPS Docs and in particular the System Administration document (accessible through a web browser on http:/localhost:631) I went to have a look at the /etc/cups/cupsd.conf file and sure enough, it contained a "global" directive telling it to "listen 127.0.0.1:631" and nowhere else
This machine shared its internet connection with the other PC's via a wired network through an ethernet card whose interface is "eth0" and IP address is set as 192.168.0.1 so all I had to do was add a further "listen:192.168.0.1:631" directive immediately after the existing one, and then allow machines on that interface to see and use it. I did this by adding lines "Allow From @IF(eth0)" into the <location /> and <location /printers/lp0> definitions at the bottom of the configuration file. I also added a BrowseAllow From @IF(eth0) after the existing BrowseAllow From @LOCAL for good measure.
With all that done. I stopped and restarted the cups service, went to one of the remote machines, and told it to add a printer. The Add Printer screen browsed for, and found, the remote printer in seconds !
Hope this is useful to anyone else who finds themselves in my previous predicament.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.