On-Line Библиотека www.XServer.ru - учебники, книги, статьи, документация, нормативная литература.
       Главная         В избранное         Контакты        Карта сайта   
    Навигация XServer.ru








 

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

2.1 Что такое факс-сервер печати?

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

2.2 Как все это настроить?

При настройке efax в качестве факс-сервера печати можно наткнуться на несколько проблем. Так как я работал с ним некоторое время, я решил собрать их решения в mini-HOWTO, комментарии приветствуются по адресу (erez@newplaces.com). Я привел здесь и проблемы и их решения, и все инструкции рахбил по коротким шагам :

ПО efax

Убедитесь, что у вас есть пакет efax.

На RPM-основанных системах используйте команду 'rpm -qv efax'.

Вы можете взять исходные тексты efax в формате tar.gz с sunsite: 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

The printcap entry.

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

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

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

Команда fax

Используйте для команды fax жесткую связь, а не символическую.

Команда:

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

Файл /usr/bin/fax.

Отредактируйте /usr/bin/fax под ваши потребности:

Выберите правильный Fax Class для вашего модема:

       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`
а в строках 586,587 не должно быть знаков '-' в строках:

       0) echo "$l" | mail -s "fax to $num succeeded" $user@$host ;;
       *) echo "$l" | mail -s "fax to $num failed   " $user@$host ;;

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

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

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

Файл lock.

Файл lock (/var/spool/fax/lock) создается с неправильными правами доступа, подправьте их командой:

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

Специальный файл /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

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

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

       chmod 1777 /var/lock

2.3 Как этим пользоваться, для сервера ?

Вы должны использовать fax-принтер, используя опцию -P, и опцию -J с номером факса.

Ипользуйте одну из приведенных команд lpr:

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

2.4 Где указывается номер факса, на который мне нужно позвонить ?

После опции -J.

2.5 Как мне это использовать из других Unixes в сети ?

Добавьте указанную запись в файл /etc/printcap и клиентские Linux системы, создайте каталог спула, и т.д...

       fax:\
               :sd=/var/spool/fax:\
               :mx#0:\
               :sh:\
               :rm=host.domain:\
               :rp=fax:
Добавьте имена клиенских машин в /etc/hosts.lpd на машине факс-сервера.

Используйте его как было описано выше.

Заметьте:

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

2.6 Пользователи Caldera, LPRng

ПО управления печатью LPRng использует другие методы обработки управляющего файла.

Спасибо Luca Montecchiani (m.luca@usa.net), который обнаружил проблему и ее решение. Вот обновленный файл /usr/bin/fax. Следующие строки заменяют две строки cfile=... под номерами 586,587

  # Modified to work also with the LPRng package
  # Luca Montecchiani (08/11/97 m.luca@usa.net)
  if [ !-z "$CONTROL_FILE" ]
      then
          cfile=`cat tail -1 lock`
          cfile=`cat $cfile`
      else
          cfile=$CONTROL_FILE
  fi
Назад       Содержание