Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages


home | help
LPD(8)			  BSD System Manager's Manual			LPD(8)

     lpd -- line printer spooler daemon

     lpd [-cdlpW46] [port#]

     Lpd is the	line printer daemon (spool area	handler) and is	normally in-
     voked at boot time	from the rc(8) file.  It makes a single	pass through
     the printcap(5) file to find out about the	existing printers and prints
     any files left after a crash.  It then uses the system calls listen(2)
     and accept(2) to receive requests to print	files in the queue, transfer
     files to the spooling area, display the queue, or remove jobs from	the
     queue.  In	each case, it forks a child to handle the request so the par-
     ent can continue to listen	for more requests.

     Available options:

     -c	     By	default, if some remote	host has a connection error while try-
	     ing to send a print request to lpd	on a local host, lpd will only
	     send error	message	to that	remote host.  The -c flag causes lpd
	     to	also log all of	those connection errors	via syslog(3).

     -d	     Turn on SO_DEBUG on the Internet listening	socket (see

     -l	     The -l flag causes	lpd to log valid requests received from	the
	     network.  This can	be useful for debugging	purposes.

     -p	     The -p flag causes	lpd not	to open	an Internet listening socket.
	     This means	that lpd will not accept any connections from any re-
	     mote hosts, although it will still	accept print requests from all
	     local users.

     -W	     By	default, the lpd daemon	will only accept connections which
	     originate from a reserved-port (<1024) on the remote host.	 The
	     -W	flag causes lpd	to accept connections coming from any port.
	     This is can be useful when	you want to accept print jobs from
	     certain implementations of	lpr written for	Windows.

     -4	     Inet only.

     -6	     Inet6 only.

     -46     Inet and inet6 (default).

     port#   The Internet port number used to rendezvous with other processes
	     is	normally obtained with getservbyname(3)	but can	be changed
	     with the port# argument.

     Access control is provided	by two means.  First, all requests must	come
     from one of the machines listed in	the file /etc/hosts.equiv or
     /etc/hosts.lpd.  Second, if the rs	capability is specified	in the
     printcap(5) entry for the printer being accessed, lpr requests will only
     be	honored	for those users	with accounts on the machine with the printer.

     The file minfree in each spool directory contains the number of disk
     blocks to leave free so that the line printer queue won't completely fill
     the disk.	The minfree file can be	edited with your favorite text editor.

     The daemon	begins processing files	after it has successfully set the lock
     for exclusive access (described a bit later), and scans the spool direc-
     tory for files beginning with cf.	Lines in each cf file specify files to
     be	printed	or non-printing	actions	to be performed.  Each such line be-
     gins with a key character to specify what to do with the remainder	of the

     J	     Job Name.	String to be used for the job name on the burst	page.

     C	     Classification.  String to	be used	for the	classification line on
	     the burst page.

     L	     Literal.  The line	contains identification	info from the password
	     file and causes the banner	page to	be printed.

     T	     Title.  String to be used as the title for	pr(1).

     H	     Host Name.	 Name of the machine where lpr was invoked.

     P	     Person.  Login name of the	person who invoked lpr.	 This is used
	     to	verify ownership by lprm.

     M	     Send mail to the specified	user when the current print job	com-

     f	     Formatted File.  Name of a	file to	print which is already format-

     l	     Like ``f''	but passes control characters and does not make	page

     p	     Name of a file to print using pr(1) as a filter.

     t	     Troff File.  The file contains troff(1) output (cat phototypeset-
	     ter commands).

     n	     Ditroff File.  The	file contains device independent troff output.

     r	     DVI File.	The file contains Tex l	output DVI format from Stand-

     g	     Graph File.  The file contains data produced by plot(3).

     c	     Cifplot File.  The	file contains data produced by cifplot.

     v	     The file contains a raster	image.

     r	     The file contains text data with FORTRAN carriage control charac-

     1	     Troff Font	R. Name	of the font file to use	instead	of the de-

     2	     Troff Font	I. Name	of the font file to use	instead	of the de-

     3	     Troff Font	B. Name	of the font file to use	instead	of the de-

     4	     Troff Font	S. Name	of the font file to use	instead	of the de-

     W	     Width.  Changes the page width (in	characters) used by pr(1) and
	     the text filters.

     I	     Indent.  The number of characters to indent the output by (in

     U	     Unlink.  Name of file to remove upon completion of	printing.

     N	     File name.	 The name of the file which is being printed, or a
	     blank for the standard input (when	lpr is invoked in a pipeline).

     Z	     Locale.  String to	be used	as the locale for pr(1).

     If	a file cannot be opened, a message will	be logged via syslog(3)	using
     the LOG_LPR facility.  Lpd	will try up to 20 times	to reopen a file it
     expects to	be there, after	which it will skip the file to be printed.

     Lpd uses flock(2) to provide exclusive access to the lock file and	to
     prevent multiple daemons from becoming active simultaneously.  If the
     daemon should be killed or	die unexpectedly, the lock file	need not be
     removed.  The lock	file is	kept in	a readable ASCII form and contains two
     lines.  The first is the process id of the	daemon and the second is the
     control file name of the current job being	printed.  The second line is
     updated to	reflect	the current status of lpd for the programs lpq(1) and

     /etc/printcap	   printer description file
     /var/spool/*	   spool directories
     /var/spool/*/minfree  minimum free	space to leave
     /dev/lp*		   line	printer	devices
     /var/run/printer	   socket for local requests
     /etc/hosts.equiv	   lists machine names allowed printer access
     /etc/hosts.lpd	   lists machine names allowed printer access, but not
			   under same administrative control.

     lpq(1), lpr(1), lprm(1), setsockopt(2), syslog(3),	hosts.lpd(5),
     printcap(5), lpc(8), pac(8)

     4.2 BSD Line Printer Spooler Manual.

     An	lpd daemon appeared in Version 6 AT&T UNIX.

BSD				 June 06, 2001				   BSD


Want to link to this manual page? Use this URL:

home | help