Решение тестировались на принтерах Canon LBP 2900 и Canon LBP 3200 ОС Ubuntu 11.04. Перед началом нужно установить все драйвера cndrvcups-commonи cndrvcups-capt а также зависимости libcupsys и libstdc, после перезагружаем демон CUPS:
# sudo /etc/init.d/cups restart
Далее регистрируем принтер:
# sudo /usr/sbin/lpadmin -p lbp2900 -m CNCUPSLBP2900CAPTK.ppd -v ccp:/var/ccpd/fifo0 -E
Где LBP2900 меняем в зависимости от принтера. Добавляем принтер в ОС:
# sudo /usr/sbin/ccpdadmin -p lbp2900 -o /dev/usb/lp0
Далее редактируем конфиг скрипта демона, но перед этим делаем резервную копию:
#sudo cp /etc/init.d/ccpd /etc/init.d/ccpd.orig
# sudo gedit /etc/init.d/ccpd
# startup script for Canon Printer Daemon for CUPS (ccpd)
### BEGIN INIT INFO# Provides: ccpd
# Required-Start: $local_fs $remote_fs $syslog $network $named# Should-Start: $ALL
# Required-Stop: $syslog $remote_fs# Default-Start: 2 3
# Default-Stop: 0 1 4 5 6# Description: Start Canon Printer Daemon for CUPS
### END INIT INFODAEMON=/usr/sbin/ccpd
LOCKFILE=/var/lock/subsys/ccpdPATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
NAME=ccpdDESC=”Canon Printer Daemon for CUPS”
test -f $DAEMON || exit 0. /lib/lsb/init-functions
case $1 instart)log_begin_msg “Starting $DESC: $NAME”start-stop-daemon –start –quiet –exec $DAEMONlog_end_msg $? ;;
stop)
log_begin_msg “Stopping $DESC: $NAME”start-stop-daemon –stop –quiet –oknodo –exec $DAEMONlog_end_msg $? ;;
status)
echo “$DESC: $NAME:” `pidof $NAME`;;
restart)
log_begin_msg “Restarting $DESC: $NAME”start-stop-daemon –stop –quiet –oknodo –exec $DAEMONsleep 1
start-stop-daemon –start –quiet –exec $DAEMONlog_end_msg $?
;;*)
echo “Usage: ccpd {start|stop|restart|status}”exit 1;;
esac
exit 0