A fax printer server is a setup of few programs:
efax, and the print server, in such a way that sending a fax from
the computer is as simple as sending printout to a printer.
Setting efax as fax print server includes few problems
As I worked it out few times, I decided to collect this wisdom
in this small mini-HOWTO, comments are welcome at <erez@newplaces.com>.
I describe them here and the solutions, and all the instruction in short steps:
The efax Software
make sure you have the efax package.
On RPM based system use the command 'rpm -qv efax'.
You can get the efax sources in tar.gz format from sunsite:
ftp://sunsite.unc.edu/pub/Linux/apps/serialcomm/fax/efax08a.tar.gz
or binary rpm package:
ftp://ftp.redhat.com/pub/redhat/redhat-4.2/i386/RedHat/RPMS/efax-0.8a-3.i386.rpm
The printcap entry.
The efax documentation is missing the : at the end of the printcap entry.
The efax program is expecting real device file at the /dev/modem
and will not work with symbolic link, so create a device file
with the same major and minor number as the /dev/cua? the is
connected to the modem. The file should have the rw-rw-rw- mode to enable
any user to use the fax software.
ls -lL /dev/modem
rm /dev/modem
mknod /dev/modem c Mj Mi
chmod 666 /dev/modem
Mj is 5, and Mi is 64 for the cua0, 65 for cua1 and so on.
For example (for cua1):
The LPRng printing management software is using a different method to handle the control file.
Thanks to Luca Montecchiani <m.luca@usa.net>, who found the problem and the solution.
Here is an update to the /usr/bin/fax file. The following line replace the two simple cfile=... lines at lines 586,587
# Modified to work also with the LPRng package
# Luca Montecchiani (08/11/97 m.luca@usa.net)
if [ !-z "$CONTROL_FILE" ]
then
cfile=`cat tail -1 lock`
cfile=`cat $cfile`
else
cfile=$CONTROL_FILE
fi