Attachmate Worldwide  |   Contact Us  |   NetIQ.com
Home » Support » Solution Library

Technical Notes

Troubleshooting NFS Printing Problems
Technical Note 7047
Last Reviewed 07-Jul-2005
Applies To
Reflection NFS Client version 10.0 or higher
Summary

This technical note explains how to troubleshoot common problems encountered when using Reflection NFS to send a local PC file to a UNIX printing queue. It offers an overview of the NFS printing process, a list of common problems, and troubleshooting tips to help you identify and solve your NFS printing problem.

Note the following:

  • The Reflection NFS Client standalone product is also included as a component of several Reflection products. For further details, refer to Technical Note 3000.
  • For information about which versions of Reflection NFS are supported on each Microsoft Windows platform, see Technical Note 1866.

This note is presented in the following sections:

NFS Printing Overview

In NFS printing, a print job is initiated from an NFS client on a PC to an NFS-mounted printer. This section offers an overview of the NFS printing process to help you identify the source of your printing problem.

  1. The NFS client copies the temporary print file from the PC to a temporary print job file in the NFS server’s spool directory, which is typically /var/spool or /usr/spool. This process is the same as using NFS to copy a text file from the PC to the server.
  2. The NFS client sends a message to the NFS server’s pcnfsd daemon. The message contains the following information:
    • The name of the temporary print job file
    • Information about the owner of the file
    • Characteristics of the print job
    • The name of the print queue to receive the job

Note: The pcnfsd daemon is a process running on the NFS server (similar to a DOS TSR). The daemon handles NFS printing or authentication requests coming from PC NFS clients. For further information on pcnfsd, see Technical Note 1100.

  1. The pcnfsd daemon issues commands to print the contents of the temporary print job file, and then deletes the print job file from the spool directory.

Common NFS Printing Problems

The table below includes a list of common printing problems and the associated troubleshooting sections that follow. If your problem is not listed in the table, begin with Troubleshooting Section A and then proceed through each section in turn.

Common Printing Problems
Troubleshooting Section
You can see the NFS host when browsing Network Neighborhood (Entire Network/NFS Network), but cannot see any NFS printers.
A, B, D
You can see the NFS printers when browsing the Network Neighborhood, but get the error "The network printer is off line" when trying to install the printer.
A, B, C, D
You see the NFS printer when browsing the NFS host, but the printer does not appear in the list of available printers in Windows applications.
E
You are able to print to the NFS printer, but the output is garbled.
F
You can print through Windows, but get a "File Creation Error" when trying to print from DOS or through a DOS-based application.
G

Troubleshooting Tasks

The following troubleshooting sections ask specific questions about your system and detail the configurations required for successful printing through Reflection NFS. Begin with the section(s) associated with your problem, identified in the table above, or simply begin with Section A.

A. Is the pcnfsd Daemon on the NFS Server?

The pcnfsd daemon must be running on the NFS server to which the printer is attached.

To verify the existence and version of pcnfsd on the server, use the Reflection NFS Utility. Click Search for Server Daemons in the Services Menu to find out about the pcnfsd daemon that your host supports.

Reflection NFS Client versions 10.0 and higher support only pcnfsd version 2. To print with Reflection NFS Client, pcnfsd version 2 or higher must be available on your NFS server.

If pcnfsd is running on the host, it may be necessary to stop and restart the pcnfsd daemon.

B. Are Print Queues Available on the NFS Server?

On a UNIX NFS server, pcnfsd sends the NFS client’s temporary print job files to the same print queues that line printer daemon (lpd) uses. The print queues must be able to work with line printer requester (lpr), line printer (lp), or the specific host equivalent in order for NFS printing to function.

Test the Print Queue

To determine if a print queue is working properly, send a file residing on the server directly to the print queue using the lpr or lp command, bypassing the NFS client and pcnfsd.

The command syntax follows:

lpr -P[printername] [filename]

or

lp -d [printername] [filename]

The following example prints a file named "blue.txt" to the PRINTER1 print queue:

$lpr -PPRINTER1 blue.txt

