Drucker Canon LBP3010 unter Linux Mint 19

Unter Linux Mint 19 lief der Drucker nicht mehr. Nach langem hin und her lief er plötzlich, welche Treiber aber nun genau zur Lösung geführt haben, kann ich nicht mehr nachvollziehen. Daher hier kurz die Liste der History von den ausgeführten Befehlen.

Reguläre Installation

Die detailierte Anleitung der „normalen“ Installation habe ich von hier: http://forums.debian.net/viewtopic.php?f=7&t=109825

Hier sind die PPD File namen aufgelistet für die jeweiligen Drucker: https://help.ubuntu.com/community/CanonCaptDrv190

  1. Druckertreiber für Linux bei Canon downloaden
  2. Entpacke Treiber ins /tmp Verzeichnis
  3. cd /tmp/linux-capt-drv-v271-uken/64-bit_Driver/Debian
  4. sudo dpkg -i cndrvcups-common_3.21-1_amd64.deb
  5. sudo dpkg -i cndrvcups-capt_2.71-1_amd64.deb
  6. sudo apt-get install -f cndrvcups-common
  7. sudo apt-get install -f cndrvcups-capt

Für den LBP3010 ist es also CNCUPSLBP3050CAPTK.ppd

  1. ls /dev/usb/
    -> müsste lp0 ausgeben
  2. sudo apt-get install ia32-libs libglade2-0 libpopt0:i386
    FALLS es hier enen Error gibt, noch folgendes ausführen:
    sudo dpkg --add-architecture i386
    sudo apt-get update
    sudo apt-get install ia32-libs

  3. sudo mkdir /var/ccpd
  4. sudo mkfifo /var/ccpd/fifo0
  5. sudo chown -R lp:lp /var/ccpd
  6. sudo apt-get install cups
  7. sudo service cups stop
  8. sudo service cups start
  9. sudo service ccpd stop
  10. /usr/sbin/lpadmin -p LBP3010 -m CNCUPSLBP3050CAPTK.ppd -v ccp://localhost:59787 -E
  11. sudo /usr/sbin/ccpdadmin -p LBP3010 -o /dev/usb/lp0
  12. sudo /etc/init.d/ccpd start
  13. Der Aufruf von http://localhost:631/ müsste nun die CUPS Page anzeigen

Installation Testen

Hier die Ports checken, dass die stimmen!

sudo ccpdadmin status

Output:


CUPS_ConfigPath = /etc/cups/
LOG Path = None
UI Port = 59787

Entry Num : Spooler : Backend : FIFO path : Device Path : Status
----------------------------------------------------------------------------
[0] : LBP3010 : ccp : //localhost:59787 : /dev/usb/lp0 :

Und Das Config File müsste so aussehen

cat /etc/ccpd.conf

Output:

# Canon Printer Daemon for CUPS Configuration Data

<Path>
# CUPS configuration file path.
# Default /etc/cups/

CUPS_ConfigPath /etc/cups/

# Log directory path.
# LogDirectoryPath /var/log/CCPD/

</Path>

# Printer entries.
# Mapping each "Printer Name" to each "Printer Device Port".
# The "Printer Name" has to be identical to the CUPS printer queue name.
#
# For example, if you prepare a printer named "LBP3200" as a CUPS printer
# queue name, and the printer is connected to the USB port "/dev/usb/lp0",
# you can use the following three lines example just by removing the
# comment symbol "#" of each line.
#<Printer LBP3200>
#DevicePath /dev/usb/lp0
#</Printer>

<Printer LBP3010>
DevicePath /dev/usb/lp0
</Printer>

<Ports>
# Status monitoring socket port.
# Default 59787
UI_Port 59787
PDATA_Port 59687
</Ports>

 

Schauen, dass CUPS läuft (active & running)

sudo /etc/init.d/cups status

Output:

● cups.service - CUPS Scheduler
Loaded: loaded (/lib/systemd/system/cups.service; enabled; vendor preset: enabled)
Active: active (running) since Thu 2020-10-22 13:05:57 CEST; 16min ago
Docs: man:cupsd(8)
Main PID: 13645 (cupsd)
Tasks: 3 (limit: 4915)
CGroup: /system.slice/cups.service
├─13645 /usr/sbin/cupsd -l
├─13649 /usr/lib/cups/notifier/dbus dbus://
└─13650 /usr/lib/cups/notifier/dbus dbus://

