Linux simple fax printer server mini-HOWTO (faxsrv-mini-HOWTO)

Erez Strauss

     [email protected]
   

Перевод: Павел Гашев, SWSoft Pte Ltd.

версия 1.0, 8 ноября 1997 года

Этот документ в деталях описывает быстрый способ установки факс-сервера в системе Linux. Возможности факса становятся доступны для пользователей сервера и сети.


1. Введение

Для того чтобы, установить принтер/факс на Linux, необходимо определенное программное обеспечение и факс-модем.

Программное обеспечение для печати использует факсимильное программное обеспечение в качестве фильтра печати. Номер факса для программы efax (автор Ed Casas <[email protected]>) передается через номер задачи в печать.

Остальная часть документа построена в виде вопросов и ответов на них.


2. Вопросы и Ответы

2.1. Что такое "сервер факсовой печати"?

Сервер факсовой печати - это набор нескольких программ: efax и сервер печати, объединенные таким образом, что посылка факса с компьютера превращается в посылку распечатки на принтер.


2.2. Как его установить?

Установка efax в качестве сервера факсовой печати включает в себя несколько задач. Я решал их несколько раз и собрал весь опыт в этом mini-HOWTO, так что комментарии только приветствуются (<[email protected]>). Я описываю здесь задачи и их решения. Вот все инструкции в двух словах:


2.2.1. Программа efax

Проверьте, что у вас установлен пакет efax.

На системах, основанных на RPM, это будет команда 'rpm -qv efax'.

Вы можете взять исходные тексты efax с серверов sunsite и redhat: ftp://sunsite.unc.edu/pub/Linux/apps/serialcomm/fax/efax08a.tar.gz или пакет rpm: ftp://ftp.redhat.com/pub/redhat/redhat-4.2/i386/RedHat/RPMS/efax-0.8a-3.i386.rpm


2.2.2. Запись в printcap

В документации efax отсутствует двоеточие в конце записи printcap.

Решение: Добавьте следующую запись в /etc/printcap:

fax:\
        :lp=/dev/null:\
        :sd=/var/spool/fax:\
        :if=/usr/bin/faxlpr:


2.2.3. Команда fax

Используйте жесткую (hard link), а не символьную ссылку (symbolic) на команду fax.

Запустите команду:

ln /usr/bin/fax /usr/bin/faxlpr


2.2.4. Файл /usr/bin/fax

Отредактируйте /usr/bin/fax, согласно вашим предпочтениям:

выберите правильный Класс факса для вашего модема:

CLASS=2.0
Установите поле FROM="ваш международный телефонный номер"
NAME="Ваше имя"
Добавьте строку, конвертирующую международный телефонный номер в локальный. Для Израиля это будет:
TELCVT='sed -e s/+972/0/ -e s/+/00/'  # Израиль

Исправьте ошибку в строке 586, смените cfile=... на две следующие строки:

cfile=`/usr/bin/tail -1 lock`
cfile=`cat $cfile`

Не должно быть знаков '-':

0) echo "$l" | mail -s "факс на $num послан" $user@$host ;;
*) echo "$l" | mail -s "факс на $num не прошел" $user@$host ;;


2.2.5. Каталог /var/spool/fax

Создайте каталог /var/spool/fax

mkdir /var/spool/fax
chmod 777 /var/spool/fax


2.2.6. lock-файл

lock-файл (/var/spool/fax/lock) создается с неправильными правами. Исправьте это:

touch /var/spool/fax/lock ; chmod 644 /var/spool/fax/lock


2.2.7. Файл /dev/modem

Программа efax работает с файлом /dev/modem, но не работает с символьной ссылкой, так что вам придется создать файл устройства с тем же главным (major) и дополнительным (minor) номером, как и /dev/cua?, к которому подключен модем. Чтобы разрешить доступ к факс-модему всем пользователям, файл должен иметь права доступа rw-rw-rw-.

ls -lL /dev/modem
rm /dev/modem
mknod /dev/modem c Mj Mi
chmod 666 /dev/modem

Mj = 5, а Mi = 64 для cua0, 65 для cua1 и т.д. Например (для cua1):

mknod /dev/modem c 5 65


2.2.8. Каталог /var/lock.

Смените права доступа к каталогу /var/lock

chmod 1777 /var/lock


2.3. Как послать факс с сервера?

Вам нужно указать опции -Pfax и -J<номер факса>

Используйте одну из команд:

lpr -Pfax -J <номер факса> [имена файлов]
любая команда | lpr -Pfax -J<номер факса>


2.5. Как мне послать факс с другого Unix в сети?

Добавьте следующую запись в файл /etc/printcap

fax:\
        :sd=/var/spool/fax:\
        :mx#0:\
        :sh:\
        :rm=машина.домен:\
        :rp=fax:

создайте каталог /var/spool/fax и добавьте имя клиента в файл /etc/hosts.lpd на сервере.

Посылка факса осуществляется так же, как и выше.

Примечание:

Заголовок, который добавляется к страницам факса программой efax, не содержит имя пользователя, посылающего факс, впрочем это можно исправить.


2.6. Пользователям Caldera и LPRng

LPRng - это программное обеспечение, управляющее печатью, но использующее другой способ поддержки управляющего файла.

Luca Montecchiani <[email protected]> обнаружил и исправил эту проблему. В файле /usr/bin/fax нужно изменить две строки cfile=... (с номерами 586,587)

# Исправлено для работы с пакетом LPRng
# Luca Montecchiani (08/11/97 [email protected])
if [ !-z "$CONTROL_FILE" ]
    then
        cfile=`cat tail -1 lock`
        cfile=`cat $cfile`
    else
        cfile=$CONTROL_FILE
fi


3. Последняя версия и как связаться с автором

Последняя версия этого файла находится по адресам:

http://www.newplaces.com/linux/faxsrv/faxsrv-mini-HOWTO.sgml
http://www.newplaces.com/linux/faxsrv/faxsrv-mini-HOWTO.html
http://www.newplaces.com/linux/faxsrv/faxsrv-mini-HOWTO.txt
http://www.newplaces.com/linux/faxsrv/faxsrv-mini-HOWTO.info

Вы можете связаться со мной:

Erez Strauss
[email protected]
http://www.newplaces.com/linux/
http://www.newplaces.com/
Phone: +972 52 739737
Fax:  +972 9 954 3034


4. Авторские права

Авторские права на русский перевод этого текста принадлежат © 2000 SWSoft Pte Ltd. Все права зарезервированы.

Этот документ является частью проекта Linux HOWTO.

Авторские права на документы Linux HOWTO принадлежат их авторам, если явно не указано иное. Документы Linux HOWTO, а также их переводы, могут быть воспроизведены и распространены полностью или частично на любом носителе физическом или электронном, при условии сохранения этой заметки об авторских правах на всех копиях. Коммерческое распространение разрешается и поощряется; но так или иначе автор текста и автор перевода желали бы знать о таких дистрибутивах.

Все переводы и производные работы, выполненные по документам Linux HOWTO должны сопровождаться этой заметкой об авторских правах. Это делается в целях предотвращения случаев наложения дополнительных ограничений на распространение документов HOWTO. Исключения могут составить случаи получения специального разрешения у координатора Linux HOWTO с которым можно связаться по адресу приведенному ниже.

Мы бы хотели распространить эту информацию по всем возможным каналам. Но при этом сохранить авторские права и быть уведомленными о всех планах распространения HOWTO. Если у вас возникли вопросы, пожалуйста, обратитесь к координатору проекта Linux HOWTO по электронной почте: , или к координатору русского перевода Linux HOWTO компании SWSoft Pte Ltd. по адресу