If neither of these commands work on your system, check the systems man pages to determine the proper command for your environment.

Check Print Queue Status

To check print queue status on a UNIX NFS server, use one of these commands:

$ lpstat

or

$ lpq

Another way to view print queue status is by using a server-based administrative utility, such as SMIT (AIX RS6000) or SAM (HP9000).

If none of these methods work on your system, check the systems man pages to determine the proper command for your environment.

If the print queues are not configured or are unavailable, contact your system administrator or consult your NFS server's documentation or man pages.

Note: Double-clicking an installed NFS printer does not show print queue status accurately.

C. Has the Print Spool File System Been Exported?

NFS uses a print spool file system for the temporary storage of files to be printed. The spool file system must be exported to enable NFS clients to write a temporary print job file. This file system is often /var/spool or /usr/spool/ (for consistency /var/spool will be used for the remainder of this document). Under /var/spool there is a directory called /pcnfs, which is the NFS print spool location. Directories for individual users' print files are often listed under the /pcnfs directory. The administrator may choose to export at the /var, /var/spool, or /var/spool/pcnfs level.

To check whether the spool file system is exported, use the Reflection NFS Utility. Click Search for Server File Systems in the Services menu to see if the /var/spool file system is listed.

If the print spool file system is not exported and you modify the exports (typically stored in /etc/exports or in /etc/dfs/dfstab), remember that you must export again for your changes to take effect. Use the server’s administrative utilities, or on some systems, use the following command:

exportfs -a

For further information regarding the exports file, see Technical Note 1100.

Note: If the print spool file system is a symbolic link, you will need to export both the symbolic link location and the "real" location. For further details regarding symbolic links, see Technical Note 1050.

D. Do Users Have Sufficient Rights to the Print Spool Directory?

In order to print, you must be authenticated and have sufficient rights to create, modify and delete temporary print spool files in the spool directory. The spool directory should be exported with liberal permissions, such as 777 (rwxrwxrwx) or 770 (rwxrwx---).

On many NFS servers, anonymous users do not have sufficient rights to write to the spool directory (as in the 770 example above). If you authenticated as anonymous or authenticated on the wrong host, try re-authenticating as a valid user on the host to which you are trying to print.

E. Is the NFS Printer Mounted on the Workstation?

The NFS printer must be mounted, or it will not appear in Windows lists of available printers. To determine whether the NFS printer you want is installed, open the printer in the Printers folder in Control Panel. A printer name displayed under a printer icon may not be descriptive enough to tell you which printer it is. To see more information on an installed printer, follow these steps:

  1. In the Window's Printers folder, right-click the printer icon and click Properties.
  2. Choose the Ports tab in Windows XP, Windows 2000, or Windows NT, and choose the Details tab in Windows 98 or Windows ME.
  3. Verify that the UNC path and printer name in the port field is correct.

If the NFS printer you want is not already installed, see Technical Note 1083 or the Reflection NFS online help.

F. Has the Correct Printer Driver Been Installed on the Workstation?

In order for NFS printing to work, you must have the correct NFS server printer driver on your PC. Selecting an incorrect driver results in garbled printouts, and repeated printing of the same file produces identical garbled printouts. If other users can successfully print to an NFS printer and you are repeatedly getting identical garbled printouts, check to see if you are using a different printer driver.

To view the printer driver currently in use for an installed printer, follow these steps:

  1. In the Window's Printers folder, right-click the printer icon and click Properties.
  2. Choose the General tab in Windows XP, Windows 2000, or Windows NT, and choose the Details tab in Windows 98 or Windows ME.

The driver name should match the printer type.

G. Is the Workstation Configured for DOS Printing Support?

In Windows 98/ME, a DOS printer port can be redirected to an NFS printer queue by capturing the printer port. To see which NFS printers are available from a DOS session (that is, which printer ports are captured) follow the steps below.

Note: DOS session support for NFS printers is not available for Windows XP, Windows 2000, or Windows NT.

  1. In the Printers folder in Control Panel, right-click the printer icon.
  2. Click Properties, and then choose the Details tab.
  3. Click End Capture to see a list of captured printer ports and associated printers. Click Cancel to exit the End Capture dialog box.

