请教CUPS 共享打印机的问题

作者&投稿:晏的 (若有异议请与网页底部的电邮联系)
如何配置 cups 以支持打印机共享~

/etc/init.d/cups start

然后在CUPS服务器主机server中,我们要做好2个文件的设置,这两个文件分别是:
/etc/cups/cupsd.conf
/etc/cups/printers.conf

其中,cupsd.conf是控制cups服务的设置,而printers.conf则是对打印机进行设置的。

设置这两个文件并不复杂,这里不建议手工修改,因为可以用web方式来设置,然后自动生成。
只要在本机的网页浏览器输入这个网址,就可以进入CUPS的web设置界面:

http://服务器主机名:631 例如: http://server:631

不过在这里,觉得需要介绍一下这两个文件里面的内容,这样对大家的理解会有好处。
而且,我发现如果要限制用户的话,好像还是需要手动修改printers.conf文件的。

1.本地打印机的设置
(1)将打印机连接到运行Fedora-Core-8系统的计算机上,并打开电源
(2)通过“系统”—>“管理”—>“正在打印”,打开“打印机配置”对话框。然后点击“新打印机”,自动就开始搜索连接到电脑上的打印机。如果能够识别打印机的话,则会自己选择连接上的打印机。
(3)点击“前进”,选择打印机厂商和型号以便安装相应的驱动程序。
(4)点击“前进”,设置打印机名称,最后点击“应用”就完成了本地打印机的添加了。
2.共享打印机的设置
在“服务器设定”里够选上“显示被其他系统共享的打印机”,“共享连接到这个系统上的公共打印机”,“Allow printing from the Internet”,“允许远程管理”,“允许用户取消任何任务(包括不是自己的任务)”。
如果要windows 2000/xp共享该打印机,还需要进一步设置:对/etc/cups/mime.convs和mime.types进行修改。
(1)修改mime.convs
打开该文件,在最后几行找到
“application/octet-stream application/vnd.cups-raw 0 -”
如果前面加有注释号“#”,则将其去掉,然后保存设置。
(2)修改mime.types
打开该文件,在最后几行找到“application/octet-stream”,如果前面加有注释号“#”,则将其去掉,然后保存设置。
-------------------------------------------------------------------------------------------
1、直接利用CUPS提供打印服务器
(1)“开始”/“打印机和传真”/“添加打印机”/,打开“添加打印机向导”对话框。
(2)点击“下一步”,选择“网络打印机或连接到其它计算机的打印机(E)”。
(3)点击“下一步”,选择“连接到Internet、家庭或办公网络上的打印机(O):”在URL栏中填入打印机服务器的地址http://172.16.22.66:631/printer/epson。可以通过http://IP地址:631来管理CUPS打印机,进入界面后选择“printer”,就可以看到已经安装的CUPS打印机。
(4)如果地址正确且连接没有问题,则会提示你安装驱动程序,然后选择相应的驱动程序后,打印机的添加工作就算完成了,如不出意外就可以使用打印机。
这种方法配置起来比较简单,但是有一个缺点,即使必须给客户端安装打印机的驱动程序,如果客户端数量很多的话,那工作量就相当的大了,所以觉得还是用Samba和CUPS结合一起提供打印,有点就是在服务器上安装了驱动程序后,客户端就可以不用安装了。
2、利用Samba和CUPS结合提供打印服务器
首先先在smb.conf添加对打印机的支持
[printers]
comment = All Printers
path = /var/spool/samba
browseable = no
guest ok = yes
public=yes
writable = no
printable = yes
printer admin=ghost

