作者: CCID 摘要:本文说明了如何将Linux配置为一个FAX服务器 。 一. 介绍 下面介绍的配置采用了Hylafax 4.0p2.rjc11,其运行于Mandrake7.1之上。在服务器端,Hylafax由三个守护程序组成: faxq: 主要的服务程序 hfaxd: 管理网络连接 faxgetty:管理调制解调器间的会话 在客户端运行的程序如下(这些程序也可以在服务器上运行): sendfax:发送传真 faxstat:检查传真队列 faxrm:从队列中删除一项工作。 相关的配置文件在/var/spool/fax/etc/文件夹内。 二. 安装 我强烈建议你安装以下软件包(它们都包含在Mandrake 7.1中): Ghostscript FTP://ftp.cs.wisc.edu/pub/ghost/aladdin liBTiff ftp://rufus.w3.org/linux/redhat 也可以从官方网站http://www.hylafax.org/links.Html获取这些资源。安装Hylafax,需要安装下列RPM包: rpm -ivh hylafax-common-4.0pl2.rjc11-3mdk rpm -ivh hylafax-client-4.0pl2.rjc11-3mdk rpm -ivh hylafax-server-4.0pl2.rjc11-3mdk 三. 配置Hylafax 运行下列命令对服务器进行配置: faxsetup -server (必须以root身份进行该操作) 除了以下的几项外,对其它的询问选项都选取OK,即选取默认设值: · Country code [1]? enter 33 for France · Area code []? enter 1 for Paris · Long distance dialing prefix [1]? enter 0 · International dialing prefix [011]? enter 00 · Dial string rules file [etc/dialrules]? enter etc/dialrules.europe · Serial port that modem is connected to []? enter ttyS0 (for COM1) or ttyS1 (for COM2) Hylafax的默认设置在启动时并不自动的调用守护程序faxgetty,可以手工完成该过程。 1、 编辑/etc/inittab文件,在文件的最后插入下面的内容: mo:2345:respawn:/usr/sbin/faxgetty -D ttyS0 然后运行kill -HUP l 重启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的US Robotics 56K,因此我将usr-2.0文件复制到/var/spool/fax/etc中,改名为config.ttyS0,并做如下修改: # Configuration for using the Class 2.0 command interface # with a USR v.34 Courier or Sporster modem. # # CONFIG: CLASS2.0: USRobotics*-* # CountryCode: 33 AreaCode: 1 #FAXNumber: your number ex (for france): 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 %l dx_%s" #LocalIdentifier: "Your Company" (uncomment if wanted on the fax) #TagLineFont: etc/lutRS18.pcf (idem) #TagLineFormat: "De %%l%cPage %%p sur %%t" (idem) #MaxRecvPages: 25 ModemType: Class2.0 # use class 2.0 interface ModemRate: 57600 # 38400 DCE-DTE communication rate ModemFlowControl: rtscts # XON/XOFF flow control assumed ModemDialCmd: ATDT0%s # I added 0 because I go through a PABX !! #ModemNoFlowCmd: AT&H0&I0&R1 # setup modem for no flow control ModemHardFlowCmd: AT&H1&I0&R2 # setup modem for hardware flow control #ModemSoftFlowCmd: AT&H2&I2&R1 # setup modem for software flow control #ModemSetupDTRCmd: ATS13=1&D2 # setup so DTR drop resets modem #ModemSetupDCDCmd: AT&C1 # setup so DCD reflects carrier (or not) ModemResultCodesCmd: ATQ0X4 # enable extended result codes #ModemSetupAACmd: AT+FAA=1 #ModemSetVolumeCmd: "ATM0 ATM1 ATM1 ATM1 ATM1" Class2BUGCmd: AT+FBU=0 Class2CQQueryCmd: !(0),(0) # override modem response 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命令,Red Hat中运行setup命令,接着手工运行下面的命令: /etc/rc.d/init.d/hylafax start 如果进程列表(ps -e)中没有faxgetty,试试下面的命令: /usr/sbin/faxgetty -D /dev/ttyS0 五. 如何使用Hylafax 发送传真: sendfax -n -d number file1 file2 检查结果: faxstat -s (显示队列中等发送的传真) faxstat -d (显示已发送的传真) faxstat -r (显示接收的传真) 从队列中去除一个传真: faxrm number_of_job 清除缓冲池: faxqclean 显示统计结果: faxcron 六. 在网络中使用Hylafax 服务器的配置: 在http://www.hylafax.org/links.html上你可以找到很多关于Hylafax的链接,我选择在 http://www.boerde.de/~horstf下载Printfx和Repond 。 需要下载三个文件: printfax.pl(perl script) respond.zip(respond.exe的压强包) smb_conf.add(要添加到/etc/smb.conf的模块) 将printfax.pl复制到/usr/bin/目录下,并做如下修改: ### Format of commandline # $cmdlinefmt=mgetty; $cmdlinefmt=hylafax; ### The faxspoolprogram ### for mgetty+sendfax: # $faxspool = /usr/bin/faxspool; ### for hylafax: $faxspool = /usr/bin/sendfax; ### Additional faxspool args (e.g. header, coverpage) ### empty: @faxspool_args = qw(-n); ### for mgetty+sendfax with a special header: # @faxspool_args = qw( -h /usr/local/etc/mgetty+sendfax/faxheader.smb); ### for hylafax with send email when job is done or requeued and use ### a4 sized paper: # @faxspool_args = qw(-D -R -s a4); 注意:在修改前请检查printfax.pl的版本号,也许你下载的版本已经做了修改了。 在/etc/smb.conf中添加smb_conf.add模块: [Fax] comment = Fax Printer public = yes postscript = yes print command = ( /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/smb restart 客户端的配置: 下面是在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
[1] [2] 下一页
(出处:http://www.sheup.com)
上一页 [1] [2]