Как соединить принтер canon 6020 с Manjaro?

Собственно, решил я докапаться до истины и заставить работать свой принтер Canon LBP 1120 под Manjaro. Посли нескольких часов (боли), готов предстваить последовательность действий.

  1. Устанавливаем yaourt, если у вас его ещё нет. В противном случае, попускаете этот пункт.
sudo pacman -S --needed base-devel git wget yajl
cd /tmp
git clone https://aur.archlinux.org/package-query.git
cd package-query/
makepkg -si
cd ..
git clone https://aur.archlinux.org/yaourt.git
cd yaourt/
makepkg -si
cd ..
sudo rm -dR yaourt/ package-query/
  1. Выкачиваем драйвер CAPT. Но прежде чем скачивать, убедитесь, что ваш принтер есть в сипске на данном сайте:
    CanonCaptDrv190 - Community Help Wiki
yaourt -S capt-src
  1. Перезапускаем службу CUPS:
sudo systemctl start cups
  1. Регистрируем принтер в системе:
sudo lpadmin -p LBP1120 -m CNCUPSLBP1120CAPTK.ppd -v ccp://localhost:59787 -E
sudo ccpdadmin -p LBP1120 -o /dev/usb/lp0

Вместо LBP1120 напишите своё наазвание принтера, а название .ppd файла ищите в соответсвующей таблице. Ссылка в первом пункте.

  1. Запускаем службу ccpd:
sudo systemctl start ccpd
  1. Добавляем службу ccpd в автозагрузку:
sudo systemctl enable ccpd
  1. Заходим в файловый менеджер и переходим в папке /dev/usb. Там должен валяться файлик lp[Номер]. Например, у меня был файл с названием lp1. Запоминаем цифру и идём обратно в терминал.
udevadm info -a -p $(udevadm info -q path -n /dev/usb/lp[Номер])

В списке находим строчку:
ATTRS{product}==“Canon CAPT USB Device”

Чуть ниже будет строчка:
ATTRS{serial}=="[Значение]"

Записываем куда-нибудь это значение и идём к следующему пункту.

  1. Прописываем правило udev.
sudo nano /etc/udev/rules.d/99-printer.rules
  1. Вставляем в фалик следующее:
SUBSYSTEMS=="usb", ATTRS{serial}=="[Значение]", SYMLINK+="canonLBP"
  1. Перезапускаем сервис udev:
sudo systemctl restart systemd-udevd.service
  1. Выключаем и заново включаем принтер. Проверяем правило:
ls -al /dev/canonLBP

Если Вы всё сделали правильно, то увидите примерно это:

lrwxrwxrwx 1 root root 13 января 27 15:18 /dev/canonLBP -> usb/lp1 (вместо lp1 может быть любая цифра)
  1. Обновляем ccpdadmin в соответствии с вашим принтером.
sudo ccpdadmin -p LBP1120 -o /dev/canonLBP
  1. добавить своего пользователя в группу lp:
sudo gpasswd -a [имя пользователя] lp
  1. Перезапускаем ПК и нслаждаемся.

Примечание.

  1. Если после перезапуска система пытается определить ваш принтер как новый, то это нормально. А вот, если созданный нами принтер отказывается печатать, то это может значить, что либо в пункте 3 нужно было указать ccp://localhost:59687, либо вы напортачили с lp. Попробуйте удалить ваш принтер и проделать всё заново, начиная с пункта 2. В пункте 3 попробуйте указать уже извеснтый вам lp, вместо lp0.

  2. В комплекте с драйвером поставляется графическая утилита captstatusui при помощи которой можно отслеживать состояние принтера. Использовать её можно следующим образом:

captstatusui -P <название_вашего_принтера>

Если добавить параметр -e, то утилита даст о себе знатьтолько при наличии ошибки. Например:

captstatusui -e -P LBP1120

Для вашего удобства, вы можете добавить эту утилиту в автозагрузку. Но на каждом графическом окружение это делается по разному. Поэтому Google вам в помощь. После добавления перезагрузите ПК.

  1. После обновления драйвера CAPT ваш принтер “слетит” и прийдётся всё делать заного. И вот это уже никак не исправить. Кроме того, некоторые действия могут измениться, поэтому данное руководство действительно на 13.01.21. Версия пакета capt-scr: 2.71-3.
2 Likes