在所有开发之前遇到的问题就是,我们已经在Linux上安装了打印机的驱动,但其他局域网内的计算机不知道怎么样连接到打印机了。。。
在查询了一早上的资料后,发现在Linux上共享打印机比之前要更简单一些,步骤如下:
下面一步一步来说:
在ubuntu上安装cups服务和安装其他组件没有什么区别,一条命令,毫无压力
在安装的时候遇到了依赖无法解决的问题,但是提示说使用 --fix-missing 选项来 update ,那就试一下
完成~
cups在浏览器中提供了一个gui的控制页面,如果你的ubuntu是有图形化界面的,那你可以直接使用 >为了假装学习,在某宝上剁了一台HP打印机,用了一阵子后发现个,每次打印都要开台式机(USB打印机连在台式机上),很麻烦,如果能把打印机连在NAS服务器上,就好多了。事不宜迟,马上开搞,以下是搞机的记录:
ubuntu上打印机的驱动安装,与具体的型号和品牌有关,hp的是通过hplip工具来实现。具体安装很简单,一路确认就可以。不确定的简单搜索就可以了,以下是参考:
hplip地址: >使用 "Printer Properties"(打印机属性)对话框中的选项可修改已配置打印机的属性。有关说明,请参见如何修改已配置打印机的属性。Printer Properties"(打印机属性)对话框包括以下六个有关配置新打印机和现有打印机的有关用于访问打印机的协议的信息。例如,可以使用 LPD 指定 RFC-1179 协议或使用 IPP 指定 Internet 打印协议单击 "Change"(更改)按钮可以更改 "Make and Model"(品牌和型号)选项的缺省设置。在 "Policies"(策略)部分中,可以配置用于控制打印机行为方式的属性。State(状态) 指定是否随每个打印作业一起打印起始或结束标题页。Allow"(允许)或 "Deny"(拒绝)列表确定可以打印到打印机的用户。
确定与打印作业关联的选项(例如副本数量和页面定位)以及某些图像选项。选项的数量和类型由与指定打印机关联的 PPD 文件决定。有关可以使用 CUPS 打印管理器 GUI 修改的所有属性的完整说明,请参见可配置的打印机属性。启动 CUPS 打印管理器 GUI,方法是从桌面主菜单栏中选择 "System"(系统)-> "Administration"(管理)-> "Print Manager"(打印管理器),或在终端窗口中键入以下命令:$ system-config-printer 此时将显示 "Printer configuration"(打印机配置)对话框,其中列出所有已配置的打印机和所有新检测到的打印机。右键单击要修改其属性的打印机的名称,然后选择 "Properties"(属性)。此时将显示 "Printer Properties"(打印机属性)对话框。"Properties"(属性)对话框包含五个独立的部分,每个部分都包含按类别分组的属性。缺省情况下,将显示对话框的 "Settings"(设置)部分要修改打印机描述或位置,请在相应的文本字段中键入新信息。
要修改设备 URI,请执行以下 *** 作:单击设置旁边的 "Change"(更改)按钮。
从可用设备列表中,选择一个设备,然后单击 "Apply"(应用)。
有关可用设备的说明,请参见选择打印设备。
出现提示时,键入 root 用户的口令。
此时将返回到 "Settings"(设置)部分。
要修改打印机的品牌和型号,请执行以下 *** 作:单击设置旁边的 "Change"(更改)按钮。
在 "Choose Driver"(选择驱动程序)窗口中,选择一个打印机制造商,然后单击 "Forward"(前进)。
注 -缺省情况下,CUPS 使用 "Select Printer From Database"(从数据库中选择打印机)选项并选择适用于您的打印机制造商。或者,您也可以提供自己的 PPD 文件。有关说明,请参见如何设置新的本地打印机的步骤 3。
在接下来的 "Choose Driver"(选择驱动程序)窗口的左窗格中,选择打印机型号。在右窗格中,选择打印机驱动程序,然后单击 "Forward"(前进)。
在 "Existing Settings"(现有设置)对话框中,从以下选项中进行选择,然后单击 "Apply"(应用)。
Use the new PPD (Postscript Printer Description) as is(按原样使用新的 Postscript 打印机描述 (PPD) 文件)。
Try to copy the option settings over from the old PPD(尝试从旧的 PPD 中复制选项设置)。
如果出现提示,请键入 root 口令。
此时将返回到 "Printer Properties"(打印机属性)对话框的 "Settings"(设置)部分。
如何重命名打印机启动 CUPS 打印管理器 GUI,方法是从桌面主菜单栏中选择 "System"(系统)-> "Administration"(管理)-> "Print Manager"(打印管理器),或在终端窗口中键入以下命令:$ system-config-printer
此时将显示 "Printer configuration"(打印机配置)对话框,其中列出所有已配置的打印机和所有新检测到的打印机。
右键单击要重命名的打印机的名称。
选择 "Rename"(重命名)选项。
键入打印机的新名字。
出现提示时,键入 root 口令。
单击 "OK"(确定)保存更改。
如何复制打印机配置启动 CUPS 打印管理器 GUI,方法是从桌面主菜单栏中选择 "System"(系统)-> "Administration"(管理)-> "Print Manager"(打印管理器),或在终端窗口中键入以下命令:$ system-config-printer
此时将显示 "Printer configuration"(打印机配置)对话框,其中列出所有已配置的打印机和所有新检测到的打印机。
右键单击要复制配置的打印机的名称。
选择 "Copy"(复制)选项。
在 "Copy Printer"(复制打印机)窗口中,键入打印机的名称,然后单击 "OK"(确定)。
出现提示时,键入 root 口令。
单击 "OK"(确定)。
如何删除打印机启动 CUPS 打印管理器 GUI,方法是从桌面主菜单栏中选择 "System"(系统)-> "Administration"(管理)-> "Print Manager"(打印管理器),或在终端窗口中键入以下命令:$ system-config-printer
此时将显示 "Printer configuration"(打印机配置)对话框,其中列出所有已配置的打印机和所有新检测到的打印机。
右键单击要删除的打印机的名称,然后选择 "Delete"(删除)。
在 "Confirm Deletion"(确认删除)对话框中单击 "OK"(确定)。
如何取消共享或共享打印机
缺省情况下,新的打印机已配置为启用 "Share"(共享)选项,即这些新打印机会发布到本地网络中。以下过程介绍了如何取消共享打印机或启用已取消共享的打印机。启动 CUPS 打印管理器 GUI,方法是从桌面主菜单栏中选择 "System"(系统)-> "Administration"(管理)-> "Print Manager"(打印管理器),或在终端窗口中键入以下命令:$ system-config-printer
此时将显示 "Printer configuration"(打印机配置)对话框,其中列出所有已配置的打印机和所有新检测到的打印机。
右键单击要取消共享或要共享的打印机的名称,然后取消选择相应选项。
出现提示时,键入 root 口令。
单击 "OK"(确定)。
如何禁用或启用打印机
使用 CUPS 打印管理器配置新打印机时,该打印机在缺省情况下处于启用状态。以下过程介绍了如何禁用或启用打印机。启动 CUPS 打印管理器 GUI,方法是从桌面主菜单栏中选择 "System"(系统)-> "Administration"(管理)-> "Print Manager"(打印管理器),或在终端窗口中键入以下命令:$ system-config-printer
此时将显示 "Printer configuration"(打印机配置)对话框,其中列出所有已配置的打印机和所有新检测到的打印机。
右键单击要禁用或启用的打印机的名称,然后取消选择相应选项。
出现提示时,键入 root 口令。
单击 "OK"(确定)。
如何管理指定打印机的打印作业启动 CUPS 打印管理器 GUI,方法是从桌面主菜单栏中选择 "System"(系统)-> "Administration"(管理)-> "Print Manager"(打印管理器),或在终端窗口中键入以下命令:$ system-config-printer
此时将显示 "Printer configuration"(打印机配置)对话框,其中列出所有已配置的打印机和所有新检测到的打印机。
右键单击要管理其打印作业的打印机的名称,然后选择 "View Print Queue"(查看打印队列)。
此时将显示 "Document Print Status (printer-name)"(文档打印状态 (printer-name))窗口,其中列出指定打印机的所有打印作业。要查看有关已完成的作业或打印机状态的信息,请从 "View"(查看)菜单中选择相应的选项。
要对某个打印作业执行特定 *** 作,请选择该打印作业,然后从菜单栏上的可用选项中选择一个 *** 作。
或者,也可以右键单击打印作业的名称,然后从可用选项列表中选择一个 *** 作。当打印服务器以正在从假脱机(spool)中转发的状态停机时,由于是处于被转发至打印设备之前的状态,因此不进行接替。
·对于处于转发完成后正在中断的状态的作业,由于其有可能已经被发送至打印设备且已开始排纸,因此通过接替执行作业的踪迹并且确认作业的完成,从而防止双重打印。
·当打印作业已经完成或因错误而结束时,不作为接替对象。
另外,还提出了一种打印系统,其将多台打印机集群化,当正在使用的打印机发生了故障时,由其他打印机代替执行打印(例如,参照专利文献2、3)。在专利文献2所记载的网络管理装置中,当正在执行基于所输入的打印作业的打印处理的打印装置发生了故障时,打印服务器根据从打印装置通知的故障发生信息,作成由发生了故障的打印装置未打印的打印数据和该打印数据的控制码构成的代替执行打印作业,并将所作成的代替执行打印作业输出至代替执行打印装置。
另外,在专利文献3所记载的打印作业的分布处理系统中,当合作打印机(partner printer)发生错误时,停止继续打印直至配对的任意一台打印机中解除错误为止。然后,所注视分布目标的打印机从打印机控制器接收未打印页面信息,并且接收存储在打印缓冲区内的分布作业,并变更分布作业的控制数据,生成要求打印未打印页面的未执行作业并提供给合作打印机。
Linux打印服务器部署流程:
之前一直没有成功,原因至今也不睡特别确定,但是今天刚好看到鸟哥的书上说到要装PPD的打印服务的。记得上次没有装这个就重新试了一下。注意安装是要联网的。
打印驱动的网址:>
好像就是之前惠普官方的工程师发给我的那个。除了Ubuntu,其他的Linux系统也是可以安装的,比如CentOS和其他。下载的时候还跳出一个网页,
>
>
好像是一个证书文件,但是之后并没有用到。
驱动的安装方法在下载完成后的页面中有详细的每一步的解释。甚至告诉你CD是什么意思这种公司也是把我看醉了,国人做事要是也能这样,能节省多少大家沟通的时间啊!
注意,安装的过程中有很多的选择要输入,最后会问是要重启继续安装还是插拔打印机什么的(如果没有这步的话就和我之前一样了,能看到打印机但是不能用)。这步之后就是自动从惠普网站上下载PPD服务。安装好了之后基本上就算可以用了,不用教了吧。
测试页比win的好看太多了
截止目前算是可以打印了,但是要做到网络打印的话还要装一个cups服务(苹果公司出的,感觉好神奇)
sudo apt-get install cups
安装好这个服务后ubuntu下浏览器打开127001:631勾选图中三项,注意特别是use K什么什么的那个千万不要选,这个会通过证书提高你的打印机的安全性,但是目前没弄清楚这个证书怎么安装。如果你不小心手贱了的话,再修改设置就会提示“请输入您的用户名称和密码或者root 用户的用户名称和密码来访问此页面。如果您正在使用Kerberos 鉴定,请确定您拥有的Kerberos 票据是有效的。”很麻烦了,我用的方法是复原设置,即修改/etc/cups/cupsdconf文件为原来的文件,网页上有的哦 复制默认设置覆盖上述文件的内容就好了 没找到的话评论留,我再详细告诉你吧
另外测试的时候还发现一个很重要的问题,就是一般在win上,一台电脑装了打印机共享之后,其他电脑是自动装驱动的,但是ubuntu当服务器的话并不能如此,需要win上面自备驱动的。
安装后,根据你服务器的IP在IE下打开CUPS服务的主页,点Printers,再打开你打算用的那台打印机:
打开后网址就是打印机的位置,
之后到win下添加网络打印机,你会发现找不到,点我需要的不在列表中,自己把网址复制粘贴进去就好了
之后会找驱动,并提示你选择,这个时候如果你找不到自己的打印机的驱动的话,就要面壁了,之前说过win上的驱动是要自备的,你需要去官网上下载你的打印机的win的驱动安装好!
之后就是下一步下一步打印测试页了~
怎么编译的,/configure --prefix=/home/lh/utu2440/cups-arm/ArmCups --host=arm-linux CC=arm-linux-gcc --disable-gnutls --disable-gssapi --disable-dbus
生成Makefile之后
make
会报错
/home/lh/CrossTools/usr/local/arm/341/bin//lib/gcc/arm-linux/341/////arm-linux/lib/libc_nonshareda(elf-initoS)(text+0x44): In function `__libc_csu_init':
在cpus目录之下生成了动态库
libcupsso
在make intall
又会报错
home/lh/CrossTools/usr/local/arm/341/bin//lib/gcc/arm-linux/341/////arm-linux/lib/libc_nonshareda(elf-initoS)(text+0x44): In function `__libc_csu_init':
安装目录生成
etc lib share var
你是怎么编译成功的?
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)