如何使LBP-1120佳能打印机工作?
最初这个问题仅限于11.10。 现在我在(Lubuntu)12.10。 (关于问题的变化,请参阅此元问题 )。
考虑到11.10
我尝试了不同的(或没有那么不同的)方法 – 其他用户也在这里评论过。 我的主要参考资料是:
- LBP Canon驱动程序包上的ubuntu官方文档网站 ,
- 这个 Unixmen解决方案部分是指Radu Cotescu脚本 ,旨在提供近乎自动化的安装,以及
- 由Unixmen版本更新的脚本( 在这里下载)。
没有人为我工作。
就Ubuntu 12.04 – 13.10而言,这个答案变得非常漫长而且杂乱无章。 下面的答案提供了相同的解决方案,但更清晰。
考虑到12.04
它的工作方式与下面的12.10相同。
但是在12.04基于Ubuntu的eOS Luna中尝试了这一点,我无法让它发挥作用。 事实上,我在12.04和12.10的答案在Xubuntu和Lubuntu过了一段时间后停止了工作,但我让那些人在这里,因为他们似乎对其他投票的人有用。
我有一个新的解决方案(在eOS和2.6驱动程序中测试) – 在这里介绍。
考虑到12.10,13.04
我按照Ubuntu文档页面和驱动程序附带的驱动程序手册中的步骤操作:
(v.2.4在该链接中不再可用。我已在此处上传.2.5版本。)
- 安装common和capt deb(v.2.4)[手册中的步骤2和3]
- 以root身份进入终端
-
第4步:[“重启CUPS。对于rpm包:输入以下命令:
/etc/init.d/cups重启
对于deb包:输入以下命令:
/etc/init.d/cupsys restart
注意在重新启动CUPS之前,请勿使用“lpadmin”命令注册打印机。 根据您使用的分发,可能不会输入“For deb packages”命令。 在这种情况下,请输入“For rpm packages”命令。“]
这是我的情况:所以,我必须运行:
/etc/init.d/cups restart
(我收到一条终端消息说我可以使用service cups restart
)
得到了这个结果:
cups stop/waiting cups start/running, process 2758
- 手册中的步骤5(“使用打印假脱机程序注册打印机(PPD)。”)由Ubuntu文档页面修改
[“确保你相应地改变这一行:sudo / usr / sbin / lpadmin -p LBP5000 -m CNCUPSLBP5000CAPTK.ppd -v ccp:// localhost:59787 -E手册说ccp:// localhost:59687但是Ubuntu by默认是使用59787.如果你不改变它会让你头痛。(文件/etc/ccpd.conf定义了UI_Port 59787和PDATA_Port 59687.因此,这两个端口都需要在防火墙设置中打开。)“ ]
因此,我不得不进入
sudo /usr/sbin/lpadmin -p LBP1120 -m CNCUPSLBP1120CAPTK.ppd -v ccp://localhost:59787 -E
Ubuntu文档说:“*注意:Ubuntu 12.04再次将usblp模块列入黑名单,创建了/ dev / usb / lp0设备链接。要解决这个问题,请执行此操作sudo nano /etc/modprobe.d/blacklist-cups-usblp.conf
然后注释文件看起来像这样,canons驱动程序不通过杯子与打印机通信:
# cups talks to the raw USB devices, so we need to blacklist usblp to avoid # grabbing them # blacklist usblp
所以,当我迷失使用nano时,我试过了
sudo gedit /etc/modprobe.d/blacklist-cups-usblp.conf
并添加了以上内容(blacklist-cups-usblp.conf是一个empy文件,我只是粘贴了这些行)
(此时,在主菜单中,在系统/打印机下validation ,那里记录的打印机名称恰好是 LBP1120
)。
- 步骤6.“在ccpd守护程序安装文件中注册打印机。”
sudo /usr/sbin/ccpdadmin -p LBP1120 -o /dev/usb/lp0
你应该得到类似的东西:
CUPS_ConfigPath = /etc/cups/ LOG Path = None UI Port = 59787 Entry Num : Spooler : Backend : FIFO path : Device Path : Status ---------------------------------------------------------------------------- [0] : LBP1120 : ccp : //localhost:59787 : /dev/usb/lp0 : Modified
- 手册中的第7步:
“启动ccpd守护程序。输入以下命令。
sudo /etc/init.d/ccpd start
注意在Linux启动时将ccpd守护进程设置为自动启动会很方便。“
之后,输入sudo /etc/init.d/ccpd status
以查看我是否可以看到2个数字(在以前版本的安装中很熟悉):是的,有2个数字。 但是在登录后退出并连接打印机之前不会打印。
我想如果打印不起作用,必须考虑这些规则:
-
登录后连接/启动打印机
-
/etc/init.d/ccpd status
查看2个数字 -
sudo /etc/init.d/ccpd start
启动ccpd守护进程
最有可能发生的事情是,您需要在每次重新启动后重新启动ccpd守护程序才能打印:除非您将ccpd守护程序设置为在Linux启动时自动启动 – 如手册所示。 为此,请将以下命令添加到启动应用程序(如此处的答案):
sudo update-rc.d ccpd defaults
注意:在12.10上,这种方法在一台计算机上为我工作,但在另一台计算机上失败。 在13.04它根本不起作用。 我通过在启动应用程序中添加sudo /etc/init.d/ccpd start
,成功地在13.04自动启动ccpd deamon。
要通过双击可执行脚本文件来查看状态,请创建此可执行文件:
#!/bin/bash gnome-terminal -e "/etc/init.d/ccpd status"
考虑到13.10
同上,但我必须安装portreserve
包才能使用此方法。
考虑在Ubuntu 10.10中安装
这确实有效!
Ubuntu文档网站提到该打印机已经过Ubuntu 10.10测试。 虽然我目前使用的是12.10,但我还是试着试一试。 所以,我已经安装了10.10作为持久的live usb,并按照“ Package Repository(11.10之前) ”中的步骤进行操作。
最后我成功了 – 按照以下步骤:
将PPA添加到您的系统并安装包:
sudo add-apt-repository ppa:michael-gruz/canon sudo apt-get update sudo apt-get install cndrvcups-capt cndrvcups-common
系统 – >管理 – >打印添加打印机。 选择“添加打印机”。 不要在这里选择Ubuntu找到的USB打印机。 选择“CAPT Printer”。 您应该在URI中看到“ccp”。 更改它,以便URI应该变为“ccp:/ var / ccpd / fifo0”。 单击“下一步”,找到您的型号并添加您的打印机。 如果您看到日语和英语变体,请选择英语变体。
您可以尝试这样做,而不是GUI操作:
sudo /usr/sbin/lpadmin -p LBP1120 -m CNCUPSLBP1120CAPTK.ppd -v ccp://localhost:59787 -E
然后:
sudo /etc/init.d/ccpd restart sudo /etc/init.d/ccpd status
你应该得到2个数字,但我只有一个。
所以,在这种情况下:
在/etc/ccpd.conf(gksudo gedit /etc/ccpd.conf)中检查你有这个:
DevicePath /dev/usb/lp0
为拿到它,为实现它:
sudo /usr/sbin/ccpdadmin -p LBP1120 -o /dev/usb/lp0
另外,在/etc/udev/rules.d/85-canon-capt.rules中你应该这样:
KERNEL=="lp*", SUBSYSTEMS=="usb", ACTION=="add", SYSFS{idVendor}=="04a9", RUN+="/bin/bash /etc/init.d/ccpd start" KERNEL=="lp*", SUBSYSTEMS=="usb", ACTION=="remove", RUN+="/bin/bash /etc/init.d/ccpd stop"
(添加它
gksudo gedit /etc/udev/rules.d/85-canon-capt.rules)
然后启用规则:
sudo udevadm control --reload-rules
然后再试一次:
sudo /etc/init.d/ccpd restart sudo /etc/init.d/ccpd status
如果您得到这两个数字,请尝试打印。 然后重启电脑。
测试2个数字的东西
sudo /etc/init.d/ccpd status
如果遇到问题,请尝试关闭打印机,重新启动计算机,并在登录后仅打开打印机 。
考虑安装在11.10
我回到了LBP Canon驱动程序包上的Ubuntu官方文档网站,在从debian软件包(使用Gdebi)重新安装2.3版驱动程序之后,我按照“添加打印机”一节中的说明进行操作 – 但没有成功。 尽管事实上我得到了那里提到的“两个数字”(我引用:“你最后应该看到两个数字。如果你这样做,你很幸运:)等等。”
然后继续使用“在USB添加/删除时启动/停止”下的命令,但无法获得那里引用的诊断,也无法打印该阶段指定的测试页。 当我按照“重新启动并validation”下的命令时,我没有得到“两个数字”但只有一个。
我添加了“故障排除”部分中的命令(事实上我偶然发现了这些) – 虽然我没有注意到状态监视器报告错误:我只是不知道该怎么办。 那是:
lsmod | grep usblp sudo modprobe usblp ls -l /dev/usb/lp0 sudo /etc/init.d/ccpd restart
嗯,这就是诀窍!
插入我的USB打印机后,我得到的消息是系统看到了打印机,然后我能够完美打印。
但是,根据以下注释(“注意:从Ubuntu 11.10(Oneiric Ocelot)开始,usblp已被弃用,在连接USB打印机时不会自动加载”)重新启动计算机后无法打印。 这似乎与bug#842823有关 。 在Till Kamppeter讨论错误的地址,我发现并遵循了这些说明,并且能够打印测试页 – 但是没有用。 冒险继续:当我再次关注它们之后再次关注它们之后,这些说明仍然工作了,这些步骤再次来自官方Ubuntu文档页面中的 “启动/停止USB添加/删除”,“重新启动和validation”和“状态监视器”。
但我担心它仍然是一个临时解决方案。
编辑:对我来说,这是一个解决方案,只要它是我能做到的最好,但重启后不会工作,使用起来很麻烦。 我保留它仅供参考。 如果其他人发现它有用或可修改,请编辑它以使其工作。
考虑到Ubuntu 12.04,12.10,13.04和13.10
对于12.04和13.04,还有一些额外的步骤。 对于所有其他版本,请跳过这些。
对于Ubuntu 12.04,首先执行此操作:
Ubuntu 12.04再次将usblp模块列入黑名单,该模块创建了/ dev / usb / lp0设备链接。 要解决此问题,请编辑/etc/modprobe.d/blacklist-cups-usblp.conf
输入终端:
sudo gedit /etc/modprobe.d/blacklist-cups-usblp.conf
然后注释文件看起来像这样,canons驱动程序不通过杯子与打印机通信:
# cups talks to the raw USB devices, so we need to blacklist usblp to avoid # grabbing them # blacklist usblp
对于Ubuntu 13.10,首先执行此操作:
-
安装
portreserve
包:sudo apt-get install portreserve
对于所有其他版本的Ubuntu,从这里开始
-
下载common和capt .deb
- 2.4版本
- 2.5版
- 2.6版本
-
安装common和capt .deb
-
重启CUPS:
sudo /etc/init.d/cups restart
根据您使用的分发,您可能需要使用
sudo /etc/init.d/cupsys restart
或sudo service cups restart
重新启动CUPS。 你应该得到一些杯子确实重新启动的validation
-
使用打印假脱机程序注册打印机(PPD):
sudo /usr/sbin/lpadmin -p LBP1120 -m CNCUPSLBP1120CAPTK.ppd -v ccp://localhost:59787 -E
-
在ccpd守护程序安装文件中注册打印机:
sudo /usr/sbin/ccpdadmin -p LBP1120 -o /dev/usb/lp0
你应该得到类似的东西:
CUPS_ConfigPath = /etc/cups/ LOG Path = None UI Port = 59787 Entry Num : Spooler : Backend : FIFO path : Device Path : Status ---------------------------------------------------------------------------- [0] : LBP1120 : ccp : //localhost:59787 : /dev/usb/lp0 : Modified
-
启动ccpd守护程序。
sudo /etc/init.d/ccpd start
-
测试ccpd deamon是否正确运行:
输入sudo /etc/init.d/ccpd status
以查看是否可以看到2个数字。 一个没有数字意味着什么是错的。 两个数字表示所有数字都应该正常工作,但在登录后退出并连接打印机之前不会打印。
我想如果打印不起作用,必须考虑这些规则:
-
登录后连接/启动打印机
-
sudo /etc/init.d/ccpd start
启动ccpd守护进程 -
sudo /etc/init.d/ccpd status
可以看到2个数字 -
如果只获得一个号码,请尝试
sudo /etc/init.d/ccpd restart
最有可能发生的是,您需要在每次重新启动后重新启动ccpd守护程序才能打印:除非您将ccpd守护程序设置为在Linux启动时自动启动。 你会在这里的答案中找到很多方法来做到这一点 ):
如果事情仍然不起作用
这是另一种非常相似的方法。 在Elementary OS Luna上测试(基于Ubuntu 12.04)。 此方法包含许多有用的故障排除提示。
这是一个补充的答案 , 仅被视为对任何其他的补充 。
安装打印机后,如果它不起作用,请考虑以下操作:
-
在打印或打印机下检查,右键单击打印机和“查看打印队列”,选择作业,右键单击并单击“释放”(如果处于活动状态)
-
运行
captstatusui -P LBP1120
并检查“恢复作业”是否有效 -
从电源按钮重新启动打印机
考虑为主要有用的命令创建可执行的脚本。 为此需要gnome-terminal或具有自定义配置文件的另一个终端(在本例中称为“new1”),它将在结束命令后保持终端打开。 在gnome终端中:配置文件首选项 – 标题和命令 – 当命令打开时:保持终端打开。
查看ccpd状态的脚本(两个数字):
#!/bin/bash gnome-terminal --window-with-profile=new1 -e "service ccpd status"
脚本重启杯子并查看状态:
#!/bin/bash gnome-terminal --window-with-profile=new1 -e " sudo service ccpd restart && service ccpd status"
用于打开’capt’用户界面的脚本:
#!/bin/bash gnome-terminal --window-with-profile=new1 -e "captstatusui -P LBP1120"
我发现它们与主要的“打印机”或“打印”桌面/快捷方式文件一样有用。