Installation Pre-Requisites
- Ensure that CUPS is installed and started.
- Ensure that the SAMBA4 client packages are installed (SAMBA 3 will not work). If your distribution does not include a default smb.conf config file (usually in /etc/samba), you will need to follow your distribution's instructions to create a default smb.conf .
Edit the Samba config file (usually /etc/samba/smb.conf) to contain the following two directives in the "[global]" section:
client min protocol = SMB2 client max protocol = SMB3
Ensure the following symlink exists:
/usr/lib/cups/backend/smb → /usr/bin/smbspool
- If using the PaperCut installers, ensure that CURL is installed.
- If using the PaperCut installers, obtain the installer packages from CNF Computing.
Installing
Make sure you have satisifed the above pre-requisites.
RedHat/Debian/Ubuntu/Mint - PaperCut installers
- Install the PaperCut packages:
- For RedHat use the "yum install" command to install the package. Eg:
sudo yum install net-print-1.2.1-0.x86_64.rpm
- For Debian/Ubuntu/Mint:
- Install additinoal pre-requsities:
- python3
- gnome-terminal
- curl
- Java8 JRE
sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java8-installer
- Install the Debian Net-Print package itself.
- Install additinoal pre-requsities:
- For RedHat use the "yum install" command to install the package. Eg:
- Items "Net-Print Queue Installer" and "PaperCut Client" are created in the "Internet", "office", and "System" sub menus of your desktop
- Run the Net-Print Queue Installer application
- You may need to manually run this from the commandline as follows (eg permissions problems adding the printer):
sudo /opt/netprint/client/install_netprintpc_printer.pl -g
- For the "Department", select "RS-CNF"
- You will see multiple "Find-Me" print queues listed at the top of the list of printers. The specific CNF printers are listed at the bottom of the list.
- You may need to manually run this from the commandline as follows (eg permissions problems adding the printer):
ArchLinux - PaperCut installers
- Obtain the Debian Net-Print installer from CNF Computing
- Install java, curl, samba, cups, and python3 .
- Obtain an smb.conf file per the Arch Wiki
Start CUPS via:
systemctl restart org.cups.cupsd.service
Install yaourt:
pacman -S yaourt
As a non-root user, install dpkg:
yaourt dpkg
You will be prompted to edit the package build. Choose No. Otherwise, install the missing prereqs and let the build take place.
- As root, install the net-print package, eg:
dpkg -i --ignore-depends=smbclient,python3,default-jre,gnome-terminal,curl .
/net-print_1
.2-1.deb
Run, as root, the Net-Print installer:
/opt/netprint/client/install_netprintpc_printer
.pl -g
- For Department, select RS-CNF
- You will see multiple "Find-Me" print queues listed at the top of the list of printers. The specific CNF printers are listed at the bottom of the list.
RedHat - Printer configuration GUI
- Start the Printer configuration tool at System - Administration - Printing
- Click New
- Enter the administrative password
- You do not need to adjust the firewall or attempt to List available devices
For the "device URI", you will use these UNIX SMB URIs :
Printer NameUNIX SMB URIAccessible byCad Room smb://win2.net-print.cornell.edu/cnf-cad-1c CNF Users & Staff Togging smb://win2.net-print.cornell.edu/cnf-togging-2c CNF Users & Staff Visitor Office smb://win2.net-print.cornell.edu/cnf-gradoffice Staff & Users with Visitor Office Access Konica smb://win2.net-print.cornell.edu/cnf-konica-color CNF Staff Only LJ4700 smb://win2.net-print.cornell.edu/cnf-prnt250lj CNF Users during normal CNF office business hours (CNF Staff anytime) Office 262 smb://win2.net-print.cornell.edu/cnf-prnt262 CNF Staff Only - If a driver is not found, you will have to download a driver via the printer gui or separately from the manufacturer's website.
All Linux Distros - CUPS Printer GUI
The CUPS printer GUI is located at the following URL:
http://localhost:631
- Use the UNIX SMB URIs from the above "RedHat - Printer configuration GUI" section.
- Enable authentication for the print queue
If you cannot enable authentication via the CUPS web gui, edit file /etc/cups/printers.conf to add a line for the NetPrint queue:
AuthInfoRequired username,password
All Linux Distros - Commandline
- Download a PPD for the model of printer
- Get the SMB URI for the printer from the sections above
- As root or sudo'ed, run the following command (substituting in for the brackets)
lpadmin -p <your_name_for_the_print_queue> -E -P </path/to/PPD-file> -o auth-info-required=username,password -v '<SMB URI>'
Post-Installation Optional Steps
Printer Error Policy
The default Error Policy on some linux distributions is to stop the printer queue from processing more print jobs A better choice is to either retry the job or to abort the job.
List the installed printer queues:
$ lpstat -a cnf-cad-1c accepting requests since Mon 27 Nov 2017 11:11:49 AM EST cnf-konica-color accepting requests since Tue 30 Oct 2018 01:58:19 PM EDT cnf-prnt250lj accepting requests since Thu 31 Jan 2019 03:27:23 PM EST cnf-togging-2c accepting requests since Mon 27 Nov 2017 11:11:49 AM EST
Set the error policy for each printer queue to abort the job (eg for the CAD rm printer):
$ sudo lpadmin -p cnf-cad-1c -o printer-error-policy=abort-job
Don't require "cornell\" before your NetID or GuestID
Before doing the following, first stop CUPS. Once you have made changes, restart CUPS.
- Edit the /etc/cups/ppd/printers.conf file in your favorite text editor
- For each printer queue, find the line starting with "DeviceURI" .
- Add "cornell/" between the "smb://" and the "win2.net-print.cornell.edu", for example
DeviceURI smb://cornell/win2.net-print.cornell.edu/cnf-cad-1c
Do the above for each printer. Save your changes. And restart CUPS