如何配置cups以使用windows共享的打印机

如何配置cups以使用windows共享的打印机,第1张

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下都没办法。

首先执行更新,我之前就是没执行更新,导致后续 *** 作错误,下载安装时会提示404 找不到文件

sudo apt-get update

更新一番之后继续执行,安装Cups

sudo apt-get install cups

配置用户

sudo usermod -a -G lpadmin pi

下面替换CUPS的配置文件,首先停止服务

sudo service cups stop

备份原有文件

sudo mv /etc/cups/cupsd.conf /etc/cups/cupsd.conf.bak

从服务器上下载新的配置文件

cd /etc/cups/

sudo wget http://jxeeno.tk/local--files/blog:raspberry-pi:print-server/cupsd.conf

完成,现在可以启动服务了

sudo service cups start

下一步设置打印机,首先将打印机连接到树莓派上,然后在浏览器中输入 https://ip:631 进入配置界面 打开的是一个网站,在上面菜单栏中找到Administrator,会提示你用户名和密码,输入树莓派的用户名和密码即可

登录后,在Printers栏目中点击Add Printer

显示的Local Printers会有你连接上的那台打印机,选中它点击continue

在这个界面Name是打印机的名字,以后用来在URL中确定打印机,所以短一些比较好、

勾选Sharing,别的不用变,点Continue

下一个界面选择驱动程序,如果在Model栏目中有打印机的型号就最好了,否则可以上传打印驱动程序

最后就设置完成了,复制最后一个界面的URL,也就是类似于http://ip:631/printers/打印机名 就可以在其他电脑上添加共享打印机了


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/tougao/11888505.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-19
下一篇 2023-05-19

发表评论

登录后才能评论

评论列表(0条)

保存