<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.thibble.org/goomba/index.php?action=history&amp;feed=atom&amp;title=RPI_CUPS_server_for_mini_print_server</id>
	<title>RPI CUPS server for mini print server - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.thibble.org/goomba/index.php?action=history&amp;feed=atom&amp;title=RPI_CUPS_server_for_mini_print_server"/>
	<link rel="alternate" type="text/html" href="https://wiki.thibble.org/goomba/index.php?title=RPI_CUPS_server_for_mini_print_server&amp;action=history"/>
	<updated>2026-07-29T01:14:24Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.42.1</generator>
	<entry>
		<id>https://wiki.thibble.org/goomba/index.php?title=RPI_CUPS_server_for_mini_print_server&amp;diff=50&amp;oldid=prev</id>
		<title>T20A02: Created page with &quot;== CUPS server on RPI == ==== Overview ==== I started this projects as I have recently been using two separate desktop PC&#039;s instead of one, and conjunction with this I have always had to have others email me files to be printed, as my trust Brother printer, is a usb only device. From this I decided to install CUPS on a RPI3 I had lying around to provide a print server for the network.   === Installing Dependancies ===   The first thing we are going to do is install a few...&quot;</title>
		<link rel="alternate" type="text/html" href="https://wiki.thibble.org/goomba/index.php?title=RPI_CUPS_server_for_mini_print_server&amp;diff=50&amp;oldid=prev"/>
		<updated>2024-09-09T00:54:38Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;== CUPS server on RPI == ==== Overview ==== I started this projects as I have recently been using two separate desktop PC&amp;#039;s instead of one, and conjunction with this I have always had to have others email me files to be printed, as my trust Brother printer, is a usb only device. From this I decided to install CUPS on a RPI3 I had lying around to provide a print server for the network.   === Installing Dependancies ===   The first thing we are going to do is install a few...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;== CUPS server on RPI ==&lt;br /&gt;
==== Overview ====&lt;br /&gt;
I started this projects as I have recently been using two separate desktop PC&amp;#039;s instead of one, and conjunction with this I have always had to have others email me files to be printed, as my trust Brother printer, is a usb only device. From this I decided to install CUPS on a RPI3 I had lying around to provide a print server for the network. &lt;br /&gt;
&lt;br /&gt;
=== Installing Dependancies === &lt;br /&gt;
&lt;br /&gt;
The first thing we are going to do is install a few dependencies for the CUPS server, as well as CUPS itself. This is assuming we are starting off in the terminal of a fresh RPI install. II used Raspbian Lite 32bit for this device, but as long as it runs on the device, and is Debian based these instructions should work perfectly fine. &lt;br /&gt;
&lt;br /&gt;
Start off by updating your OS&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt update&lt;br /&gt;
&lt;br /&gt;
sudo apt upgrade&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now that we have updated the system, and pro&amp;#039;s install the cups service&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt install cups&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now that CUPS is installed we are going to add our local user to the &amp;quot;lpadmin&amp;quot; group to allow it to have access to the local instillation of CUPSS. To do this run&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo user mod -aG lpadmin user&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now we are going to allow all local network devices to access the CUPS server and reboot the service to apply the change&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo cupsctl --remote-any&lt;br /&gt;
&lt;br /&gt;
sudo systemctl restart cups&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now you should be able to navigate the the devices IP on the local network with port 631&lt;br /&gt;
&lt;br /&gt;
Example&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
http://192.168.1.20:631&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Samba ====&lt;br /&gt;
&lt;br /&gt;
Now before we continue we also ant to instal samba to the device and configure it to allow MacOS Bojour and Windows devices to access the service, and print to the device using network discovery. &lt;br /&gt;
&lt;br /&gt;
To do this first install samba with&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt install samba &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Once Samba is installed we just have to make a few changes to its config to support the actions we want. Open the config file &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo nano /etc/samba/smb.conf&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
and then scroll to the bottom of the file and edit its &amp;quot;[printers]&amp;quot; and &amp;quot;[print$]&amp;quot; section to match the below settings&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[printers]&lt;br /&gt;
   comment = All Printers&lt;br /&gt;
   browseable = no&lt;br /&gt;
   path = /var/spool/samba&lt;br /&gt;
   printable = yes&lt;br /&gt;
   guest ok = yes&lt;br /&gt;
   read only = yes&lt;br /&gt;
   create mask = 0700&lt;br /&gt;
&lt;br /&gt;
# Windows clients look for this share name as a source of downloadable&lt;br /&gt;
# printer drivers&lt;br /&gt;
[print$]&lt;br /&gt;
   comment = Printer Drivers&lt;br /&gt;
   path = /var/lib/samba/printers&lt;br /&gt;
   browseable = yes&lt;br /&gt;
   read only = no&lt;br /&gt;
   guest ok = no&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now save the file, close it, and reload the samba service to apply the change she made&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo systemctl restart smbd&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now we have samba and cups installed and configured on the device.&lt;br /&gt;
&lt;br /&gt;
==== Adding printer to CUPS ====&lt;br /&gt;
&lt;br /&gt;
Now we must add the printer to our cups server from the web UI.&lt;br /&gt;
&lt;br /&gt;
Navigate the the IP like you did earlier to test CUPS resolution, and go to the Administration Tab&lt;br /&gt;
&lt;br /&gt;
[[File:Screenshot 2024-09-08 at 8.14.08 PM.png|600px]]&lt;br /&gt;
&lt;br /&gt;
Once you are in the Administration page, select &amp;quot;Add printer&amp;quot;&amp;quot;&lt;br /&gt;
&lt;br /&gt;
[[File:Screenshot 2024-09-08 at 8.15.17 PM.png|600px]]&lt;br /&gt;
&lt;br /&gt;
Then on the next page select your printer, which should show as its name and model, and click continue.&lt;br /&gt;
&lt;br /&gt;
Verify the settings on this page and then click next, to apply driver.&lt;br /&gt;
&lt;br /&gt;
Finally you will need to find the driver file for your printer. I like to use a resource called OpenPrinting. You can find the download page for the specific Device I used &lt;br /&gt;
[https://www.openprinting.org/printer/Brother/Brother-HL-2140 here]&lt;br /&gt;
&lt;br /&gt;
Once you have searched up and found your .ppd file, download it and upload it to the second option on the page. &lt;br /&gt;
&lt;br /&gt;
Note: If the ppd file is hpijs based please run the following install command to add dependencies needed after you finish the setup in the web page.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt install hpijs-ppds printer-driver-hpijs&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Finally click next, make sure &amp;quot;Share this printer&amp;quot; is checked to allow the device to be shared on the network. &lt;br /&gt;
&lt;br /&gt;
You should now be able to discover the printer on the network from Windows or MacOS.&lt;/div&gt;</summary>
		<author><name>T20A02</name></author>
	</entry>
</feed>