比思論壇

標題: 构建简单易用的FAX服务器 [打印本頁]

作者: farrt    時間: 2011-6-15 01:20
標題: 构建简单易用的FAX服务器
一.介绍下面介绍的配置采用了Hylafax4.0p2.rjc11,其运行于Mandrake7.1之上。在服务器端,Hylafax由三个守护程序组成:
faxq:主要的服务程序
hfaxd:管理网络连接
faxgetty:管理调制解调器间的会话
在客户端运行的程序如下(这些程序也可以在服务器上运行):
sendfax:发送传真
faxstat:检查传真队列
faxrm:从队列中删除一项工作。
相关的配置文件在/var/spool/fax/etc/文件夹内。
二.安装
我强烈建议你安装以下软件包(它们都包含在Mandrake7.1中):
ghostscriptftp://ftp.cs.wisc.edu/pub/ghost/aladdin
libtiffftp://rufus.w3.org/linux/redhat
也可以从官方网站http://www.hylafax.org/links.html获取这些资源。安装Hylafax,需要安装下列RPM包:
rpm-ivhhylafax-common-4.0pl2.rjc11-3mdk
rpm-ivhhylafax-client-4.0pl2.rjc11-3mdk
rpm-ivhhylafax-server-4.0pl2.rjc11-3mdk
三.配置Hylafax
运行下列命令对服务器进行配置:
faxsetup-server(必须以root身份进行该操作)
除了以下的几项外,对其它的询问选项都选取OK,即选取默认设值:
·Countrycode[1]?enter33forFrance
·Areacode[]?enter1forParis
·Longdistancedialingprefix[1]?enter0
·Internationaldialingprefix[011]?enter00
·Dialstringrulesfile[etc/dialrules]?enteretc/dialrules.europe
·Serialportthatmodemisconnectedto[]?enterttyS0(forCOM1)orttyS1(forCOM2)
Hylafax的默认设置在启动时并不自动的调用守护程序faxgetty,可以手工完成该过程。
1、编辑/etc/inittab文件,在文件的最后插入下面的内容:
mo:2345:respawn:/usr/sbin/faxgetty-DttyS0
然后运行kill-HUPl重启faxgetty。
或者对rc.local文件进行改动:
2、在/etc/rc.d/rc.local文件中加入下面几行:
/usr/sbin/faxgetty-D/dev/ttys0
并运行命令:faxgetty-D/dev/ttys0
注意:用faxaddmodem命令可以添加多个调制解调器。
完成这些处理后,就为faxgetty创建了文件/var/spool/fax/etc/config.ttyS0(串口1),其中包括了/dev/ttyS0调制解调器的配置。文件/usr/share/fax/hfaxd.conf包含了hfaxd守护程序的配置,我没有对其进行任何改动。

可能出现的问题:
用probemodem命令来探测调制解调器,另外在/var/spool/fax/config中有一些典型的配置


