RPC.PCNFSD(8)                                                    RPC.PCNFSD(8)

       pcnfsd, rpc.pcnfsd - (PC)NFS authentication and print request server


       pcnfsd is an RPC server that supports Sun ONC clients on PC (DOS, OS/2,
       Macintosh, and other) systems. This page describes version two  of  the
       pcnfsd server.

       rpc.pcnfsd  may be started from /etc/rc.local or by the inetd(8) super-
       daemon. It reads the configuration file  /etc/pcnfsd.conf  if  present,
       and  then services RPC requests directed to program number 150001. This
       release of the pcnfsd daemon supports both version 1 and version  2  of
       the  pcnfsd  protocol.  Consult  the  rpcgen  source  file pcnfsd.x for
       details of the protocols.

       The requests serviced by pcnfsd fall into three categories: authentica-
       tion,  printing,  and  other. Only the authentication and printing ser-
       vices have administrative significance.

       When pcnfsd receives a PCNFSD_AUTH or  PCNFSD2_AUTH  request,  it  will
       "log in" the user by validating the username and password and returning
       the corresponding uid, gids, home directory, and umask. If  pcnfsd  was
       built  with  the WTMP compile-time option, it will also append a record
       to the wtmp(5) data base. If you do not wish to record PC  "logins"  in
       this way, you should add a line of the form

              wtmp off

       to the /etc/pcnfsd.conf file.

       pcnfsd  supports  a  printing model based on the use of NFS to transfer
       the actual print data from the client to the server. The client  system
       issues  a  PCNFSD_PR_INIT  or  PCNFSD2_PR_INIT  request, and the server
       returns the path to a spool directory which  the  client  may  use  and
       which  is  exported  by NFS.  pcnfsd creates a subdirectory for each of
       its clients: the parent directory is  normally  /export/pcnfs  and  the
       subdirectory  is the hostname of the client system.  If you wish to use
       a different parent directory, you should add a line of the form

              spooldir path

       to the /etc/pcnfsd.conf file.

       Once a client has mounted the spool directory using NFS and has  trans-
       ferred  print  data  to  a file in this directory, it will issue a PCN-
       FSD_PR_START or PCNFSD2_PR_START request.   pcnfsd  handles  this,  and
       most  other  print-related requests, by constructing a command based on
       the printing services of the server operating system and executing  the
       command  using  the  identity  of the PC user. Since this involves set-
       user-id privileges, pcnfsd must be run as root.

       Every print request from the client includes the name  of  the  printer
       which is to be used. In SunOS, this name corresponds to a printer defi-
       nition in the /etc/printcap(5) database. If you wish to define  a  non-
       standard  way of processing print data, you should define a new printer
       and arrange for the client to print to this printer. There are two ways
       of  setting  up  a  new printer.  The first involves the addition of an
       entry to /etc/printcap(5) and the creation of filters  to  perform  the
       required  processing.  This is outside the scope of this discussion. In
       addition, pcnfsd includes a mechanism by which  you can define  virtual
       printers  known  only  to  pcnfsd clients. Each printer is defined by a
       line in the /etc/pcnfsd.conf file of the following form

              printer name alias-for command

       name is the name of the printer you want to define.  alias-for  is  the
       name  of  a "real" printer which corresponds to this printer. For exam-
       ple, a request to display the queue for name will  be  translated  into
       the  corresponding  request  for  the  printer  alias-for.  If you have
       defined a printer in such a way that there  is  no  "real"  printer  to
       which it corresponds, use a single "-" for this field. (See the defini-
       tion of the printer test below for an example.) command  is  a  command
       which  will  be executed whenever a file is printed on name.  This com-
       mand is executed by the Bourne shell, /bin/sh using the -c option.  For
       complex operations you should construct an executable shell program and
       invoke that in command.  Within command the following  tokens  will  be

       Token     Substitution

       $FILE     Replaced  by  the full path name of the print data file. When
                 the command has been executed, the file will be unlinked.

       $USER     Replaced by the username of the user logged in to the  client

       $HOST     Replaced by the host name of the client system.

       Consider the following example /etc/pcnfsd.conf file:

              printer rotated lw /usr/local/bin/enscript -2r $FILE
              printer test - /usr/bin/cp $FILE /usr/tmp/$HOST-$USER

       If  a  client  system  prints  a job on the printer rotated the utility
       enscript will be invoked to pre-process the file $FILE. In  this  case,
       the -2r option causes the file to be printed in two-column rotated for-
       mat on the default PostScript® printer.  If the client requests a  list
       of  the  print  queue  for  the  printer rotated the pcnfsd daemon will
       translate this into a request for a listing for the printer lw.

       The printer test is used only  for  testing.  Any  file  sent  to  this
       printer  will  be copied into /usr/tmp.  Any request to list the queue,
       check the status, etc. of printer test will  be  rejected  because  the
       alias-for has been specified as "-".

       /etc/pcnfsd.conf    configuration file
       /export/pcnfs       default print spool directory

       lpr(1), lpc(8)

       The  pcnfsd  source  code is distributed by Sun Microsystems, Inc. with
       their PC/NFS product under terms described in common.h in  that  source
       code.   Those  terms  require that you be informed that this version of
       pcnfsd was modified to run on NetBSD and is NOT supported by Sun.

                                 25 April 1991                   RPC.PCNFSD(8)

You can also request any man page by name and (optionally) by section:


Use the DEFAULT collection to view manual pages for third-party software.

©1994 Man-cgi 1.15, Panagiotis Christias
©1996-2018 Modified for NetBSD by Kimmo Suominen