使用Linux共享打印机

使用Linux共享打印机,第1张

实验室一直使用Windows的服务器来共享打印,但是由于windows的。。。。开发环境比较恶劣,终于我们也换成了ubuntu来支撑日常的工作。

在所有开发之前遇到的问题就是,我们已经在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 Printing

507System,一般 Unix 打印系统),用于提供打印驱动和打印任务管理第二,Ghostscript,一种

PostScript 解析器,作为 RIP 使用。

CUPS 通过创建并维护打印队列来管理打印机。如前所述,Unix 下的打印原本是设计成多

用户共享中央打印机的管理模式的。由于打印机本身比连接到它的电脑要慢,打印系统就需要

对打印任务进行调度使其保持顺序。CUPS 还能识别出不同类型的数据(在合理范围内)并转

换文件为可打印的格式。

为打印准备文件

作为命令行用户,尽管打印各种格式的文本都能实现,不过打印最多的,还是文本。

23.3.1 pr - 转换需要打印的文本文件

前面的章节我们也有提到过 pr 命令,现在我们来探讨一下这条命令结合打印使用的一些选

项。我们知道,在打印的历史上,基于字符的打印机曾经用过等宽字体,致使每页只能打印固

定的行数和字符数,而 pr 命令则能够根据不同的页眉和页边距排列文本使其适应指定的纸张。


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

原文地址: http://outofmemory.cn/yw/7107863.html

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

发表评论

登录后才能评论

评论列表(0条)

保存