我的调制解调器是3Com的USRobotics56K,因此我将usr-2.0文件复制到/var/spool/fax/etc中,改名为config.ttyS0,并做如下修改:
#ConfigurationforusingtheClass2.0commandinterface
#withaUSRv.34CourierorSporstermodem.
#
#CONFIG:CLASS2.0:USRobotics*-*
#
CountryCode:33
AreaCode:1
#FAXNumber:yournumberex(forfrance):0134123412
LongDistancePrefix:0
InternationalPrefix:00
DiadStringRules:etc/dialrules.europe(Important.europe!)
ServerTracing:1
SessionTracing:11
RecvFileMode:0600
LogFileMode:0600
DeviceMode:0600
RingsBeforeAnswer:1
SpeakerVolume:off
GettyArgs:"-h%ldx_%s"
#LocalIdentifier:"YourCompany"(uncommentifwantedonthefax)
#TagLineFont:etc/lutRS18.pcf(idem)
#TagLineFormat:"De%%l|%c|Page%%psur%%t"(idem)
#MaxRecvPages:25
ModemType:Class2.0#useclass2.0interface
ModemRate:57600#38400DCE-DTEcommunicationrate
ModemFlowControl:rtscts#XON/XOFFflowcontrolassumed
ModemDialCmd:ATDT0%s#Iadded0becauseIgothroughaPABX!!
#ModemNoFlowCmd:AT&H0&I0&R1#setupmodemfornoflowcontrol
ModemHardFlowCmd:AT&H1&I0&R2#setupmodemforhardwareflowcontrol
#ModemSoftFlowCmd:AT&H2&I2&R1#setupmodemforsoftwareflowcontrol
#ModemSetupDTRCmd:ATS13=1&D2#setupsoDTRdropresetsmodem
#ModemSetupDCDCmd:AT&C1#setupsoDCDreflectscarrier(ornot)
ModemResultCodesCmd:ATQ0X4#enableextendedresultcodes
#ModemSetupAACmd:AT+FAA=1
#ModemSetVolumeCmd:"ATM0ATM1ATM1ATM1ATM1"
Class2BUGCmd:AT+FBU=0
Class2CQQueryCmd:!(0),(0)#overridemodemresponse
Class2NRCmd:AT+FNR=1,1,1,0
接下来在/var/spool/fax/etc/host中添加以下几行:
localhost
192.168.0.1
允许所有在域192.168.1.0中的机器使用传真。
四.启动Hylafax
若要在启动的时候自动的运行Hylafax,在Mandrake中运行drakxservices命令,RedHat中运行setup命令,接着手工运行下面的命令:
/etc/rc.d/init.d/hylafaxstart
如果进程列表(ps-e)中没有faxgetty,试试下面的命令:
/usr/sbin/faxgetty-D/dev/ttyS0
五.如何使用Hylafax
发送传真:
sendfax-n-dnumberfile1file2
检查结果:
faxstat-s(显示队列中等发送的传真)
faxstat-d(显示已发送的传真)
faxstat-r(显示接收的传真)
从队列中去除一个传真:
faxrmnumber_of_job
清除缓冲池:
faxqclean
显示统计结果:
faxcron

六.在网络中使用Hylafax
服务器的配置:
在http://www.hylafax.org/links.html上你可以找到很多关于Hylafax的链接,我选择在
http://www.boerde.de/~horstf下载Printfx和Repond


需要下载三个文件:
printfax.pl(perlscript)
respond.zip(respond.exe的压强包)
smb_conf.add(要添加到/etc/smb.conf的模块)
将printfax.pl复制到/usr/bin/目录下,并做如下修改:
###Formatofcommandline
#$cmdlinefmt=mgetty;
$cmdlinefmt=hylafax;
###Thefaxspoolprogram
###formgetty+sendfax:
#$faxspool=/usr/bin/faxspool;
###forhylafax:
$faxspool=/usr/bin/sendfax;
###Additionalfaxspoolargs(e.g.header,coverpage)
###empty:
@faxspool_args=qw(-n);
###formgetty+sendfaxwithaspecialheader:
#@faxspool_args=qw(-h/usr/local/etc/mgetty+sendfax/faxheader.smb);
###forhylafaxwithsendemailwhenjobisdoneorrequeuedanduse
###a4sizedpaper:
#@faxspool_args=qw(-D-R-sa4);
注意:在修改前请检查printfax.pl的版本号,也许你下载的版本已经做了修改了。
在/etc/smb.conf中添加smb_conf.add模块:
[Fax]comment=FaxPrinter
public=yes
postscript=yes
printcommand=(/usr/bin/printfax.pl%I%s%U%m;rm%s)&
printable=yes
writable=no
path=/var/spool/samba
检查print命令,特别是windows2000下的打印命令。
重启Samba。/etc/rc.d/init.d/smbrestart
客户端的配置:
下面是在WINDOWS95/98/NT/2000下典型的客户端配置。安装Respond.zip,其中包括config.exe和respond.exe:
1、将这两个文件复制到widows目录下,如c:windows
2、在START->PROGRAMS->Start下做一个respond.exe的链接(如何在win2000下做快捷链接,请查找win2000的帮助)。
3、运行respond.exe或者重启计算机。
接着必须创建网络打印机:
1、点击START->printers->add
2、选择网络打印机
3、点击"browse"选择网络上的FA        


作者: bybds    時間: 2011-7-1 17:58

作者: eli9521    時間: 2013-10-10 07:21
。。表示看不懂啊·
作者: 1390717683    時間: 2013-10-16 15:04
这个 等下又什么用的???





歡迎光臨 比思論壇 (http://108.170.5.98:8080/) Powered by Discuz! X2.5