Fermilab Computing Sector

FNPRT - Fermilab Unix Print Service


FNPRT Users - Help for users with standard user access

FNPRT Operators - Help for users with FNPRT operator access.

FNPRT Administrators - Help for users with FNPRT administrator access.

Add Printer

Remove Printer

Add User


Client Applications: 

The FNPRT CUPS server runs two different printing protocols:

  • IPP: Internet Printing Protocol running on port 631
  • LPD: Line Printer Daemon protocol running on port 515

    IPP: CUPS provides libraries to implement the IPP protocol. Many applications like Thunderbird, Firefox, and OpenOffice make use of CUPS software to provide printing. You can find a list of all available printers, associated PPD files, as well as /etc/cupd/printers.conf examples required by cups at the following URL: https://fnprt.fnal.gov:631/

    LPD: The command line tools Fermi Line Printing Remote (flpr) and Line Printer Remote (lpr) are two applications that can be used for printing to FNPRT via the LPD protocol. If you are printing using either of these tools you can find an example printcap file or beginnings of a flprrc file here: https://fnprt.fnal.gov:631/

    FLPR example:

        $ flpr -h fnprt.fnal.gov -q wh5w-hp5si-01 averysmallpdf.pdf

    LPR example:

        $ lpr -H fnprt.fnal.gov -P wh5w-hp5si-01 averysmallpdf.pdf

        We can adjust the lines per inch (lpi) and characters per inch (cpi) to influence how text is interpeted by the printer. Click Here for Common Job Options that can be used to influence printing.

        Print Larger Text Characters:
        lpr -H fnprt -P fcc2w_hp5si -o lpi=4 -o cpi=6 /tmp/mytextfile.txt

        Print Smaller Text Characters:
        lpr -H fnprt -P fcc2w_hp5si -o lpi=8 -o cpi=12 /tmp/mytextfile.txt

        Setting Default Printing Options:

          If you are using CUPS you can set the default Common Job Options like lpi and cpi for the system or a single user in the lpoptions file:
          ~/.cups/lpoptions - user defaults and instances created by non-root users.
          /etc/cups/lpoptions - system-wide defaults and instances created by the root user.

          Example:
          Set the default printer to fcc2w_hp5si and associated cpi, lpi
          $ lpoptions -d fcc2w_hp5si -o cpi=12 -o lpi=8
          $ cat ~/.cups/lpoptions
          Default fcc2w_hp5si cpi=12 lpi=8

    CUPS example:

    This example assumes you work on wh9w and want to print to the following printers:
    wh9w_hp4700, wh9w_hp4700_d, wh9sw_hp8150, wh9sw_hp8150_d

    You may use any version CUPS software. Make sure CUPS is installed on your local machine.

      $ rpm -qa | grep -i cups
      cups-libs-1.X.X-XX.elX_X.X.i38X
      libgnomecups-0.X.X-X.i386
      hal-cups-utils-0.X.X-X.X.elX.i38X
      cups-1.X.X-XX.elX_X.X.i38X
      

    Step 1) Find the name of your printers in the List of All Cups Printers

    Step 2) Populate /etc/cups/printers.conf with every printer to be used.

      $ cat /etc/cups/printers.conf 
      # PPD file: https://fnprt.fnal.gov:631/ppd/wh9w_hp4700.ppd
      <Printer wh9w_hp4700>
      Info wh9w_hp4700
      Location https://fnprt.fnal.gov:631/printers/wh9w_hp4700
      DeviceURI ipp://fnprt.fnal.gov:631/printers/wh9w_hp4700
      </Printer>
      
      # PPD file: https://fnprt.fnal.gov:631/ppd/wh9w_hp4700_d.ppd
      <Printer wh9w_hp4700_d>
      Info wh9w_hp4700_d
      Location https://fnprt.fnal.gov:631/printers/wh9w_hp4700_d
      DeviceURI ipp://fnprt.fnal.gov:631/printers/wh9w_hp4700_d
      </Printer>
      
      # PPD file: https://fnprt.fnal.gov:631/ppd/wh9sw_hp8150.ppd
      <Printer wh9sw_hp8150>
      Info wh9sw_hp8150
      Location https://fnprt.fnal.gov:631/printers/wh9sw_hp8150
      DeviceURI ipp://fnprt.fnal.gov:631/printers/wh9sw_hp8150
      </Printer>
      
      # PPD file: https://fnprt.fnal.gov:631/ppd/wh9sw_hp8150_d.ppd
      <Printer wh9sw_hp8150_d>
      Info wh9sw_hp8150_d
      Location https://fnprt.fnal.gov:631/printers/wh9sw_hp8150_d
      DeviceURI ipp://fnprt.fnal.gov:631/printers/wh9sw_hp8150_d
      </Printer>
        

    Step 3) Download the corresponding ppd file to /etc/cups/ppd on your local system.

      $ wget --no-check-certificate https://fnprt.fnal.gov:631/ppd/wh9w_hp4700.ppd -O /etc/cups/ppd/wh9w_hp4700.ppd
      $ wget --no-check-certificate https://fnprt.fnal.gov:631/ppd/wh9w_hp4700_d.ppd -O /etc/cups/ppd/wh9w_hp4700_d.ppd
      $ wget --no-check-certificate https://fnprt.fnal.gov:631/ppd/wh9sw_hp8150.ppd -O /etc/cups/ppd/wh9sw_hp8150.ppd
      $ wget --no-check-certificate https://fnprt.fnal.gov:631/ppd/wh9sw_hp8150_d.ppd -O /etc/cups/ppd/wh9sw_hp8150_d.ppd
      

    Step 4) Restart local cups daemon with /etc/init.d/cups restart

      $ /etc/init.d/cups restart

    Step 5) You should now be able to print from any CUPS aware application.


  • FNPRT Background 

    The printing service known as FNPRT has been in service since early 1992 and has moved from OpenVMS (VAX 4000 m90) to Solaris (SUN E250) to its current home on Linux (VMWare virtual hardware).

    The FNPRT projects used to run ESP Print Pro CUPS produced by Easy Software products. As of this writing CUPS is owned by Apple Inc and we continue to use the CUPS application to provide printing services.

    CUPS is based on an international printing standard called the Internet Printing Protocol, or "IPP." IPP provides the framework for modern printing and is used by Microsoft®, Hewlett-Packard®, Xerox®, and many other server and printer manufacturers.

    Historical Data

    Historical data for fnprts jobs and pages can be fount at the following URL:
    http://computing.fnal.gov/printing/stats/fnprt.html

    The FNPRT service is supported by the Fermilab Service Desk and the Unix Server Services team.


    Frequently Asked Questions: 

    Q:What is the URL for the CUPS web interface?
    A: https://fnprt.fnal.gov:631

    Q: I submit my job with the correct print queue, yet it says that I have the wrong print queue.
    A: Ensure the print queue is in lower case. All print queues are in lower case. For a list of valid print queue names you can search Cups Printers Page or search the Printcap file.

    Q: Where can I find a printcap file with all the available printers?
    A: Printcap Text
    The URL for the printcap.txt file is http://fnprt.fnal.gov:631/printcap.txt

    Here are a few possible ways to get the printcap.txt file to your local computer:

    1. Click Here and then choose File | Save as
    2. Use wget and rename the file (.flprrc)appropriately.
        wget http://fnprt.fnal.gov:631/printcap.txt
      
    3. Use links and rename the file (.flprrc) appropriately.
      links -source http://fnprt.fnal.gov:631/printcap.txt > printcap.txt
      

    Q: I submitted a job and it is not printing, what can I do?
    A: Search for the printer on the Printers Page and click on the printer or queue name. If the job appears to be stuck contact the Service Desk for assistance.

    Q:Username And Password? I click cancel on my own job but I get prompted for a username and password? Which username/password should I use?
    A: For security reasons you can not start/stop/cancel print jobs. Please contact the Service Desk for assistance.

    Q:Are there statistics on how many jobs are printed?
    A: Statistics may be found at: http://computing.fnal.gov/printing/stats/daily-stats.html

    Q:Why doesn't my job print?
    A: Print queue names are case sensitive. A printer or queue with the name PRINTER1 is different than printer1. For a list of valid print queue names you can search Cups Printers Page or search the Printcap file.

    Q:FTP is not installed on the new print server, so how do I obtain the listing of queues like I did before?
    A: The URL for the flpr-defaults.txt file is http://fnprt.fnal.gov:631/flpr-defaults.txt

    Here are a few possible ways to get the flpr-defaults.txt file to your local computer:

    1. Click Here and then choose File | Save as
    2. Use wget and rename the file appropriately.
        wget http://fnprt.fnal.gov:631/flpr-defaults.txt 
      
    3. Use links and rename the file appropriately.
        links -source http://fnprt.fnal.gov:631/flpr-defaults.txt > flpr-defaults.txt
      

    Q:Can printers be removed from FNPRT?
    A: Yes, printers will be removed for the following reasons:
    • **Printers without valid DNS Name may be removed from FNPRT after 7 days**
    • **Printers not responding to ICMP pings may be removed from FNPRT after 14 days**






    View All Pending Print Jobs 

    If there is a printer in an offline state or a print job is stuck in the queue, you will need to contact the Service Desk to restore functionality.

    To view all the active print jobs go to https://fnprt.fnal.gov:631/ and click on Jobs in the upper right hand side of the page.

    Above we can see there is one job processing. We are also presented with the option to Reprint, Cancel, or Move the print job.

    Manage Specific Printer Jobs - Print Operators Only 

    To determine the status of a printer's current queue go to https://fnprt.fnal.gov:631/ and click on Printers in the upper right hand side of the page. Enter the Name or Location of the printer you would like to search for in the Search in Printers space.

    Above we searched for fcc2 and we can see the results returned have "fcc" in their names. IF we click on the name of the printer we will be taken to a page where we can see the specific jobs that are active on the printer.

    Above we can see there is a job processing or spooling. We are prompted with the options to Reprint, Cancel, or Move the print job.

    Print Operator Actions - Print Operators Only 

    As the operator of the print queue you can take the following actions on a printer.

  • Stop Printer
  • Start Printer
  • Reject Jobs
  • Accept Jobs
  • Move All Jobs
  • Cancel All Jobs






  • Add Printer - Print Server Administrators Only 

    If you have a brand new printer you would like to add to FNPRT you will need to fill out a Service Desk request. This guide is intended for print server administrators.

    Step 1: Information Collection 

    Before we can get started setting up our printer we need to know a few things about it. Here is a list of things we need to know before adding a new printer. Please note that all printers setup on the central print server must have a default setting of duplex if the printer has that capability. This is part of the laboratories Green Initiatives.

    • Is Color?: ie. yes
    • Duplex Capable?: Can printer use both sides of paper to print? This should be setup as the default if the printer is capable of printing duplex.
    • Printer Contact: ie. jsmith (Fermilab Email Before @ symbol)
    • Location: ie. Wilson Hall 11th floor West Side
    • Printer Manufacturer: ie. HP
    • Printer Model: ie. 8150
    • Printer IP Address: ie. 131.225.x.x
    • Tag: ie, Yellow Fermi Property Tag

    Step 2: Create DNS Name 

    We will use the information we have collected to come up with a good DNS name for the printer. The name will communicate the Location, Manufacturer and Model, as well as other capabilities.

    DNS Name: Location_Manufacturer&Model_Duplex ie. wh11nw_hp8150_duplex

    Before we decide on a name we should check and see if this printer already has a name we can re-use on the central windows print server. If you are installing a queue with special capability you will need to create a new DNS name.

    • Location - Willson Hall 11th Floor North West Side ie. wh11nw
    • Manufacturer&Model - Hewlet Packard Model 8150 ie. hp8150
    • Special - Special capabilities for this queue. Examples: ( duplex, 11x17, color, legal, ledger, trans, land, dland, 3hole, staple, ps).
    **Printers without valid DNS Name may be removed from FNPRT after 7 days**
    **Printers not responding to ICMP pings may be removed from FNPRT after 14 days**

    Step 3: Add Printer Dialog 

    Now that we have collected all the needed information we can add our new printer to the FNPRT server. Provide your Services password if prompted.

    • Click on the Administration Tab and then the Add Printer button shown below.

    I: Name Location and Description 

    Now we can use the information we collected in the previous steps to give an informative Name, Location and Description.

    • Name: wh11nw_hp8150_double
    • Location: Willson Hall 11th Floor North West Side
    • Description: Color Duplex HP 8150 Contact: jsmith

    II: Device Protocol 

    As of this writing the CUPS maintainers suggest using the AppSocket Protocol whenever possible for reliability and consistency of implementation.

    • Select the AppSocket/HP JetDirect communication method shown below and then click Continue

    **If you are adding a printer that does not support the AppSocket protocol try using LPD/LPR as the next best alternative.**

    III: Socket URI 

    One way to see if a printer supports the AppSocket Protocol is to telnet to port 9100 and see if there is an application listening.

    $ telnet wh5w_hp123_double.fnal.gov 9100
    Trying 131.225.232.92...
    Connected to pcdf32.fnal.gov (131.225.232.92).
    Escape character is '^]'.
    

    Above we could tell there is an application listening on 9100 so we will use the AppSocket Device URI show below.

    Device URI: socket://wh11nw_hp8150_double.fnal.gov:9100

    • Enter the Device URI and click Continue

    **If you are forced to use the LRP/LPD protocol to connect to your printer try a Device URI of lpd://wh11nw_hp8150_double.fnal.gov/ps. LPR/LPD communicates over TCP port 515.**

    IV: Choose Your PPD File 

    We have pre-loaded many ppd files from the Gutenprint project (RHEL5 still refers to this as the gimp-print project). Check to see if a ppd file for your Make and Model is already available in cups interface shown below. If you are unable to find your *EXACT* make and model sometimes you can choose a PPD file in the same series. Ie. a HP4000 PPD file may work for a HP4100 and HP4200. Some experimentation may be required. If nothing works you may need to provide the PPD file manually. Search the manufacturer's website for the specific PPD file for your printer. If printer documentation is Windows-centric you can sometimes find the ppd file in the windows drivers. You may also want to experiment with different PPD files if you know you are dealing with a duplex capable printer yet you are not able to print dual sided.

    • Select your printer Make: and click Continue

    • Select your printer Model: and click Continue

    ** If you would like a ppd file to show up in above list place it in /usr/share/cups/model/en_GB/ **

    V: Configure Printer Duplex 

    Per the laboratories Green Initiatives, if the printer is capable of printing duplex it must be setup to print in duplex mode by default.

    ** Display printer options on via cli: $ lpoptions -h fnprt -p fcc1w_hp8100 -l | grep -i duplex **






    Remove Printer - Print Server Administrators Only 

    If you would like to remove a printer that is no longer in use please fill out a Service Desk request. This guide is intended for print server administrators.

    Double Check Status 

    We are read to remove a printer and we believe it is not being used anymore. Here are some things to check to be sure:

    • DNS: - Look at the Device URI defined in /etc/cups/printers.conf or in cups web interface. Use nslookup or host or dig to determine if a dns entry exists. Below we can see that a DNS entry no longer exists for this printer. It is safe to remove.
      $ nslookup printer1.fnal.gov
      Server:         131.225.17.150
      Address:        131.225.17.150#53
      
      ** server can't find printer1.fnal.gov: NXDOMAIN
      
    • PING: - Try to ping the host listed in the Device URI If you can not get a ping response from the printer for an extended period of time it may be ok to remove the printer.
    • Ports: - Maybe the printer was upgraded or the IP address is no longer used by a printer. Another good check is to see if port 515 or 631 or 9100 are open on the target printer. We can check using telnet or some other tool to see if there is an application listening on any of these ports. If we do not find any of these ports open the FNPRT server will most likely not be able to communicate with the printer. It should be safe to remove the printer.

    Remove Printer Dialog 

    • Step 1: Navigate to the printers page and search for the printer you would like to remove 
    • Step 2: Click on the Delete Printer button. Enter your services username and password if prompted. Click Delete Printer again to confirm 




    Add a new user - Print Server Administrators Only 

    If you would like to add a new printer Operator or Administrator user please make a request in the Service Desk. This guide is intended for print server administrators.

    Adding An Operator User 

    1) Click on the Administration tab and then click on Edit Configuration File

    2) Use the scroll bar to locate "All Print Operators and Service Desk..." Enter the services username for the person you would like to grant operator access under the "Add Servicedesk Users Here" section.

    3) Finally click the Save Changes button at the bottom of the page. You have successfully created an operator user.

    Adding An Administrator User 

    1) Click on the Administration tab and then click on Edit Configuration File

    2) Use the scroll bar to locate "All Print Operators and Service Desk..." Enter the services username for the person you would like to grant administrator access under the "Add CUPS admins here".

    3) Use the scroll bar to locate "Admins can take these actions" Enter the services username for the person you would like to grant administrator access under the "Add CUPS admins here" section.

    4) There is another section where we must specifically grant admin users access. Search for "Limit the following actions to specific users. Add the services username to every line where you see a Location declaration."

    5) Click the Save Changes button at the bottom of the page. You have successfully created an administrator user.






    For assistance contact the Service Desk
    Written for Fermilab by Nick Bausch
    Last Modified on 2010.09.22