一个传真印表机伺服器是由很少的程式所设置的: efax,和列印伺服器,从电脑上用这样的方法送传真 如同列印到一台印表机上一样简单.
安装 efax 当作传真列印伺服器包涵很少的问题
当我做过数次之後,我决定收集知识
在小的 mini-HOWTO之中,有任何意见欢迎寄 <erez@newplaces.com>
.
我在里描述他们和解决方法,以及其他所有简单的步骤:
查明你有 efax 软体.
在 RPM 基础的系统下使用命令 'rpm -qv efax'.
你可以取得 efax 来源是 tar.gz 格式从 sunsite: ftp://sunsite.unc.edu/pub/Linux/apps/serialcomm/fax/efax08a.tar.gz 或者二进位元档的 rpm 套件: ftp://ftp.redhat.com/pub/redhat/redhat-4.2/i386/RedHat/RPMS/efax-0.8a-3.i386.rpm
efax 文件是遗失下列这个 :在 printcap 的栏位.
解决:增加下列各项 /etc/printcap
栏位:
fax:\
:lp=/dev/null:\
:sd=/var/spool/fax:\
:if=/usr/bin/faxlpr:
使用硬链接而不是符号链接到传真指令.
执行命令:
ln /usr/bin/fax /usr/bin/faxlpr
编辑 /usr/bin/fax 成你所要的参数:
对於你的数据机选择正确的传真种类:
CLASS=2.0
设置 FROM="your international phone number" 栏位
NAME="Your Name"
加上下列此行针对国际的电话号码本地的转换
例如在以色列你要使用:
TELCVT='sed -e s/+972/0/ -e s/+/00/' # israel (以色列)
文件中有个问题在 586 行,改变成
cfile=...
以下两行:
cfile=`/usr/bin/tail -1 lock`
cfile=`cat $cfile`
在 586,587 行中有个 '-'符号行数是:
0) echo "$l" | mail -s "fax to $num succeeded" $user@$host ;;
*) echo "$l" | mail -s "fax to $num failed " $user@$host ;;
建立目录 /var/spool/fax
mkdir /var/spool/fax
chmod 777 /var/spool/fax
锁定文件 (/var/spool/fax/lock
)是由
不正确的权限所建立,使用下列各项命令把它设定正确:
touch /var/spool/fax/lock ; chmod 644 /var/spool/fax/lock
efax 程式是预期有一个真的设备档案在 /dev/modem
和它将无法与符号链接一起运作,所以以和 /dev/cua?
相同的主要和附属号码建立一个设备档案
它连接到数据机.档案必需要有 rw-rw-rw- 模式使任何一个使用者都能够使用传真软体.
ls -lL /dev/modem
rm /dev/modem
mknod /dev/modem c Mj Mi
chomd 666 /dev/modem
Mj是 5,和 Mi是 64对於 cua0, 65对於 cua1等等. 例如 (对於 cua1):
mknod /dev/modem c 5 65
/var/lock
目录.改变 /var/lock
目录的属性
chmod 1777 /var/lock
你将使用传真印表机用 -P 选项 和 -J 选项跟著传真号码.
使用下列 lpr 命令其中之一:
lpr -Pfax -J <Fax-Number> [file-names]
any command | lpr -Pfax -J <Fax-Number>
在 -J 选项之後.
加入下列各行 /etc/printcap
到档案和客户端的
Linux 系统,建立 spool 目录,等等 ...
fax:\
:sd=/var/spool/fax:\
:mx#0:\
:sh:\
:rm=host.domain:\
:rp=fax:
在传真伺服器机器中加上客户端机器的名称 /etc/hosts.lpd
如同先前一样使用它.
注意:
efax 加到传真页面的封面字串,是没有效果 靠用户名字以致发送传真. (能够被更新的).
LPRng 列印管理软体是正在用一个不同的方法控制档案.
幸亏 Luca Montecchiani <m.luca@usa.net>,找到问题和解决方法.
这里有一个更新 /usr/bin/fax
文件.下列各行替换简单的两行 cfile=...行数在…行数 586,587
# Modified to work also with the LPRng package(修改 LPRng 套件)
# 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