-
-
Notifications
You must be signed in to change notification settings - Fork 1
Linux Printer Configuration
Complete beginner-friendly guide to setting up and configuring printers on Linux, covering Arch Linux, CachyOS, and other distributions including CUPS, USB printers, network printers, and troubleshooting.
- Understanding Linux Printing
- CUPS Installation
- USB Printer Setup
- Network Printer Setup
- Printer Configuration
- Troubleshooting
CUPS (Common Unix Printing System) is the printing system on Linux.
What it does:
- Manages printers: Handles printer communication
- Print queues: Manages print jobs
- Driver support: Provides printer drivers
- Network printing: Supports network printers
Supported printers:
- USB printers: Direct USB connection
- Network printers: Ethernet/Wi-Fi printers
- IPP printers: Internet Printing Protocol
- Samba printers: Windows network printers
Arch/CachyOS:
# Install CUPS
sudo pacman -S cups cups-pdf ghostscript gsfonts
# For Gutenprint drivers
sudo pacman -S gutenprintDebian/Ubuntu:
sudo apt install cups cups-pdfFedora:
sudo dnf install cups cups-pdfStart CUPS:
# Enable service
sudo systemctl enable --now cups.service
# Check status
systemctl status cupsAccess CUPS:
- Open browser
- Navigate to: http://localhost:631
- Login (if prompted)
What you can do:
- Add printers
- Manage print jobs
- Configure printers
- View printer status
Add to lp group:
# Add user to lp group
sudo usermod -aG lp username
# Log out and back inSteps:
- Connect USB printer
-
Check if detected:
# List USB devices lsusb # Check CUPS lpinfo -v
Via CUPS web interface:
- Open: http://localhost:631
- Administration > Add Printer
- Select USB printer
- Choose driver
- Set name and options
Via command line:
# Add printer
lpadmin -p PrinterName -E -v usb://printer/uri -m driver
# Set as default
lpoptions -d PrinterNameVia CUPS web interface:
- Open: http://localhost:631
- Administration > Add Printer
- Select network printer
- Enter printer IP or hostname
- Choose driver
Via command line:
# Add network printer
lpadmin -p NetworkPrinter -E -v ipp://printer-ip/ipp/print -m driverAdd Windows printer:
# Install Samba
sudo pacman -S samba
# Add printer
lpadmin -p SambaPrinter -E -v smb://server/printer -m driverPrint test page:
# Print test page
lp -d PrinterName /usr/share/cups/data/testprint
# Or from CUPS web interface
# Administration > Print Test PageSet options:
# Set default options
lpoptions -p PrinterName -o media=A4 -o sides=two-sided-long-edgeCheck connection:
# Check USB
lsusb | grep -i printer
# Check CUPS
lpinfo -v
# Check CUPS logs
sudo journalctl -u cupsClear queue:
# List jobs
lpq
# Cancel job
cancel job-id
# Cancel all
cancel -aInstall drivers:
# Install Gutenprint
sudo pacman -S gutenprint
# Or HP drivers
sudo pacman -S hplipThis guide covered printer configuration for Arch Linux, CachyOS, and other distributions, including CUPS setup, USB/network printers, and troubleshooting.
- Hardware Detection - Hardware setup
- Network Configuration - Network setup
- ArchWiki CUPS: https://wiki.archlinux.org/title/CUPS
This guide covers Arch Linux, CachyOS, and other Linux distributions. For distribution-specific details, refer to your distribution's documentation.