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 when printing
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
Printing (including from CNF Thin)
In the Print dialogue, select the Net-Print printer.
- The "Status" area may say "Unable to connect to CIFS host after (tried 3 times)". This is OK. You will be prompted to connect with your NetID/GuestID credentials in the next step.
When prompted for your username and password, for your username use: cornell\<NetID> or cornell\<GuestID> – that's the lowercase word "cornell" followed by a backslash followed by your NetID or GuestID.
- NOTE that your username will be autofilled without the leading cornell\ ... you MUST add the cornell\ to your username for the document to print (that's the word "cornell" followed by a backslash followed by your NetID or GuestID)
- NOTE that the cursor may start in the Password field instead of the Username field. You will need to click into the Username field to make the above necessary change to your username.
Your document prints.
KDE Applications Cannot Print
You will not be able to print from any KDE applications such as Konqueror or Okular because KDE does not prompt for a username and password.