Printers on Linux

Russell Bateman
January 2026
last update:

Step-by-step. For this example, my printer is a Canon MX490.

  1. Click + Add button.
  2. Choose Network Printer → Find Network Printer → Internet Printing Protocol (ipp).
  3. In Enter device URI, choose example, ipp://cups-server/printer/printer-queue.
  4. Click Forward. (Will search for drivers.)
  5. In Choose Driver, click Select printer from database.
  6. Canon, click Forward.
  7. MX490, click Forward (should see "Canon MX490 series - CUPS+Gutenprint v5.3.4 [en] (recommended)" under Drivers. This is your driver. Click Forward.
  8. For Describe Printer, all should be filled in, but you type in your physical location, "Den"—this is mine.
  9. Click Apply.

You should see Canon-MX490 show up in your Printers - localhost alert (from the Printers icon in the panel.

Still broken, my activity...

root@tirion:/home/russ# systemctl status cups
 cups.service - CUPS Scheduler
     Loaded: loaded (/usr/lib/systemd/system/cups.service; enabled; preset: enabled)
     Active: active (running) since Thu 2026-01-08 00:00:00 MST; 17h ago
TriggeredBy:  cups.socket
              cups.path
       Docs: man:cupsd(8)
   Main PID: 2247397 (cupsd)
     Status: "Scheduler is running..."
      Tasks: 3 (limit: 38210)
     Memory: 58.6M (peak: 177.9M swap: 0B swap peak: 4.0K)
        CPU: 4.946s
     CGroup: /system.slice/cups.service
             ├─2247397 /usr/sbin/cupsd -l
             ├─2247543 /usr/lib/cups/notifier/dbus dbus://
             └─2247544 /usr/lib/cups/notifier/dbus dbus://

Jan 08 00:00:00 tirion systemd[1]: Starting cups.service - CUPS Scheduler...
Jan 08 00:00:00 tirion systemd[1]: Started cups.service - CUPS Scheduler.
Jan 08 16:51:39 tirion hpfax[2872494]: [2872494]: error: Failed to create /var/spool/cups/tmp/.hplip
root@tirion:/home/russ# ls -lad /var/spool/cups/
drwx--x--- 3 root lp 4096 Jan  8 17:38 /var/spool/cups/
root@tirion:/home/russ# ls -lad /var/spool/cups/tmp/
drwxrwx--T 3 root lp 4096 Jan  8 16:51 /var/spool/cups/tmp/
root@tirion:/home/russ# chmod g-rw /var/spool/cups/tmp/
root@tirion:/home/russ# ls -lad /var/spool/cups/tmp/
drwx--x--T 3 root lp 4096 Jan  8 16:51 /var/spool/cups/tmp/
root@tirion:/home/russ# systemctl restart cups
root@tirion:/home/russ# systemctl status cups
 cups.service - CUPS Scheduler
     Loaded: loaded (/usr/lib/systemd/system/cups.service; enabled; preset: enabled)
     Active: active (running) since Thu 2026-01-08 17:50:54 MST; 5s ago
TriggeredBy:  cups.socket
              cups.path
       Docs: man:cupsd(8)
   Main PID: 2900158 (cupsd)
     Status: "Scheduler is running..."
      Tasks: 3 (limit: 38210)
     Memory: 5.8M (peak: 6.4M)
        CPU: 34ms
     CGroup: /system.slice/cups.service
             ├─2900158 /usr/sbin/cupsd -l
             ├─2900247 /usr/lib/cups/notifier/dbus dbus://
             └─2900248 /usr/lib/cups/notifier/dbus dbus://

Jan 08 17:50:54 tirion systemd[1]: Starting cups.service - CUPS Scheduler...
Jan 08 17:50:54 tirion systemd[1]: Started cups.service - CUPS Scheduler.

List of unknown hosts by IPv4...

IP ping? notes
192.168.0.106 x _
192.168.0.111 y _
192.168.0.113 x _
192.168.0.115 x _
192.168.0.118 0 _
192.168.0.119 x _
192.168.0.120 x _
192.168.0.121 x _
192.168.0.125 y _
192.168.0.131 x _