Okt 22 13:05:57 Black32 systemd[1]: Started CUPS Scheduler.

CCPD Checken (es muss mindestens zwei Zahlen ausgeben, ansonsten ist etwas schief gelaufen)

sudo /etc/init.d/ccpd status

Output:

/usr/sbin/ccpd: 13732 13730

-> die Zahlen sind die PIDs. Die eine ist für den CCPD Prozess und die andere für den Child-Process, wenn der Drucker connected worden ist.

Versuche nun Testseite zu drucken. Läuft es nicht:

  • sudo service cups restart
  • sudo service ccpd restart
  • Drucker aus- und wieder einschalten
  • PC rebooten

Drucker Statusfenster öffnen:

captstatusui -P LBP3010

 

Probleme beheben

Die Testseite wird nicht gedruckt

  1. Check, ob CUPS läuft : /etc/init.d/cups status
  2. Check, ob CCPD läuft : /etc/init.d/ccpd status
  3. Drucker ausschalten
  4. sudo /etc/init.d/cups stop
  5. sudo /etc/init.d/ccpd stop
  6. PC neu starten
  7. Drucker einschalten
  8. sudo /etc/init.d/cups start
  9. sudo /etc/init.d/ccpd start

Wenn es noch immer nicht funktioniert, alles löschen und von vorne beginnen.

Was ich ausserdem noch gemacht habe – weil es regulär nicht funktionierte, wovon ich aber nicht weiss, was nun zur Lösung beigetragen hat:
  1. Lösungsansatz von https://help.ubuntu.com/community/CanonCaptDrv190?action=show&redirect=CanonCaptPrinterDriver
    -> man beachte, dass hier eine andere Portnummer verwendet wird. So hat es auch nicht funktioniert -> Aber eventuell war die letzte Zeile (update-rc.d) von Bedeutung?
    sudo /etc/init.d/cups restart
    sudo lpadmin -p LBP3010 -m CNCUPSLBP3050CAPTK.ppd -v ccp://localhost:59687 -E sudo ccpdadmin -p LBP3010 -o /dev/usb/lp0
    sudo update-rc.d ccpd defaults
  2. Lösungsansatz von https://askubuntu.com/questions/1033566/canon-printer-problem-on-ubuntu-18-04
    Hier heisst es, dass man NICHT den offiziellen Treiber von Canon verwenden soll. Stattdessen:
    $ sudo apt-get install build-essential git autoconf libtool libcups2-dev libcupsimage2-dev

    $ cd

    $ git clone https://github.com/agalakhov/captdriver.git

    $ cd captdriver

    $ autoreconf -i

    Hier gab es bei mir einen Fehler:
    Can’t exec „aclocal“: Datei oder Verzeichnis nicht gefunden at /usr/share/autoconf/Autom4te/FileUtils.pm line 326.
    autoreconf: failed to run aclocal: No such file or directory
    — lösung —
    apt install automake libtool

    Nun kann man weitermachen:
    $ autoreconf -i
    $ ./configure
    $ make

    Bei manchen System befindet sich das Verzeichnis hier: /usr/libexec/cups/filter:

    $ sudo cp src/rastertocapt /usr/lib/cups/filter/
    $ sudo cp Canon-LBP3000.ppd /usr/share/ppd/custom/

  3. Lösungsansatz von https://github.com/linuxmint/linuxmint/issues/88
    Schreibe ein Y statt N ins old_scheme_first file
    echo Y > /sys/module/usbcore/parameters/old_scheme_first
    /etc/init.d/ccpd stop
    /etc/init.d/ccpd start
  4. sudo dpkg --add-architecture i386
    sudo apt update
    udo apt install libc6:i386 libpopt0:i386

 

Drucker löschen

sudo ccpdadmin status

Output:

CUPS_ConfigPath = /etc/cups/
LOG Path = None
UI Port = 59787

Entry Num : Spooler : Backend : FIFO path : Device Path : Status
----------------------------------------------------------------------------
[0] : LBP3010 : ccp : //localhost:59787 : /dev/usb/lp0 :

Löschen kann man den Drucker nun mit dem Befehl:

ccpdadmin -x LBP3010

Führe den Befehl 2x aus, dann ist die Zeile komplett verschwunden.

 

nach oben