[print$]
comment=printer drivers
path=/etc/samba/drivers
browseable=yes
read only=yes
write list=ghost
此外还要添加一个Samba用户,该用户必须是系统存在的用户
[root@localhost~]smbpasswd -a ghost
[root@localhost~]chown ghost /etc/samba/drivers
因为打印机的管理员和驱动的管理员都设定为ghost,所以也要对该文件夹改变一下权限。
然后还得cups-samba-1.1.16.tar.gz和cups-windows-6.0-1.i386.rpm(软件包的版本自己选),如果是rpm包的话直接安装就可以了,如故是源代码包的话,要安装在/usr/share/cups/drivers,此外还要到windowsXP系统C:\WINDOWS\system32\spool\drivers\w32x86\3下去拷贝以PS开头的文件,然后把文件名都改成小写的,全部放在/usr/share/cups/drivers,但是一般在windows系统下默认没有这些文件,所以可以到Adobe网站http://www.adobe.com/support/downloads/product.jspproduct=44&platform=Windows)去下载PostScript,然后在windows系统安装后在拷贝那些文件。
然后就要告诉Samba,让CUPS提供客户端windows2000/XP的打印驱动
cupsaddsmb -H[samba主机名] -h[cups主机名] -a -v -U [用户账号]
然后就会罗列出一些信息,最后出现类似如下信息才算安装成功:
Printer Driver [打印机名] successfully installed.
Succesfully set [打印机名] to driver epson.
然后在/etc/samba/drivers下会出现一个W32X86的文件夹,里面的文件就是提供给客户端的驱动程序。

在打印过程中可以登录到Samba主机查看打印机的状态,打印工作等信息。
(1)lpstat:查看打印状态
(2)lpq:查看打印工作队列
(3)lprm:删除等待的打印队列

/etc/init.d/cups start

然后在CUPS服务器主机server中,我们要做好2个文件的设置,这两个文件分别是:
/etc/cups/cupsd.conf
/etc/cups/printers.conf

其中,cupsd.conf是控制cups服务的设置,而printers.conf则是对打印机进行设置的。

设置这两个文件并不复杂,这里不建议手工修改,因为可以用web方式来设置,然后自动生成。
只要在本机的网页浏览器输入这个网址,就可以进入CUPS的web设置界面:

http://服务器主机名:631 例如: http://server:631

不过在这里,觉得需要介绍一下这两个文件里面的内容,这样对大家的理解会有好处。
而且,我发现如果要限制用户的话,好像还是需要手动修改printers.conf文件的。

cupsd.conf文件中的内容:
#================================

AuthType Basic
AuthClass System
Order Deny,Allow
Deny From All
Allow From 127.0.0.1

#上面这个部分是设定对CUPS服务管理的权限,一般只准许从本机进行对CUPS服务的修改控制。
#所以可以看到 allow地址是 127.0.0.1

Order Deny,Allow
Deny From All
Allow From All

#上面这个部分是对CUPS服务的功能权限默认设置,一般如此,没有什么特别的。

#
# End of "$Id: cupsd.conf.in,v 1.16 2004/08/18 17:53:47 mike Exp $".
#

# Lines below are automatically generated - DO NOT EDIT
#下面这部分是设置打印机在CUPS中的使用。因为服务器毕竟只是电脑,真正要打印还是通过打印机
#从设置看基本上也是全部使用权限开放,如果要限制IP地址区域的话,需要在Allow 后面进行设置。

#注意上面这一行,其中HP是打印机的名字,要和printers.cups中设置的一样才可以其作用。
Order Deny,Allow
Deny From All
AuthType None
Allow from All

#================================

printers.conf文件中的内容:
#================================
#下面这一行中的HP是打印机的名字,为方便设置,建议和打印机的网络主机名一致

Info Created by redhat-config-printer 0.6.x
DeviceURI lpd://HP/PORT1
State Idle
Accepting Yes
JobSheets none none
QuotaPeriod 0
PageLimit 0
KLimit 0
AllowUser root
AllowUser PETER
AllowUser SUSAN

