| Главная > Операционные системы > Linux > |
| Настройка факс сервера под Linux (hylafax). Часть 1 |
Настройка факс сервера под Linux (hylafax)ВведениеИтак. Возникла острая необходимость инсталляции чего-то, что позволяло бы получать факс на компьютер и отправлять его на определенный адрес электронной почты. Имелось задание, имелось уже около 17.00 времени, имелся компьютер и больше ничего. А нужно было иметь возможность получать факсы сразу по нескольким линиям. Больше двух. Откопали несколько модемов Courier внешних. И, о чудо! Мультикарту от Cronyx. Старая такая, ISA еще, но восьмипортовая, что делало задачу исполнимой. Т.к. к ней можно было подсоединить оставшиеся модемы. Итак. Компьютер, с одним ISA слотом, внутри него стоит мультикарта CRONYX. К двум стандартным COM портам я подсоединил два курьера и к двум выходам карточки я подсоединил оставшиеся два модема. Осталось все это настроить. В моей сумке на тот момент из дистрибутивов был только SuSE Linux 7.2 и я решил сделать все на нем. Тем более что дистрибутивы от SuSE мои самые любимые. Не знаю почему, но так уж повелось. Инсталляция прошла "на ура", впрочем, как и всегда и дистрибутив встал. Только зачем-то я проинсталлировал и KDE, в качестве основного языка выбрал русский и при загрузке у меня начала грузится графическая оболочка еще. KDE был в крокозябрах... Вернее в вопросиках. Не порядок, подумал я, хотя для факс сервера мне нафиг не нужен был KDE, а в консоли все было в порядке, хоть и по-русски. А по-русски я проинсталлировал все потому, что у меня возник очередной оппонент в асе, который говорил, что русский даже в последних версиях Linux настроить очень сложно. В консоли было все хорошо, а вот в X-ах - плохо - вместо русских букв одни вопросики :-( Ну ничего. По пиктограммам я нашел панель управления KDE, зашел туда, открыл опцию работы с языками и увидел, что у меня основной язык русский, а вот почему-то кодировка стоит ISO8859-1, что никаким боком не относится к русскому языку. Ну я быстро выбрал из списка koi8-r, и перегрузил KDE. После чего все стало на свои места - т.е. начало работать по-русски. Так что вот. Глюк, конечно, но он очень быстро устранился и при этом без всяких проблем и вопросов. Ладно. X-ы мне нафиг не нужны, а он при загрузки грузит их. Ну это стандартная проблема. Я быстро пошел в /etc/inittab и в самом его начале увидел такую строчку: #default runlevel id:5:initdefault: Непорядок. В этой строчке должна быть цифра три, и тогда будет грузится консоль. Итак, я заменил эту строчку на: #default runlevel id:3:initdefault: и сохранил изменения. После этого при перезагрузке я стал попадать сразу в консоль, что мне, в общем-то было и нужно. А если вдруг бы мне захотелось обратно загрузить X-ы, то из консоли достаточно набрать startx и все... Ну это мы отвлеклись от темы. Итак. Этап первый. Настройка мультикартыНу это довольно просто. С учетом того, что я ее много раз настраивал. Карточка обычная, не PNP. Стояло она на пятом прерывании. В общем, я полез в /etc/init.d/serial и в этом файле дописал: run_statserial -b /dev/ttyS2 uart 16550A port 0x200 irq 5 ^fourport
Итак, все 8-мь портов карты прописаны. Начал я с ttyS2, т.к. порты ttyS0 и ttyS1 заняты уже стандартными COM портами компьютера. Итого, вместе с ними, у меня получилось 10-ть портов. Не плохо так :-) Да! Если бы у нас была PnP карточка, то тогда нам бы пришлось писать строчки типа: run_statserial /dev/ttyS2 $(AUTO_IRQ) autoconfig
Хотя у каждого производителя многопортовых карточек могут быть свои специфические параметры. Хоть это и редко встречается. Мне, как видите, пришлось указывать еще и параметры ввода/вывода. Благо, какие для каждого порта надо выставлять было написано в инструкции... Которая не выбросилась за ненадобностью... Итак. Если бы мы перегрузили систему, то мы бы увидели, что система нашла нашу мультикарту и работает с ней так же, как и с внутренними портами компьютера. Можно перегрузить комп, посмотреть на строчки в которых система пишет, что все пучком и новые порты работают, подсоединить к новому порту внешний модем и убедиться (например при помощи Minicom-а), что все работает нормально и происходит обмен данными с модемом (minicom -s, потом в параметрах serial порта убираем /dev/modem и прописываем путь к порту напрямую, к примеру /dev/ttyS2). Итак. С мультикартой закончили. Переходим теперь к собственной настройке программы hylafax. Инсталляция HylafaxНу, в общем, данная программа входит в состав всех последних дистрибутивов, которые я встречал. Может она входит и в состав всех старых дистрибутивов, которые я тоже встречал, но т.к. в тот момент мне не надо было настраивать fax сервер, я не обращал внимания на эту программу. Так что просто при инсталляции выбирайте этот пакет и данный раздел можно будет Вам не читать. Ну а у тех, кого данного пакета нет или он хочет собрать его их исходников, то вот Вам: Сайт программы. На нем находится почти все, что Вам нужно для настройки fax сервера во всех его проявлениях. Только потрудиться немного придется... Ну или почитать данную статью :-) но вернемся к "нашим баранам", т.е. инсталляции программы. Все исходники, бинарники и т.д. лежать на FTP сайте проекта - ftp://ftp.hylafax.org/, а конкретно - исходники лежат здесь, а бинарники - здесь. Как инсталлировать программу из rpm, а надеюсь объяснять не надо, а как инсталлировать из исходников в принципе написано здесь. Ну а в кратце, разархивируете куда-нибудь скаченные исходники (к примеру командой 'tar xzvf hylafax-version.tar.gz'), и потом даете команды: ./configure (use all of the defaults) В принципе все. У Вас, конечно, может оно и не встать, по причине того, что в системе не стоят такие вещи, как libtiff - можно взять отсюда http://www.libtiff.org
Хотя, я повторяю, можно не заморачиваться - все это обычно уже есть
в существующих дистрибутивах. Конфигурирование hylafaxПричем конфигурирование на основе системы SuSE 7.2.
mo1:35:respawn:/usr/lib/fax/faxgetty /dev/ttyS0
Я вставил эти строчки после строки: #fax getty (hylafax) Все. После этого система ждет входящих звонков и при звонке принимает факсы и складывает их в /var/spool/fax/recvq Файлы она хранит в виде tiff. ДА! Забыл. Был у меня еще один глюк. Faxgetty хотела почему-то конфиги все в /var/spool/fax/bin/etc/ Т.к. было уже очень поздно, я не стал особо вникать, чего это она вдруг, а просто скопировал /var/spool/fax/etc в /var/spool/fax/bin. После этого у меня просить перестали, а начали работать. Все классно, Факсы принимаются, процесс, так сказать, идет. Но передо мной стояла еще одна задача - полученные факсы отправлять по определенному адресу электронной почты. Итак настройка системы отправки полученных факсов на электронную почтуВообще, как оказалось, это делается довольно просто. Что делать с полученными факсами отвечает скрипт faxrcvd, который располагается в /var/spool/fax/bin. Для организации отправки факсов, я переписал существующий скрипт (стандартный скрипт только отправляет уведомление факсмастеру о том, что пришел новый факс) другим - вот этим, и добавил к нему скрипт, который собственно кодирует tiff и отправляет его на e-mail. Просто записывайте эти скрипты в /var/spool/fax/bin/, расставляйте permissions 755 и владельца/группу root/root. И все. После этого при получении факса они будут сохраняться в /var/spool/fax/recvq и отправляться по адресу FaxMaster. Этого факсмастера надо в скрипте заменить на нормальный адрес электронной почты. К примеру - victor@linux.ru :-) И, собственно говоря, все. Ежели Вы не ходите, чтобы у Вас в спуле сохранялись полученные факсы - в скрипте faxrcvd раскомментируйте строчки if faxrcvd-mail "$FILE" "$DEVICE" "$COMMID" "$MSG" "$TOADDR" fax | \
И все. Входящие факсы НЕ будут сохраняться. Скрипт faxrcvd можно модифицировать по своему вкусу. К примеру, так, чтобы отправлялся не на один адрес, а на два и т.д. и т.п. Итак. Я рассказал в этой части статьи о том, как настроить факс сервер с отправкой полученных факсов на один адрес электронной почты. Во второй части статьи я расскажу о том, как организовать отправку факсов через этот факс сервер и как можно работать с факс сервером через клиентское ПО, в т.ч. и при помощи Windows клиентов. Все замечания, комментарии, пожелания и ругань, просьба отправлять мне. Федосеев Виктор (Firebird). victor@linux.ru, 2001
|
Главная Алфавитный индекс Справка Добавить FAQ E-mail |
Новости Поиск по сайту |
© УкрFAQ 2011 |