作者
目的
我打算建一個fax服務器
Efax和fax其實是一回事
文件配置
有兩個文件你需要配置
復制/usr/bin/fax到/usr/bin/fax_custom
FAXDIR=/var/spool/fax/incoming
NAME=
FROM=
ANSFNAME=
在/etc/inittab中
S
Efax和fax
如果你知道有人要給你發傳真
efax
或者
fax answer
如果你不想fax掛在後台等待下個傳真連接
Efax 和 fax
如果你象我在
如果你執行下面的命令
ps auxw | grep efax
你會看到efax在後台運行
root
非常好的是,如果你殺死進程1689,它會自動在後台再次運行,我相信,會 重新讀取/usr/bin/fax_custom文件。tW.WIngwIT.COM於是,如果你對這個文件進行了修改的話, 只要 在你為了測試配置試圖發送傳真之前殺死efax進程就可以了。
收到傳真以後怎麼辦?
運行一個cron的任務(job),用來將/var/spool/fax/incoming裡的文件分類,為每組 傳真創建一個lock文件,然後或者將它們轉換成pdf格式以便網上浏覽,或者直接將它們 打印出來。
如果你想把傳真打印出來,操作如下:
efix -ops fax_20020606_014847.001 | lpr
建議你打印文件後將它保存在一個備份的目錄裡。
發送傳真
安裝打印服務比我原先想的要麻煩。首先,按照幫助說的做(有一點變動):
ln /usr/bin/fax /usr/bin/faxlpr
在 /etc/printcap.local 文件中,
fax:lp=/dev/null:sd=/var/spool/fax:if=/usr/bin/faxlpr_perl:
mkdir /var/spool/lpd/fax
touch /var/spool/lpd/fax/lock
/etc/rc.d/init.d/lpd restart
我還做了些變動:
在 /usr/bin/faxlpr中, 我修改
l=`$FAX send "$num" fax$$`
為
`gs -q -sDEVICE=tiffg3 -dNOPAUSE -sOutputFile=fax_out fax$$
還修改了以下三行:
num=` echo "$cfile" | sed -e /^[^J]/d -e s/..//`
host=`echo "$cfile" | sed -e /^[^H]/d -e s/..//`
user=`echo "$cfile" | sed -e /^[^P]/d -e s/..//`
我保存了如下的一個/usr/bin/faxlpr_perl腳本,並chmod
755 /usr/bin/faxlpr_perl:
#!/usr/bin/perl
my $String = "";
foreach my $Arg (@ARGV)
{
if ($Arg =~ /-j/)
{
my $Copy = $Arg;
$Copy =~ s/-j//;
open(FILE,">lock
}
}
my $Command =
system ($Command
我很討厭這一步
控制打印工作的lpr用戶可以使用modem
那個perl腳本使faxlpr可以找到進程號
我相信我的發送傳真的方法會破壞lock文件
經過這些痛苦之後
你也可以只使用efax命令發送傳真
結論
如果有機會的話
使用samba和mgetty發送傳真
我還想看看是否可以使用mgetty做語音和登錄(login sessions)方面的事情
Efax是我在解決mgetty的問題(我試過
參考
The Easy Fax Server!
A Linux Fax Server for a Windows Network
Linux Fax for Dummies
Hylafax
Article Version
From:http://tw.wingwit.com/Article/program/Oracle/201311/16781.html