工作中linux安装打印机和扫描仪

CentOS 连接联想打印机,联想Lenovo M7650DNF打印机Linux下驱动很难找,看到一篇日志说是联想的打印机可能跟brother的驱动相似。
设置过程是:系统-管理-打印-新建,在网络打印机中选择Lenovo M7650DNF型号,然后就是选择驱动,选brother的,HL-8050N。完成。打印测试页,可以打印。

在具体讲述如何安装打印机之前,先来看一下对于打印的一些比较关键的问题。

  • 打印机的命令方式:从总体上来看,打印的命令方式可以分成文本、PostScript和其它种类。

      所谓文本,就是那些比较古老的针式打印机,我们可以直接 cat text_file > /dev/lp0,这种打印机现在已经很少使用了,在Linux上使用这类打印机是一点问题都没有的。【这种打印机基本已淘汰】
    
    相信PostScript这个词大家都是听说过的, PostScript实际上是一种专门用于打印方面的脚本语言;能够直接支持PostScript的打印机,通常都是非常高级的办公用打印机;PostScript语言是计算机和这类打印机之间沟通的方式。【这种一般家庭或企业也不会用】
    
    再有就是现在我们经常用到的各种比较低档的打印机,喷墨的或者激光的都有;它们不支持PostScript,通常都是使用厂家自己的命令集。【这才是我们最常用的打印机】
    
  • 应用程序的打印支持:Linux上的各种应用程序,都是通过输出PostScript来描述需要打印的页面的,而在将来,这种趋势不会发生任何变化。

  • GhostScript:对于支持PostScript的打印机而言,要支持Linux是比较容易的,但对于那些并不支持PostScript的打印机而言,就必须要能够把 PostScript格式的页面描述,转换成为这些打印机能够识别的打印命令。而GhostScript就是用来完成这个工作的,它能够解析 PostScript命令,并用相应的驱动来显示它们。譬如GhostScript可以把一个PS文件显示在屏幕上,也可以借助打印机厂商的驱动将PS文件转换成打印命令。

  • PPD:PPD是用来描述打印机功能的文件,要使用一款打印机之前,必须找到其PPD文件,并正确地安装到打印管理器程序上。【我们也把PPD称为Linux下的打印机驱动程序】

  • 打印管理程序:作为一个多用户多任务的操作系统,Linux上的所有程序都是基于多任务、多用户而设计的,打印也不例外。为了让不同的用户、不同的任务在打印的时候不会产生冲突,就需要一个打印管理程序。这类管理程序很多,从传统的LPD,到时下非常流行的CUPS。它们功能各异,但有一点不变的就是都是用来协调打印任务的。CUPS的工作方式如下:通过命令行接收要打印的文件;通过文件的类型判断是否需要将其转换为PostScript,如果需要,则调用相应的应用程序进行转换;通过PPD文件来判断GhostScript应使用何种驱动处理此PostScript文件;把GhostScript处理的结果输出到打印设备上。

  • 把一切整合在一起:由于打印领域长时间的混乱,诞生了各种打印管理程序,而要学会为每一个打印管理程序安装驱动,是一件痛苦的事情(仅仅学习CUPS却是非常愉快的)。于是就出现了 foomatic,它的作用是通过一种方式管理所有的打印机,把PPD和打印管理程序的配置屏蔽掉,给用户一个统一的界面。

综上所属,要在Linux上使用一台打印机,首先必须确定它被支持,然后需要选择一个打印管理程序并配置好打印驱动。最后,能否产生正确漂亮的打印结果,则要看应用程序能否生成正确的PostScript文件。过去,有很多程序不能正确的打印中文,主要就是因为它们不能正确的处理中文的字符集或者中文字体。下面,我会介绍在DeepinOS上安装配置CUPS并进行打印的过程,并不包括foomatic。

用CUPS打印

Common Unix Printing System(CUPS)是一个出现的比较晚的打印管理程序,也正是如此,它的功能很现代,界面也非常友好。出现的晚,并不代表功能少和支持不广泛,CUPS拥有丰富的功能,支持各种各样的打印机,且被各种应用程序广泛地支持。

安装打印管理器

