Om een werkende printer/fax op je linux machine te krijgen, zal je wat software en een fax-modem nodig hebben.
De afdruksoftware zal de faxsoftware als een afdrukfilter gebruiken.
Efax zal het faxnummer opzoeken vanuit het Afdruk Job nummer en zal de fax versturen. De efax software werd geschreven door Ed Casas <edc@cce.com>.
De rest van het document is opgebouwd in de vorm V&A.
Een fax printer server is de instelling van een paar programma's: efax en de printserver, op een zodanige manier dat het zenden van een fax vanaf de computer net zo eenvoudig is als het verzenden van een afdruk naar de printer.
Het instellen van efax als fax print server geeft een paar problemen.
Aangezien ik ze een paar keer uitwerkte, besloot ik deze wijsheid in deze kleine
mini-HOWTO te verzamelen, opmerkingen zijn welkom via
<erez@newplaces.com>
.
Ik beschrijf ze hier in korte stappen met de oplossingen en instructies:
zorg ervoor dat je het efax package hebt.
Gebruik het commando `rpm -qv efax' op een op RPM gebaseerd systeem.
Je kunt de efax sources in tar.gz formaat vanaf sunsite verkrijgen: ftp://sunsite.unc.edu/pub/Linux/apps/serialcomm/fax/efax08a.tar.gz of het binaire rpm package: ftp://ftp.redhat.com/pub/redhat/redhat-4.2/i386/RedHat/RPMS/efax-0.8a-3.i386.rpm
In de efax documentatie ontbreekt de : aan het einde van de printcap invoer.
Oplossing: Voeg de volgende /etc/printcap
gegevens toe:
fax:\
:lp=/dev/null:\
:sd=/var/spool/fax:\
:if=/usr/bin/faxlpr:
Gebruik een hardlink en geen symbolische link naar het faxcommando
Start het commando:
ln /usr/bin/fax /usr/bin/faxlpr
Wijzig het /usr/bin/fax naar je voorkeuren:
kies de juiste Fax Class voor je modem uit:
CLASS=2.0
Stel het FROM="je internationale telefoonnummer" veld in
NAME="Je naam"
Voeg de regel voor conversie van internationale naar lokale telefoonnummers toe. In Israel zou je bijvoorbeeld gebruiken:
TELCVT='sed -e s/+972/0/ -e s/+/00/' # Israel
Er is een probleem in het bestand op regel 586, wijzig de
cfile=...
door de volgende twee regels:
cfile=`/usr/bin/tail -1 lock`
cfile=`cat $cfile`
in de regels 586,587 zouden geen '-' tekens moeten staan, de regels zijn:
0) echo "$l" | mail -s "fax to $num succeeded" $user@$host ;;
*) echo "$l" | mail -s "fax to $num failed " $user@$host ;;
maak de directory /var/spool/fax aan
mkdir /var/spool/fax
chmod 777 /var/spool/fax
Het lock bestand (/var/spool/fax/lock
) wordt met onjuiste
permissies aangemaakt, gebruik het volgende commando om het correct in
te stellen:
touch /var/spool/fax/lock ; chmod 644 /var/spool/fax/lock
Het efax programma verwacht een echt device bestand op /dev/modem
en zal met een symbolische link niet werken, dus maak een device bestand aan
met hetzelfde major en minor nummer als de
/dev/cua?
die met het modem is verbonden.
Het bestand zou de rw-rw-rw- mode moeten hebben zodat iedere gebruiker
de fax software kan gebruiken.
ls -lL /dev/modem
rm /dev/modem
mknod /dev/modem c Mj Mi
chmod 666 /dev/modem
Mj is 5, en Mi is 64 voor de cua0, 65 voor cua1 enzovoort. Bijvoorbeeld (voor cua1):
mknod /dev/modem c 5 65
/var/lock
wijzig de mode van de directory /var/lock
chmod 1777 /var/lock
Je zou de faxprinter met de -P optie moeten gebruiken en de -J optie met het faxnummer.
gebruik één van de volgende lpr commando's:
lpr -Pfax -J <Fax-Number> [file-names]
om 't even wat voor commando | lpr -Pfax -J <Fax-Number>
Na de -J optie.
Voeg de volgende gegevens toe aan het bestand /etc/printcap
en
de client Linux systemen, maak de spooldirectory aan, enzovoort ...
fax:\
:sd=/var/spool/fax:\
:mx#0:\
:sh:\
:rm=host.domain:\
:rp=fax:
voeg de naam van de client hosts toe aan het /etc/hosts.lpd
op de
fax-server computer.
gebruik het als voorheen.
Opmerking:
De koptekst die efax aan de fax-pagina's toevoegt, wordt niet beïnvloedt door de naam van de gebruiker die de fax verzendt. (kan worden bijgewerkt).
De LPRng afdrukbeheersoftware gebruikt een andere methode om het controle bestand af te handelen.
Met dank aan Luca Montecchiani <m.luca@usa.net>, die het probleem
en de oplossing vond.
Hier is een update van het /usr/bin/fax
bestand. De volgende regel
vervangt de twee eenvoudige cfile=... regels op de regels 586,587
# Gewijzigd zodat het ook met het LPRng package werkt
# 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
De laatste versie van dit bestand kan worden benaderd via het world wide web via de URL's
http://www.newplaces.com/linux/faxsrv/faxsrv-mini-HOWTO.sgml
http://www.newplaces.com/linux/faxsrv/faxsrv-mini-HOWTO.html
http://www.newplaces.com/linux/faxsrv/faxsrv-mini-HOWTO.txt
http://www.newplaces.com/linux/faxsrv/faxsrv-mini-HOWTO.info
Je kunt contact met me opnemen
Erez Strauss
erez@newplaces.com
http://www.newplaces.com/linux/
http://www.newplaces.com/
Phone: +972 52 739737
Fax: +972 9 954 3034