Scientific Linux 下的 Canon iP3600

Scientific Linux 下的 Canon iP3600

我买了一台新打印机(我之前用谷歌搜索过,看起来它在我的操作系统下工作..)

我把打印机插在win7机器上,安装了几百MB的软件,就可以了。

然后我将其插入我的 Scientific Linux 6.1(64 位)笔记本。打开打印机配置窗口,我可以添加打印机,太棒了!

但是:如果我想从这个笔记本打印作业的状态是“完成”,所以看起来打印正常,但从现实世界的角度来看,打印机什么也不做。

我不知道该怎么办。 Canon 的网站提供了适用于 Linux 的 rpm,但它适用于 i386。

我能做些什么?

一些信息:

当我插入打印机时:

Apr 11 21:16:48 a kernel: usb 2-6: new high speed USB device using ehci_hcd and address 45
Apr 11 21:16:48 a kernel: usb 2-6: New USB device found, idVendor=04a9, idProduct=10ca
Apr 11 21:16:48 a kernel: usb 2-6: New USB device strings: Mfr=1, Product=2, SerialNumber=3
Apr 11 21:16:48 a kernel: usb 2-6: Product: iP3600 series
Apr 11 21:16:48 a kernel: usb 2-6: Manufacturer: Canon
Apr 11 21:16:48 a kernel: usb 2-6: SerialNumber: 1754F5
Apr 11 21:16:48 a kernel: usb 2-6: configuration #1 chosen from 1 choice
Apr 11 21:16:48 a kernel: usblp0: USB Bidirectional printer dev 45 if 0 alt 0 proto 2 vid 0x04A9 pid 0x10CA
Apr 11 21:16:48 a udev-configure-printer: invalid or missing IEEE 1284 Device ID
Apr 11 21:16:49 a kernel: type=1400 audit(1334171809.432:164): avc:  denied  { module_request } for  pid=22860 comm="udev-configure-" kmod="net-pf-10" scontext=system_u:system_r:cupsd_config_t:s0-s0:c0.c1023 tcontext=system_u:system_r:kernel_t:s0 tclass=system
Apr 11 21:16:49 a kernel: type=1400 audit(1334171809.434:165): avc:  denied  { module_request } for  pid=22860 comm="udev-configure-" kmod="net-pf-10" scontext=system_u:system_r:cupsd_config_t:s0-s0:c0.c1023 tcontext=system_u:system_r:kernel_t:s0 tclass=system
Apr 11 21:16:49 a kernel: type=1400 audit(1334171809.434:166): avc:  denied  { module_request } for  pid=22860 comm="udev-configure-" kmod="net-pf-10" scontext=system_u:system_r:cupsd_config_t:s0-s0:c0.c1023 tcontext=system_u:system_r:kernel_t:s0 tclass=system
Apr 11 21:16:49 a kernel: type=1400 audit(1334171809.472:167): avc:  denied  { module_request } for  pid=22860 comm="udev-configure-" kmod="net-pf-10" scontext=system_u:system_r:cupsd_config_t:s0-s0:c0.c1023 tcontext=system_u:system_r:kernel_t:s0 tclass=system
Apr 11 21:16:49 a kernel: type=1400 audit(1334171809.473:168): avc:  denied  { module_request } for  pid=22860 comm="udev-configure-" kmod="net-pf-10" scontext=system_u:system_r:cupsd_config_t:s0-s0:c0.c1023 tcontext=system_u:system_r:kernel_t:s0 tclass=system
Apr 11 21:16:49 a kernel: type=1400 audit(1334171809.473:169): avc:  denied  { module_request } for  pid=22860 comm="udev-configure-" kmod="net-pf-10" scontext=system_u:system_r:cupsd_config_t:s0-s0:c0.c1023 tcontext=system_u:system_r:kernel_t:s0 tclass=system
Apr 11 21:16:49 a kernel: type=1400 audit(1334171809.473:170): avc:  denied  { module_request } for  pid=22860 comm="udev-configure-" kmod="net-pf-10" scontext=system_u:system_r:cupsd_config_t:s0-s0:c0.c1023 tcontext=system_u:system_r:kernel_t:s0 tclass=system
Apr 11 21:16:49 a udev-configure-printer: Re-enabled printer ipp://localhost:631/printers/Canon-iP3600-series

答案1

SELinux 在尝试创建设备时拒绝 udev 加载内核模块的操作。

一个快速、简单但非永久性的修复方法是将 SELinux 置于宽容模式。作为 root 或使用 sudo,命令是

setenforce Permissive

现在插入打印机并发送打印作业。

如果这有效,那么你可以

  • 永久关闭 SELinux(SELINUX=disabled在 /etc/selinux/config 中设置)
  • 使 SELinux 永久处于宽容模式(SELINUX=permissive在 /etc/selinux/config 中设置)
  • 通过定义正确的上下文来纠正 SELinux(更困难,从这里开始:RHEL 6 SELinux 用户指南

答案2

这适用于:

lsb_release -a
LSB Version:    :core-4.0-amd64:core-4.0-noarch:graphics-4.0-amd64:graphics-4.0-noarch:printing-4.0-amd64:printing-4.0-noarch
Distributor ID: Scientific
Description:    Scientific Linux release 6.1 (Carbon)
Release:    6.1
Codename:   Carbon

打印机:佳能 PIXMA iP3600

lsusb: Bus 002 Device 006: ID 04a9:10ca Canon, Inc.


如何安装

1)

# download RPM (select Linux/English)
http://www.canon-europe.com/Support/Consumer_Products/products/printers/InkJet/PIXMA_iP_series/iP3600.aspx?type=download&page=1

2)

# with normal user
mkdir ip3600 && mv iP3600_RPM_printer.tar ip3600/ && cd ip3600 && tar -xf iP3600_RPM_printer.tar

3)

# with root in same directory
yum install -y cups-devel.i686 popt-devel.i686 && rpm -i cnijfilter-common-*.i386.rpm
yum install -y gtk2.i686 atk-devel.i686 && rpm -i cnijfilter-ip3600series-*.i386.rpm
cd .. && rm -fr ip3600

4)

# add the printer
env LC_MESSAGES=EN system-config-printer

相关内容