#================================
这里,要重点说一下上面这部分中的黑体字那一行
DeviceURI lpd://HP/PORT1
这一行是定义打印机与CUPS服务器之间通过什么协议来连接,还有一些其它的候选协议如下:
file:/path/to/filename.prn
http://hostname:631/ipp/
http://hostname:631/ipp/port1
ipp://hostname/ipp/
ipp://hostname/ipp/port1
lpd://hostname/queue
socket://hostname
socket://hostname:9100

以上这些打印协议中,hostname指的是打印机的网络主机名,也可以用打印机的IP地址代替,631则是CUPS服务的端口号
这其中,port1一般是惠普打印机的默认queue,如果是多queue打印机,你可以通过ftp协议登陆到打印机上,然后看看打印机系统上根目录下有哪些目录,从中可以判断出queue的名字

这里要注意一个问题,因为我在实际操作中,发现 redhat-config-printer-gui 图形界面的打印机设置只支持 LPD 协议的打印机设置。也就是说,如果你采用 IPP, HTTP, 或者 socket,即使配置成功,测试页也可以打印,但是就是不可以使用 redhat-config-printer-gui 图形界面来对打印机进行进异步设置。为了方便起见,我建议大家还是选用 LPD 来设置CUPS服务器和打印机之间的连接。

还有 AllowUser 语句,通过这条语句,可以允许或限制特定用户的打印权限,假如没有这条语句,就是所有用户可以打印。
这条语句是需要手动添加的。
*注意每次通过redhat-config-printer-gui 图形界面进行设置后,AllowUser 语句都会被自动删掉,需要重新添加
另外有关于 cupsd.conf 文件的补充内容:
在做好上面的设置后,发现如果要限制IP网段的话,手工配置很麻烦,于是通过redhat-config-printer-gui图形界面来配置。
下面这一部分是采用redhat-config-printer-gui图形界面设置后自动在cupsd.conf文件产生的,不建议手动添加。
不过要注意的是,如果想要采用redhat-printer-config-gui图形界面来修改设置,在printers.conf文件中,网络打印协议要采用LPD协议:
#============================
Browsing On
BrowseProtocols cups
BrowseOrder Deny,Allow
BrowseAllow from @LOCAL
BrowseAddress 255.255.255.255
Listen *:631
#============================

这其中 Listen 语句是设定允许使用CUPS服务的网络限制的。"*"代表所有的网络
我在一些资料中看到,说是如果要设置网络区域,是要写成如下格式:
Listen 0.0.0.0:631
但实际上是错误的,如果写成象上面那样,会导致CUPS服务启动出错。
会给出如下的出错信息:Child exited with status: 98!
所以,正确方法还是用 *号代替所有网络。
至于其它区域段IP网络设置,大家可以通过 redhat-printer-config-gui图形界面中的 share 选项进行控制,非常方便,在此就不一一列举。

做完以上这些,重新启动一下CUPS服务就可以.
用 lpq.cups 命令看一下打印机的状态, 如果有 "HP is ready" 字样,就说明CUPS服务器设置成功了。

客户端设置:
前提是CUPS服务器的防火墙要打开,至少631端口号不能屏蔽。
客户端的设置非常简单,只需要配置一个文件:
/etc/cups/client.conf

client.conf文件内容:
#======================
#ServerName CUPS服务器地址或服务器名,例如:

ServerName server

#======================
的确是很简单吧,设置好后重启一下CUPS服务就可以了。 ”

我是通过上面的那篇文章设置的,前面的服务器设置都正常,问题可能处在客户端的设置,上面的帖子说要把客户端里面的/etc/cups/client.conf修改下,但是问题是现在所有的F5系统主机名字都是一样的 而其我是该了好几次的主机名都没办法改。用HOSTNAME命令和在HOTS下都没办法。


洛浦县13340673288: 如何配置 cups 以支持打印机共享 -
籍保阿法: /etc/init.d/cups start 然后在CUPS服务器主机server中,我们要做好2个文件的设置,这两个文件分别是:/etc/cups/cupsd.conf/etc/cups/printers.conf 其中,cupsd.conf是控制cups服务的设置,而printers.conf则是对打印机进行设置的.设置这两个...

