beginner 10 minutes

How to Set Up a Printer on Linux

Connect and configure your printer on Linux — plug-and-play setup, manual configuration, and troubleshooting common issues.

Prerequisites

  • A Linux distribution installed
  • A printer (USB or network)
1

Try plug and play first

Many modern printers work out of the box on Linux. Connect your printer via USB or make sure it's on the same WiFi network, then open Settings → Printers. Click Add Printer and your system should detect it automatically. HP, Brother, and Epson printers have the best Linux support.

2

Install printer drivers

If your printer isn't detected automatically, install the common driver packages. These cover most consumer printers.

sudo apt update
sudo apt install cups printer-driver-all

# For HP printers specifically:
sudo apt install hplip

# For Brother printers:
# Download the driver from support.brother.com and run the installer
3

Start the CUPS print service

CUPS (Common Unix Printing System) manages all printing on Linux. Make sure it's running.

sudo systemctl enable cups
sudo systemctl start cups
sudo systemctl status cups
4

Add a printer via the web interface

CUPS has a powerful web interface for printer management. Open it in your browser and follow the wizard to add your printer.

# Open in your browser:
xdg-open http://localhost:631
5

Add a network printer manually

If your WiFi printer isn't detected, you can add it by IP address. Find your printer's IP from its settings menu or your router's device list.

# Find printers on your network:
avahi-browse -art | grep Printer

# Or add directly via CUPS:
lpadmin -p MyPrinter -E -v ipp://192.168.1.100/ipp/print -m everywhere
6

Print a test page

Verify everything works by printing a test page from the terminal or from Settings → Printers → your printer → Print Test Page.

# Print a test page:
lp -d MyPrinter /usr/share/cups/data/testprint

# Or print any file:
lp -d MyPrinter document.pdf
On this page