User Tools

Site Tools


linux:systems-peripherals:brother-printer

Installation Printers in Debian

Brother driver installation

Download the “Driver Installation tool” from: https://support.brother.com/g/b/downloadend.aspx?c=nl&lang=nl&prod=mfc9330cdw_us_eu_as&os=128&dlid=dlf006893_000&flang=4&type3=625

The current Brother driver is a 32-bit version and will give error during installation (Package ia32-libs is not available). This package is depreciated and needs to be replaced by alternative.

apt-get install lib32z1
apt-get install cups

Journal / Log Warnings

At boot time the journal (journalctl -b)shows the following errors:

Configuration file /etc/udev/rules.d/60-brother-brscan4-libsane-type1.rules is marked executable. Please remove executable permission>
Aug 04 09:35:08 laptop systemd-udevd[288]: /etc/udev/rules.d/60-brother-brscan4-libsane-type1.rules:9 Invalid key 'SYSFS'
Aug 04 09:35:08 laptop systemd-udevd[288]: /etc/udev/rules.d/60-brother-libsane-type1-inst.rules:14 Invalid key 'SYSFS'

The cause of this error is that 'SYSFS' is long deprecated and has been removed with udev-173 it should be replaced by ATTR or ATTRS to match any parent device.“

If you look in /etc/udev/rules.d/60-brother-brscan4-libsane-type1.rules you will see that the next rule correctly uses ATTRS! It could be that both were in for a transition period, or it could be that someone just forgot to delete the SYSFS rule.

Bottom line; The SYSFS rule can be safely deleted.

Unwanted Printer discovery

The printer selection dialog of GTK applications is populated by *directly* by Avahi receiving DNS-S, mDNS broadcasts of the remote print server and IPP printers. Whether cups is running or not, this is what happens. In fact, neither CUPS nor cups-browsed is required for the GTK print dialog to function as designed. It does not install print queues. The displayed printers (which are not queues) often do not even print. This is a bug in GTK. A user can do nothing about it.

The following options are available to suppress this unwanted behavior:

1. Disable mDNS protocol on printer

The easiest way to fix the problem is to disable the mDNS protocol in each of the network printers! This will stop printers announcing themselves.

2. Disable Avahi completely

Avahi enables plug-n-play network devices to connect automatically. Since we do not appreciate this we could disable avahi completely:

sudo systemctl stop avahi-daemon.service
sudo systemctl disable --now avahi-daemon.service
sudo systemctl mask avahi-daemon.service

sudo systemctl stop avahi-daemon.socket
sudo systemctl disable --now avahi-daemon.socket
sudo systemctl mask --now avahi-daemon.socket

In order to re-enable it again:

sudo systemctl unmask avahi-daemon.service
sudo systemctl enable --now avahi-daemon.service
sudo systemctl start avahi-daemon.service

sudo systemctl unmask --now avahi-daemon.socket
sudo systemctl enable --now avahi-daemon.socket
sudo systemctl start avahi-daemon.socket

4. Limit Avahi deamon

As alternative to completely kill avahi, we can block it from processing mDNS broadcasts.

nano /etc/avahi/avahi-daemon.conf 

In the [server] section, adapt the following:

enable-dbus=no 

or 

use-ipv4=no
use-ipv6=no

Then restart the avahi-daemon service.

5. Stops CUPS browsing

In addition to stopping avahi, we can also stop CUPS from browsing for printers: This can be done in 2 ways:

Modify CUPS browsing configuration

Open /etc/cups/cups-browsed.conf for editing with sudo. Find the line with BrowseProtocols and uncomment it by removing the #:

# BrowseProtocols none

Becomes:

BrowseProtocols none

Restart the cups-browsed service:

sudo systemctl restart cups-browsed

Stop CUPS browsing Daemon

sudo systemctl stop cups-browsed.service
sudo systemctl disable --now cups-browsed.service
sudo systemctl mask cups-browsed.service

In order to re-enable it again:

sudo systemctl unmask cups-browsed.service
sudo systemctl enable --now cups-browsed.service
sudo systemctl start cups-browsed.service
linux/systems-peripherals/brother-printer.txt · Last modified: by 127.0.0.1