It seems hard to believe, but fax-machines have been around for over a century, and the current digital fax technology stems from the 1980s. Back in the days, for most people faxing a document was the only fast alternative to sending it by normal (as in non-electronic) mail. These days, as multi-function printers and copiers with scanning-capability are becoming more widespread, fax-machines are slowly obsoleted by the ability to easily scan documents as PDF and send them over e-mail. Nonetheless, every now and then someone asks me if I can send or receive something by fax. Now although I admit I'm a collector of ancient equipment, a fax-machine is not something I have standing around. Older laptops may still have a built-in fax-modem, and some modern DSL-modems such as the Fritz!Box actually have a software-fax built-in, which can be quite useful. But what do you do if you don't have either?
A cheap and easy alternative is to get hold of an old external fax-modem (these should be easy to find second-hand, probably even for free). You'll also need a serial RS232 interface and cable. Although most modern motherboards lack an RS232 port to save space, many do still carry the serial communications hardware and will have a RS232-connector header on the motherboard. Most people will simply get a USB-to-serial adapter though, which are inexpensive ($10-20) and luckily tend to use standard chips (e.g. Prolific PL2303) that work out of the box with Linux.
The third ingredient you'll need is a fax-programme. Of course you can rig up a full hylafax-server, but for the odd fax you'll be much easier of installing efax and efax-gtk from the efax-gtk package.
In the settings-dialog of efax-gtk you'll need to set up the serial
device your modem is connected to (in the Modem tab, use
ttyS0 for the
first on-board serial port or
ttyUSB0 for the first USB serial port).
For sending faxes, you can also set up a printer if you like. Just use
the standard Gnome/CUPS printer-installation dialog to add a network
printer of type "AppSocket / Jet Direct", set host to "localhost" and
port-number to "9900", and select a Generic PostScript printer when
asked for a driver. This is not really needed though, as you can also
use the user-interface to select PostScript and PDF files to send as
Once set up, the rest is ridiculously easy. The efax-gtk programme can
be minimised to Gnome's equivalent of the system-tray (the notification
area). You can either receive faxes manually (use the "Answer call"
button) or automatically (use the "Standby" button). Incoming faxes will
be saved to the
~/faxin/ directory. You can manage, view and print
these from within in efax-gtk (File>List received faxes). Using the
PDF-printer it should be easy to save incoming faxes as PDF, although I
haven't tried this yet.
For more information, use the excellent built-in Help function or read the online documentation. Happy faxing!