手机版
你好,游客 登录 注册
背景:
阅读新闻

Linux打印系统CUPS原理分析

[日期:2010-12-20] 来源:Linux社区  作者:weileij [字体: ]

2.4 CUPS基本设置

要使用CUPS进行打印工作,你需要同时设置好你的打印机硬件和CUPS软件。设置分为两大部分:

1.      简单的打印机设置,

2.      高级打印机设置

2.4.1简单的打印机设置

如何配置打印机硬件和CUPS软件。包括:

(1)硬件设置这一节说明如何将打印机接到计算机的连接端口。

(2)软件设置这一节说明如何设置CUPS后台打印系统的配置文件(/etc/cups/printers.conf)。

CUPS可以通过网页浏览器从打印服务器的631端口访问。打开浏览器,指向http://127.0.0.1:631 ,点击Manage Printer。这里你可以找到你新安装的打印机,配置打印机并测试一个页面。也可以从命令行管理CUPS。

对于CUPS来说,只有root用户才能配置打印机,在浏览器界面下root用户可以根据打印机的型号进行配置,其中包括选择打印机端口、根据打印机的型号选择相应的驱动。如果要使用另一型号的打印机,则需要为该打印机建立新的配置或者修改现在默认打印机配置。

推荐的打印驱动程序是根据选定的打印机型号而选择的。打印驱动程序把你想打印的数据处理成打印机能够理解的格式。由于本地打印机是直接连接到你的计算机上的,你需要一个打印驱动程序来处理发送给打印机的数据。

同时需要说明的是,root用户可以配置多个打印机(本地、远程、网络),在某一时刻只有一个打印机配置文件起作用(默认打印配置),如果需要使用另一打印配置则需要更改默认配置。所有打印机的配置信息存放在一个配置文件中(/etc/cups/prnter.conf)。

2.5 CUPS打印方式

(1)通过cat等命令直接送往/dev/lp0等打印端口

该方式不需要特定的打印系统支持,如果以终端用户登陆使用vncviewer和Xvnc则启动的cat进程将属于Xvnc的子进程,该进程直到打印完成之后才会结束。

(2)通过使用打印系统提供的打印命令lpr等

对于CUPS打印系统,lpr的作用是通过IPP协议与cupsd后台服务进行通信,提交相应的请求(request),通过类似于HTTP协议的请求与应答提交相应的打印作业的内容,包括建立打印临时文件,使用何种打印配置,传送打印文件内容。cupsd接受到请求后,根据提交的请求信息形成打印任务,为打印任务分配id,根据任务优先级插入到统一的打印任务队列中。cupsd循环地检测打印队列状况,根据任务的属性和打印机的属性决定是否进行打印操作。

(3)通过应用程序进行打印 

当CUPS打印系统设置完毕后,应用程序使用打印系统进行打印可分为两种情况,第一种情况就是某些应用程序(Mozilla、OpenOffice、Emacs)自动的调用CUPS的打印命令lpr将文档送往默认打印机进行打印;第二类应用程序(xpdf)将文档内容转换成后缀为ps的文件,然后再手工调用CUPS打印命令进行打印。

值得一提的是CUPS系统打印测试页方式不同于以上的打印方式,因为测试页文档是一个固定的文档(testprint.ps),通过浏览器方式打印测试页通过IPP协议并调用printers.cgi将打印任务提交给CUPS后台服务程序。

2.6 CUPS原理分析

为了对打印任务进行控制,Linux将打印系统分为上下两部分,上半部分和需打印的应用程序合作,负责打印任务的生成和管理工作,分别由过滤器和打印系统后台程序(cupsd,lpd)完成,下半部分负责与打印机通信,由运行于内核空间的驱动程序lp完成,打印机后台程序负责在过滤器和lp之间传递打印任务。


linux
相关资讯       Linux教程 
本文评论   查看全部评论 (0)
表情: 表情 姓名: 字数

       

评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款