最初,此问题仅限于11.10。现在我在(Lubuntu)12.10中。(有关问题的更改,请参阅此meta问题)。
考虑11.10
我尝试了不同(或不太不同)的方法-其他用户也在这里评论。我的主要参考资料是:
- LBP Canon驱动程序软件包上的ubuntu官方文档网站,
- 该 Unixmen解决方案部分引用了Radu Cotescu脚本,该脚本旨在提供近乎自动化的安装,以及
- 一个由Unixmen更新是非常脚本的版本(下载点击这里)。
没有人为我工作。
最初,此问题仅限于11.10。现在我在(Lubuntu)12.10中。(有关问题的更改,请参阅此meta问题)。
我尝试了不同(或不太不同)的方法-其他用户也在这里评论。我的主要参考资料是:
没有人为我工作。
Answers:
随着时间的推移,就Ubuntu 12.04-13.10而言,这个答案变得非常冗长,混乱。以下是提出相同解决方案但更清晰的答案。
它的工作方式应与下面的12.10相同。
但是,在基于Ubuntu的12.04 eOS Luna上进行尝试时,我无法使其工作。实际上,我在Xubuntu和Lubuntu中对12.04和12.10所做的回答也过了一段时间后也停止了工作,但我在这里放过,因为它们对投票赞成的其他人似乎很有用。
我有一个新的解决方案(已在eOS中测试并使用2.6驱动程序)-在此提供。
我遵循了Ubuntu文档页面和驱动程序随附的驱动程序手册中的步骤:
(2.4版已不存在在该链接。我已经上传就在这里。2.5版本在这里。)
步骤4:[“重新启动CUPS。对于rpm软件包:输入以下命令:
/etc/init.d/cups重新启动
对于deb软件包:输入以下命令:
/etc/init.d/cupsys restart
注意重新启动CUPS之前,请勿使用“ lpadmin”命令注册打印机。根据您使用的发行版,可能不会输入“对于Deb软件包”命令。在这种情况下,输入“对于rpm包”命令。“]
这是我的情况:因此,我必须运行:
/etc/init.d/cups restart
(我收到一条终端消息,说我也可以使用
service cups restart
)
得到了这个结果:
cups stop/waiting
cups start/running, process 2758
[“请确保您相应地更改了此行:sudo / usr / sbin / lpadmin -p LBP5000 -m CNCUPSLBP5000CAPTK.ppd -v ccp:// localhost:59787 -E手册上说ccp:// localhost:59787 -Ubuntu默认使用的是59787。如果不进行更改,这将使您头疼。(文件/etc/ccpd.conf定义了UI_Port 59787和PDATA_Port59687。因此,这两个端口都需要在防火墙设置中打开。) ]
因此,我必须输入
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
然后将文件注释为如下格式,佳能驱动程序不会通过杯子与打印机对话:
# cups talks to the raw USB devices, so we need to blacklist usblp to avoid
# grabbing them
# blacklist usblp
因此,由于我迷失了纳米技术,我尝试了
sudo gedit /etc/modprobe.d/blacklist-cups-usblp.conf
并添加以上内容(blacklist-cups-usblp.conf是一个empy文件,我只是粘贴了这些行)
(这时,请在“系统/打印机”下的主菜单中验证记录在其中的打印机名称是否正确 LBP1120
)。
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守护程序设置为在Linux启动时自动启动会很方便。”
之后,输入sudo /etc/init.d/ccpd status
以查看是否可以看到2个数字(以前版本中的安装非常熟悉):是的,有2个数字。但是直到注销并登录后再连接打印机才可以进行打印。
我猜如果打印不起作用,必须考虑以下规则:
登录后连接/启动打印机
/etc/init.d/ccpd status
看两个数字
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"
同上,但我必须安装portreserve
软件包才能使用此方法。
这确实有效!
在Ubuntu文档网站提到,这台打印机是与Ubuntu 10.10测试。尽管我目前使用的是12.10,但我还是想尝试一下。因此,我已经安装了10.10作为永久活动USB,并按照“程序包存储库(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打印机”。您应该在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)中的内容:
<Printer LBP1120>
DevicePath /dev/usb/lp0
</Printer>
为拿到它,为实现它:
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
如果遇到问题,请尝试关闭打印机,重新启动计算机,仅在登录后再打开打印机。
我回到LBP Canon驱动程序软件包上的Ubuntu官方文档网站,并从debian软件包重新安装了2.3版驱动程序(使用Gdebi)之后,我遵循了“添加打印机”部分中的说明-没有成功。尽管我得到了提到的“两个数字”(我引用:“您应该在最后看到两个数字。如果您这样做,您很幸运:)等”)。
然后,我继续使用“在USB添加/删除USB上启动/停止”下的命令,但无法获取此处引用的诊断信息,也无法按照该阶段的指定打印测试页。当我遵循“重新启动并验证”下的命令时,我没有得到“两个数字”,而只有一个。
我从“疑难解答”部分添加了命令(实际上我在这里碰到了这些错误)-尽管我没有注意到状态监视器报告错误:我只是不知道该怎么办。那是:
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打印机时将不会自动加载”),在重新启动计算机后无法打印。这似乎与错误#842823有关。在Till Kamppeter讨论该错误的地址上,我找到并遵循了这些指示,并能够打印测试页-没什么。冒险仍在继续:遵循Ubuntu官方文档页面中的 “启动/停止USB添加/删除”,“重新启动和验证”和“状态监视器”的步骤之后,当我再次遵循这些说明时,这些说明就会起作用。
但是我担心这仍然是一个临时解决方案。
编辑:对我来说,这是一个解决方案,它是我可以实现的最佳解决方案,但是重新启动后将无法使用,而且使用起来很麻烦。我保留它仅供参考。如果其他人觉得它有用或可修改,请对其进行编辑以使其起作用。
对于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
根据您使用的发行版,可能需要使用
sudo /etc/init.d/cupsys restart
或sudo service cups restart
重新启动CUPS。您应该获得某种验证,证明杯子确实重新启动了
向后台打印程序注册打印机(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守护进程是否正确运行:
输入sudo /etc/init.d/ccpd status
以查看是否可以看到2个数字。一粒矿石没有数字就意味着有问题。两个数字表示所有设备都应该正常工作,但是直到注销并登录后再连接打印机才可以打印。
我猜如果打印不起作用,必须考虑以下规则:
登录后连接/启动打印机
sudo /etc/init.d/ccpd start
启动ccpd守护程序
sudo /etc/init.d/ccpd status
看两个数字
如果只有一个号码,请尝试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"
我发现它们与主要的“打印机”或“打印”桌面/快捷文件一样有用。