Linux - ServerThis forum is for the discussion of Linux Software used in a server related context.
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.
Hello all.
How are you?
I want to use CentOS 6 x64 as a Print server for provide print service to Windows clients. I want to know is CUPS the best way? Any idea?
CUPS is pretty much the standard print system for Linux these days. Windows clients can send print jobs to CUPS using the LPD, IPP, or AppSocket/JetDirect protocols. For this to work, a "port" must be defined on each Windows client, pointing to the IP address or hostname of the CentOS server. The "Add printer" wizard in Windows will do this automatically.
If you want to "share" a printer using the SMB/CIFS network protocol, you can use Samba. Samba doesn't replace CUPS in that scenario, but rather augments it by providing native Windows file and print sharing services.
A major advantage with Samba is that you can make the required printer drivers directly available to Windows clients. You can also restrict access to selected users or groups. If you join the Windows clients to a Samba-hosted Windows "domain", you can even push the printer to selected PCs or users automatically.
CUPS is pretty much the standard print system for Linux these days. Windows clients can send print jobs to CUPS using the LPD, IPP, or AppSocket/JetDirect protocols. For this to work, a "port" must be defined on each Windows client, pointing to the IP address or hostname of the CentOS server. The "Add printer" wizard in Windows will do this automatically.
If you want to "share" a printer using the SMB/CIFS network protocol, you can use Samba. Samba doesn't replace CUPS in that scenario, but rather augments it by providing native Windows file and print sharing services.
A major advantage with Samba is that you can make the required printer drivers directly available to Windows clients. You can also restrict access to selected users or groups. If you join the Windows clients to a Samba-hosted Windows "domain", you can even push the printer to selected PCs or users automatically.
Thank you so much. Thus The CUPS is a best option for doing it. Do you know any manual that can help me in this way?
CUPS has a web interface on port 631. Make sure it's enabled in /etc/cups/cupsd.conf and that cupsd is running, then open either http://localhost:631 or https://localhost:631, log in as root and take it from there.
[homes]
comment = Home Directories
browseable = yes
writable = no
; valid users = %S
; valid users = MYDOMAIN\%S
valid users = jokar\%S
[printers]
comment = All Printers
path = /var/spool/samba
browseable = yes
guest ok = yes
writable = no
printable = yes
# Un-comment the following and create the netlogon directory for Domain Logons
; [netlogon]
; comment = Network Logon Service
; path = /var/lib/samba/netlogon
; guest ok = yes
; writable = no
; share modes = no
# Un-comment the following to provide a specific roving profile share
# the default is to use the user's home directory
; [Profiles]
; path = /var/lib/samba/profiles
; browseable = no
; guest ok = yes
# A publicly accessible directory, but read only, except for people in
# the "staff" group
; [public]
; comment = Public Stuff
; path = /home/samba
; public = yes
; writable = yes
; printable = no
; write list = +staff
but my problem is that I can't install printer via "http" in windows clients. I must tell that my CentOS is not part of my Windows domain. How can I solve it?
but my problem is that I can't install printer via "http" in windows clients. I must tell that my CentOS is not part of my Windows domain. How can I solve it?
Sorry, I don't really understand what you're asking here.
If you're not familiar with how this works, you should try setting it up one step at a time:
Make sure CUPS is installed and running on your CentOS server (cupsd should be visible in the process list)
Make sure you can access the web interface from the CentOS server (may require modifications to /etc/cupsd.conf)
Install the printer using the web interface, and verify that it's working by printing a test page (again, from the CentOS server)
Try sharing the printer in Samba, or alternatively try connecting directly to the printer from a Windows workstation by installing is as a TCP/IP printer using either an LPR or IPP port
Give it a shot, and if you can't get it working, report back and tell us how far you got and exactly what you did.
Of course. I can connect to it via CentOS server. For example, "http://192.169.1.2:631/printers/XXXX". In windows I can't install it via HTTP and I must use other option "Connect to this printer". I guess that I can't connect to the Printer via HTTP because of permission. Can you tell me how can I give Permission to Specific users in "cups.conf" ?
Saying "of course" isn't particularly helpful here, since we can't possibly know what you've tried unless you explicitly tell us. The users in this forum are not mind-readers.
What do you mean you can "connect to it via the CentOS server"? That you can access that URL in a web browser? Or that you can actually send print jobs to the printer?
Did you successfully complete steps 1-3 in the list I posted earlier.
Do you get an error message when you try adding the printer from the Windows system?
Can you access the URL from the Windows system using a browser? Have you tried connecting to the TCP port (631) with Telnet or another suitable tool, just to verify connectivity?
Saying "of course" isn't particularly helpful here, since we can't possibly know what you've tried unless you explicitly tell us. The users in this forum are not mind-readers.
What do you mean you can "connect to it via the CentOS server"? That you can access that URL in a web browser? Or that you can actually send print jobs to the printer?
Did you successfully complete steps 1-3 in the list I posted earlier.
Do you get an error message when you try adding the printer from the Windows system?
Can you access the URL from the Windows system using a browser? Have you tried connecting to the TCP port (631) with Telnet or another suitable tool, just to verify connectivity?
Have you tried using LPR/LPD instead of IPP?
I mean is that I can connect to printer via URL in web browser and can send print via CentOS too. I complete there steps that you said and problem not Solved.
I said that I can browse cups via Windows system but as you see my "cups" config, The admin just have permission to manage printers.
The connection is true and I can add printer via another option that I said in previous post.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.