This post shows students and new users steps to setup CUPS print server on Ubuntu Linux. CUPS allows a computer to act as a Print server. It provides mechanism on the Unix-like operating system for printing and print services.
In environments with multiple printers, one can use CUPS print server to handle and manage print jobs. CUPS supports printing, queueing, network printing (using IPP), supports for large range of printers, network printers auto-detection, web administration, and more.
For businesses and individuals looking for affordable print server, CUPS should be considered especially when large printers are involved. And if you need help installing and configuring CUPS, the steps below will show you how to do that.
Also, for students and new users learning Linux, the easiest place to start learning is on Ubuntu Linux. Ubuntu is the modern, open source Linux operating system for desktop, servers and other devices.
To get started with installing and configuring CUPS on Ubuntu Linux, follow the steps below.
How to install CUPS on Ubuntu Linux
As mentioned above, CUPS can turn any Unix-like operating systems, including Ubuntu into a print server. CUPS packages are including in Ubuntu repositories by default, and the installation is pretty straightforward.
To install CUPS on Ubuntu, run the commands below.
sudo apt update sudo apt install cups
Once CUPS is installed, the commands below can be used to stop, start and enable CUPS service to automatically start up when the server boots.
sudo systemctl stop cups sudo systemctl start cups sudo systemctl enable cups
To verify that CUPS is installed and running, run the commands below.
sudo systemctl status cups
You should then see similar output as below:
cups.service - CUPS Scheduler Loaded: loaded (/lib/systemd/system/cups.service; enabled; vendor preset: > Active: active (running) since Sat 2021-10-16 14:15:03 CDT; 2min 36s ago TriggeredBy: ● cups.socket ● cups.path Docs: man:cupsd(8) Main PID: 664 (cupsd) Tasks: 1 (limit: 4651) Memory: 2.3M CGroup: /system.slice/cups.service └─664 /usr/sbin/cupsd -l Oct 16 14:15:03 ubuntu2004 systemd: Started CUPS Scheduler.
How to configure CUPS on Ubuntu Linux
After installing CUPS above, you can configure CUPS its web interface at http://localhost:631/admin.
If you prefer to use the command line interface, CUPS configuration file is located at /etc/cups/cupsd.conf.
When using the commands line to configure CUPS, run the commands below to create a backup copy of the configuration file.
sudo cp /etc/cups/cupsd.conf /etc/cups/cupsd.conf.original
Then run the commands below to open CUPS configuration file.
sudo nano /etc/cups/cupsd.conf
You can then begin configuring settings that suit your environment.
By default, CUPS listens on port 631.
# Only listen for connections from the local machine. Listen localhost:631 Listen /run/cups/cups.sock
You can also make sure browsing is enabled to allow CUPS to make shared printers available on the network.
Set the directive below to to dnsd protocol (that supports Bonjour), by default it is enabled.
# Show shared printers on the local network. Browsing On BrowseLocalProtocols dnssd
CUPS also restricts access to the printer server web interface and admin pages using the directives below. You can add Allow @LOCAL to allow computers from the local network to access CUPS web interface.
#Restrict access to the server <Location /> Order allow,deny Allow @LOCAL <Location> #Restrict access to the admin pages. <Location /admin> Order allow,deny Allow @LOCAL <Location>
If you prefer to configure using CUPS web interface, it’s recommended to use either root or a user authenticated in the lpadmin group.
To add a user to lpadmin group, type:
sudo usermod -aG lpadmin username
Replace username with the account you want to add to the lpadmin group.
When you’re done, run the commands below to restart CUPS.
sudo systemctl restart cups
How to install printer drivers on Ubuntu Linux
Most HP printers support Linux systems, including Ubuntu. However, installing HP’s Linux Imaging and Printing software (HPLIP) won’t hurt.
Run the commands below to install hplip on Ubuntu.
sudo apt install hplip
For CUPS to publish shared printer, you may need to install avahi-daemon. avahi-daemon is a Bonjour server that will broadcast your computer’s information on the network.
sudo apt install avahi-daemon sudo systemctl start avahi-daemon
If you have firewall enabled, you also also need to allow CUPS traffic through the firewall. You can run the commands below to enable CUPS through Ubuntu firewall.
sudo ufw allow 631/tcp sudo ufw allow 5353/udp
How to add printer on Ubuntu Linux
Now that CUPS is installed and configure, logon to your Ubuntu machine and browse the CUPS print server and access any shared printers.
Below we showed you how to install printers on Ubuntu Linux. Reference the post below to learn how to add printer to Ubuntu.
How to add printers to Ubuntu Linux
That should do it!
This post showed you how to install and configure CUPS on Ubuntu Linux. If you find any error above or have something to add, please use the comment form below.