DeepinOS 上的CUPS被分散在几个软件包中,包括库、服务器、客户端等等。连接了打印机的机器需要安装服务器,而要提交打印任务的机器,则必须安装客户端。服务器的包是cupsys,客户端的包是cupsys-client和cupsys-bsd,前者是CUPS自己的客户端,后者是用来替换BSD的lpr命令的,这样可以让一些比较古老的应用程序继续通过lpr命令进行打印。

通过apt-get命令分别安装打印机和服务器:

apt-get install cupsys foomatic-filters

apt-get install cupsys-client cupsys-bsd

foomatic-filters这个软件包对于CUPS系统来说是非常必要的,千万别忘了。

安装打印机驱动程序

这里我们所说的驱动程序,包含以下三个方面:

  • PPD文件:要获得这个文件有很多的方法,但最简单的就是到http://www.linuxprinting.org去下载。同一台型号的打印机有时会有不同的PPD文件,譬如HP LaserJet6L就有四个(驱动一般选择推荐recommmend),要根据硬件的情况来选择,譬如其中的PostScript类型就不能用于HP LaserJet6L款的打印机上,因为这一款打印机去掉了PostScript模块。下载PPD文件后,要将其复制到安装了CUPS服务器的计算机的 /usr/share/cups/model目录中,然后重新启动CUPS的服务器。
  • GhostScript驱动:GhostScript有几个版本,其中Debian缺省使用的是gs-esp。这个版本的GhostScript已经将各种Free的驱动编译到其中。
  • 其它程序:如果是用HP系列的打印机,通常会需要hpijs。不同的厂商还会提供一些用于管理其打印机的程序,譬如检查墨盒容量等等,可根据自己的需要安装。

添加打印设备

安装好打印驱动之后,下一步的工作就是把已经完成的设备添加到CUPS的打印设备列表里面。这一步可以有很多种方式,但最简单的,就是用CUPS自己的 Web管理界面。在安装了CUPS服务器的计算机上,访问http://localhost:631/就可以了。当添加打印机时,用户需要输入账号密码,此时可以用root账号,但只要用户在lpadmin这个组中,就可以管理打印机了(addusr hostname lpadmin)。

常见的问题

  1. 为何XX程序不能打印中文?

如上所属,能不能打印中文,关键在于负责生成PostScript的程序是否能够支持中文,很多老的命令行工具都是无法支持中文的,即便是新的软件,也不见得能够支持地很好。

  1. 显示时的中文粗体为何打印的时候没有?

现在很多用xft/fontconfig的朋友都打了firefly的粗体补丁,但这个补丁仅仅是用在显示上的。当打印时,往往是直接从字库中提取字形信息,并嵌入到PostScript文件中的,字库里面是什么样子,打印出来就是什么样子。

这种web端的服务就叫做cups ,所以安装驱动的第一步就是安装这个服务:

终端运行:sudo apt-get install cups cups-client cups-bsd foomatic-filters .

通常这些软件都是系统默认已经装好的.

接下来就是安装打印机驱动.

比如HP的驱动直接: sudo apt-get install hpijs hplip

驱动安装成功后,开启cups服务.sudo /etc/init.d/cups restart

开启成功后,在浏览器中直接访问http:\localhost:631 即可看到配置页面.一路点击增加一个打印机,选择对应的打印机,一路点下去,直到最后一步选择打印机的model,选择已经安装好的驱动 带hpijs的那个(或在下拉中选中自己型号对应的系统默认驱动).一个打印机便添加完成了.

局域网共享设置

打印成功后,整个局域网都可以共享使用这个打印机,客户机可以是windows,也可以是linux. 那么共享的地址究竟是何呢? 谁有权限访问cups的打印机及管理地址呢?
在主机的/etc/samba/smb.conf文件中,我们完全可以设置这些选项:
一 、设置端口:
#将
#Listen localhost:631
#修改成
Listen 0.0.0.0:631
二、设置 共享权限
#将
#
Order allow,deny
Allow localhost
#
#修改成

Order deny,allow
Allow From 192.168.1.*

保存好,然后sudo /etc/init.d/cups restart .
在浏览器中输入http://主机的ip/631/printers 敲击回车选择对应的打印机

  • 2
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值