在所有开发之前遇到的问题就是,我们已经在Linux上安装了打印机的驱动,但其他局域网内的计算机不知道怎么样连接到打印机了。。。
在查询了一早上的资料后,发现在Linux上共享打印机比之前要更简单一些,步骤如下:
下面一步一步来说:
在ubuntu上安装cups服务和安装其他组件没有什么区别,一条命令,毫无压力
在安装的时候遇到了依赖无法解决的问题,但是提示说使用 --fix-missing 选项来 update ,那就试一下
完成~
cups在浏览器中提供了一个gui的控制页面,如果你的ubuntu是有图形化界面的,那你可以直接使用 http://localhost:631 进入管理页面,如果你的ubuntu是服务器版本的,那就从局域网中输入ip进入吧。
页面长成这个样子。
其实这些内容已经非常明白了,上面是一个导航,你可以进入不同的菜单。这里主要关注的是两个地方,一个是导航栏中的 Printers ,另一个是 Adding Printers and Classes 。首先查看Printers中有没有你想要共享的打印机,如果有的话,可以跳过这一步。如果没有的话,你需要进入 Adding Printers and Classes 来选择你的打印机并添加,一路选择默认即可。
这里需要注意的是,我已经在共享之前配置好了本地的打印机设置和驱动,也就是利用ubuntu自带的打印机管理就可以,因此这里没有什么技术障碍,就略过了。
在cups中共享的打印机有统一的链接地址,首先,进入导航栏的 Printers 页面中,页面中可以看到你刚才添加或默认添加的打印机。
点击你要共享的打印机项,你可以进入一个详情,详情上的url就是远程访问的打印机地址。
当然,如果你的地址是 localhost ,只需要转换成对应的区域网ip即可访问。
cups默认是不会共享打印机的,因此你需要在导航栏的Administration中做一点 *** 作。
在 Administration 页面中,勾选 Share printers connected to this system 和 Allow printing from the Internet 选项并点击 Change Settings 保存配置。
这个时候,你在其他计算机上已经可以访问该打印机了,只需要输入URL即可搜索到该打印机。
然后选择对应的驱动,确认,完成。
现在已经可以开始打印了~
方法:(1)正确安装和配置Samba服务器。
(2)将运行Windows9x/2000上的打印机设置为共享。
(3)在Linux系统的/etc/printcap中为网络打印机建立一个新的队列,如下:
smb: \
:sd=/var/spool/lpd/smb: \
:mx # 0: \
:sh: \
:lp=/dev/null: \
:af=/var/spool/lpd/smb/acct: \
:if=/var/spool/lpd/smb/filter:
将Samba软件包提供的smbprint拷贝到Samba安装目录/bin子目录里并设置成可执行模式。
(4)在/var/spool/lpd/smb/目录下,创建打印过滤器文件filter。
# ! /bin/sh
DEVICE=“打印机型号名称(如:LJET4)”
RESOLUTION=600*600
PAPERSIZE=“打印纸型号(如:A4)”
SENDEOF=
nenscript -TUS -ZB -p-|
if [" $ DEVICE"="PostScript"]then
cat - | /usr/local/samba/bin/smbprint –
else
gs -q -s DEVICE=$DEVICE \
-r $RESOLUTION \
-s PAPERSIZE=$PAPERSIZE \
-d NOPAUSE \
-d SAFER \
-s Outputfile=-- | /usr/local/samba/bin/smbprint –
fi
if ["$ SENDEOF"!=""]then
printf""
fi
exit 0
以上smbprint运行时需要一个.config的打印信息文件,这个文件在printcap定义的/var/spool/lpd/smb目录下建立,如下:
server=“打印服务器名称(如:SISKIN)”
service=“打印机型号名称(如:LJET4)”
password=“网络打印机共享名及口令”
(5)重新启动打印管理器
# lpc restart all
(6) 打印
% lpr –P smb 文件名
当前 Linux 系统采用两套软件配合显示和管理打印。第一,CUPS(Common Unix Printing507System,一般 Unix 打印系统),用于提供打印驱动和打印任务管理第二,Ghostscript,一种
PostScript 解析器,作为 RIP 使用。
CUPS 通过创建并维护打印队列来管理打印机。如前所述,Unix 下的打印原本是设计成多
用户共享中央打印机的管理模式的。由于打印机本身比连接到它的电脑要慢,打印系统就需要
对打印任务进行调度使其保持顺序。CUPS 还能识别出不同类型的数据(在合理范围内)并转
换文件为可打印的格式。
为打印准备文件
作为命令行用户,尽管打印各种格式的文本都能实现,不过打印最多的,还是文本。
23.3.1 pr - 转换需要打印的文本文件
前面的章节我们也有提到过 pr 命令,现在我们来探讨一下这条命令结合打印使用的一些选
项。我们知道,在打印的历史上,基于字符的打印机曾经用过等宽字体,致使每页只能打印固
定的行数和字符数,而 pr 命令则能够根据不同的页眉和页边距排列文本使其适应指定的纸张。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)