If the NFS printer you want is not on the list, capture the NFS printer by following one of the methods below:

Method 1

If you know the UNC path and print queue name for the NFS printer, follow the steps below:

  1. Click Capture Printer Port (next to the End Capture button).
  2. In the Path box, type the printer’s UNC path and print queue name, and then click OK.
  3. Click OK to exit the Properties dialog box.

Method 2

If you do not know the UNC path and print queue name, follow the steps below to browse for your NFS printer:

  1. Double-click the Network Neighborhood icon.
  2. Double-click Entire Network, then double-click NFS Network. (This folder is called NFS Available Servers in earlier releases of NFS.)
  3. Double-click the NFS server you want to use. You will see a list of available printers from this NFS server.
  4. Right-click the printer you want to use.
  5. Click Capture Printer Port, and then click OK.

Advanced Troubleshooting

If all of the above requirements have been met, and you are still having problems with no printer output or garbled printer output, try isolating the cause of the problem with these additional procedures.

Eliminate Pcnfsd as the Problem

The printer or pcnfsd may be having difficulty only with the specific type of file being sent by the application. To bypass pcnfsd, use the application to print to a file on the host. To access the Print to File setting, follow the steps below:

Access the Reflection NFS Client properties.

In Windows XP: click Start > right-click My Network Places > Properties > right-click Local Area Connections > Properties > double-click Reflection NFS Client.

In Windows 2000: click Start > Settings > Network and Dial-up Connections > right-click Local Area Connections > Properties > double-click Reflection NFS Client.

In Windows 98/ME and Windows NT: right-click Network Neighborhood > Properties > double-click Reflection NFS Client.

Once you are on the Reflection NFS Client Properties dialog box, follow the steps below to configure the NFS client to print to a file on the host:

  1. Choose the NFS Other (Reflection NFS versions 11.0 or higher) or NFS Printers tab (Reflection NFS versions 10.x or prior), and then select Print to File on host.

This will cause NFS to create the temporary spool file for the printout in the /var/spool/pcnfs directory, but will not notify pcnfsd that the file is there and needs to be printed. This preserves the print spool file so that you can determine whether it is being created correctly on the host.

  1. Use the vi command to view the file and see if it has been garbled. If the file is not garbled, use the lpr -P command to send the file directly to the printer queue (see Section B for syntax).

Eliminate the NFS File Transfer and Pcnfsd as Problems

Another potential problem area is the NFS file transfer. If printing to a file on the host still produces garbled output, use the application to print to a local file on the PC.

  1. In your application, choose Print from the File menu. In the Print dialog box, select the Print to File check box. Click OK.
  2. In the Print to File dialog box, type a name for the file and select a local directory to receive the print job. Click OK.
  3. Use FTP to copy the file to the host.
  4. Use the lpr -p command to send the file to the print queue (See Section B for syntax).

This process bypasses both the NFS file transfer and pcnfsd.

Eliminate the Host by Printing Directly to the Printer

Another method for eliminating NFS as the source of the problem is to remove the printer from the host and attach it directly to the PC. If you can print to the printer successfully with this configuration, re-attach the printer to the NFS server, and check the following:

  • The same printer driver being used on the host is being used in the NFS configuration.
  • There are few or no network errors in NFS Statistics. Follow the steps below to view NFS Statistics:
    1. Open NFS Utility.
    2. Click NFS Statistics in the Statistics menu.
    3. Note the value of RPC Timeouts and Network Errors. High values could indicate network problems.

If repeated printing of the same document on the host produces garbled printouts that are not identical, check for network errors.

Related Technical Notes
1050 Troubleshooting Reflection NFS Drive Mapping Problems
1083 Connecting to an NFS Printer
1100 Host Requirements for Reflection NFS
1421 Reflection NFS Client: Frequently Asked Questions (FAQ)
3000 Reflection Suites

Did this technical note answer your question?

Yes    No    Somewhat     Not sure yet

Additional comments about this tech note:

Need further help? For technical support, please contact Support.