洛浦县13340673288: NAS如何共享打印机? -
籍保阿法: 在数字存储设备的海洋中,群晖和威联通NAS无疑成为了家庭和小型企业的得力助手.今天,我们将深入探讨如何在这些NAS上实现共享打印机功能,并利用Docker版CUPS实现Airprint隔空打印,让NAS摇身一...

洛浦县13340673288: 深度系统可以共享另一台win7系统的打印机么? -
籍保阿法: 如果你的打印机是网络打印机(不是USB接口,而是网线连接的),那么你直接在 深度系统中添加网络打印机就好.更新你的深度系统,更新你的CUPS,然后你win7上的共享名不能包含中文、空格、大写字母、特殊字符 如果可以,你可以尝试使用Ubuntu 系统,非常成熟的Linux 桌面

洛浦县13340673288: 两台电脑如何共享一台打印机? -
籍保阿法: 两台电脑如何共享一台打印机操作步骤如下:一,首先在已连接到打印机的电脑上操作,利用快捷键“Windows+X”打开下面选项,并点击“控制面板”(如下图) 二,然后点击“查看设备和打印机”(如下图) 三,然后利用鼠标右键点击已...

洛浦县13340673288: Linux 下可以通过 CUPS 共享打印机,那有没有共享扫描仪的方案 -
籍保阿法: 文件和打印的共享有网络协议,扫描仪的没网络协议,所以各家都没出规范的协议,benq自己弄过一种可以共享的,但是我在佳能的机器上测试过不行.其实不要把问题想复杂了,扫描仪一般有扫描按钮,装了对应的应用程序就可以支持直接在机器上按,然后文件扫描到共享文件夹里,其他电脑就可以看了,这样就 是自动化了……如果没有的话,就考虑自己写个自动扫描,然后文件存在共享文件夹里就好了.然后考虑下怎样触发它……

洛浦县13340673288: 打印机问题,共享连不上. -
籍保阿法: 一、先选定一台电脑连接打印机,并安装好打印机驱动,并设为共享打印机. 1、共享打印机必须在网络上把文件夹和打印机共享的协议添加上.在win98系统在网上邻居的右键属性,在里面把文件夹和打印机共享的协议.在2000/XP上在本地...

洛浦县13340673288: 请教高手 我的打印机怎么共享不了 -
籍保阿法: 遇到这种问题,你应该检查下是不是你的局域网断开了.照你说的,在“浏览打印机”这一步时就不能查找到共享的打印机,这就说明这局域网有问题.如果你是自己分配的IP.IP号要网络号相同,主机号不相同.192.168.1是网络号,后面的就是主机号.至于你们局域网是不是通勒,建议你先共享个文件试试.或者进入运行——输入cmd——然后在当前窗口 ping 对反IP看是不是通的,就没问题了.

洛浦县13340673288: 打印机共享时 显示 (键入的打印机名不正确 或制定的打印机没有连接到服务器上) 请教高手 -
籍保阿法: 这种情况一般你在工作组那里找到打印机然后在连接就可以了,或者你装打印机的那台电脑驱动重新装一下

洛浦县13340673288: 局域网共享打印机有个麻烦的问题,请教哈! -
籍保阿法: 一、重新设置一下局域网. 1、工作组要相同. 具体操作: 右键 我的电脑 属性 计算机名 更改工作组. 2、禁用“GUEST”帐户. 具体操作:右键 我的电脑 管理 本地用户和组 双击用户 点 GUEST 右键 属性 账户已停用前勾上. 3、更改本地帐...

洛浦县13340673288: 请教共享打印机的设置问题
籍保阿法: 这和管理原密码没关系.一般我都不会启动guest用户直接把给关闭了.你说两台机器互访是需要来宾帐户和密码.你可以去在开始-->控制面板——>管理工具里-->本地安全策略.或者直接在开始——>运行输入gpedit.msc在....

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网