автор HackLinux Об авторе: Прошло много времени с тех пор как я использовал Windows и вроде все нормально... Содержание: |
Резюме:
Заметка рассказывает о превращении компьютера, работающего под ОС Linux в факс - сервер!
Составляющие факс - сервера, использующего Hylafax 4.0pl2.rjc11 и дистрибутив Mandrake 7.1
Серверная часть :
Клиентская часть (можно использовать и на сервере) :
Конфигурационные файлы в каталоге /var/spool/fax/etc/
.Рекомендую установить следующие пакеты (входят в состав with Mandrake 7.1) :
Кроме того, данные пакеты доступны на официальном сайте 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
Для настройки сервера выполните следующую команду :
faxsetup -server (с привилегией root)
Выбирайте ответы по умолчанию на все вопросы, кроме :
Country code [1]? введите 33 для Франции
Area code []? введите 1 для Парижа
Long distance dialing prefix [1]? введите 0
International dialing prefix [011]? введите 00
Dial string rules file [etc/dialrules]? введите etc/dialrules.europe
Serial port that modem is connected to []? введите ttyS0 (для COM1)
или ttyS1 (для COM2)
Hylafax по умолчанию не запускает демона faxgetty. Поэтому выполняем следующие действия :
1 - Редактируем файл /etc/inittab - добавляем следующую строку в конец :
mo:2345:respawn:/usr/sbin/faxgetty -D ttyS0
Команда kill -HUP 1 необходима для перезапуска 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
(для com1), в котором находятся настройки для вашего модема, подключаемого к
/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|%c|Page %%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.1
Теперь все компьютеры домена 192.168.1.0 могут использовать факс!
/etc/rc.d/init.d/hylafax start
Если faxgetty нет в списке процессов (ps -e), выполните
/usr/sbin/faxgetty -D /dev/ttyS0
sendfax -n -d number file1 file2 ..
Проверяем результаты :
faxstat -s (shows fax in the queue waiting to be sent)
faxstat -d (shows faxes sent)
faxstat -r (shows faxes received)
Удаляем факс из очереди :
faxrm number_of_job
Очистить spool :
faxqclean
Статистика :
faxcron
Для сетевого использования я применил ресурсы с
http://www.hylafax.org/links.html
В частности Printfax и Repond, с сайта
http://www.boerde.de/~horstf/:
Загрузите следующие три файла :
Скопируйте файл printfax.pl в /usr/bin/ и отредактируйте для использования с hylafax :
### 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, возможно у вас уже модифицированный вариант!
Добавьте модуль smb_conf.add в /etc/smb.conf :
[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 command специально для windows2000
И перезапустите Samba,
/etc/rc.d/init.d/smb restart
Рассмотрим стандартную настройку для WINDOWS 95,98,NT,2000...
Затем необходимо создать сетевой принтер:
Ну вот мы и на финишной прямой - открываем Wordpad, что-нибудь там набираем и распечатываем на факс - принтере! Далее должно появиться окно программы respond.exe (конечно если вы ее запустили) с просьбой о вводе номера факса. Просто наберите номер и ваш факс отправляется на факс - сервер hylafax
Для проверки используйте команду faxstat -s на сервере - там вы должны увидеть свой факс.
Стандартная настройка клиента для Linux :
Используйте утилиты с сайта Hylafax!
Обмен сообщениями через fax осуществляется локально на сервере с помощью
StarOffice.
С другой стороны ваша база данных может быть где угодно в сети, доступ к
которой можно осуществлять через StarOffice(ODBC,JDBC,...) Используйте
утилиту spadmin и настройте вывод telefax : faxspool (PHONE) (TMP)
В документе, подготовленном для отправки в поле @@#num_tel_fax@@ замените num_tel_fax на поле из базы данных
Читайте StarOffice help, там все объясняется!
Недостаток этого метода в том, что вам придется установить StarOffice на
факс - сервере :-( Использование программы respond в сочетании с StarOffice
в сети для обмена сообщениями не представляется возможным, потому что
необходимо набирать номер факса для каждого получателя!
В настоящее время я пытаюсь найти альтернативное решение.
http://www-phase.c-strasbourg.fr/inform/faxdoc/expose_fax/fonctionnement.html
http://www.hylafax.org
Если вам кажется, что документ не полный или содержит ошибки, пишите на адрес [email protected]. Если у вас есть немного свободного времени - подпишите no patents request!
|
Webpages maintained by the LinuxFocus Editor team
© HackLinux, FDL LinuxFocus.org Click here to report a fault or send a comment to LinuxFocus |
Translation information:
|
2001-03-03, generated by lfparser version 2.8