次のページ
前のページ
目次へ
ファックス・プリンタサーバとは、複数のプログラムを組み合わせて
構築したサーバのことです。efax とプリントサーバを組み合わせると、
プリンタにプリントアウトする要領で簡単にコンピュータからファックス
を送ることができます。
efax をファックス・プリントサーバとして設定する際には、いくつか
問題があります。私は何度か構築に成功したので、そのノウハウを
集めて、簡単な mini-HOWTO を作ることにしました。コメントは、
<erez@newplaces.com> までお願いします。
以下で順を追って構築方法と利用方法、その他の注意点等を述べます。
efax ソフトウェア
まず、efax パッケージがインストールされているか
確認します。
RPM ベースのシステムなら、コマンド 'rpm -qv efax ' を
使ってください。
tar.gz 形式の efax ソースファイルは、
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
から入手できます。
printcap ファイルのエントリ
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 ファイルをご使用の環境に合わて編集します。
モデムに応じたファックスクラスを選択します。
CLASS=2.0
FROM フィールドには、あなたの国際電話番号を設定します。
NAME フィールドには、名前を設定してください。
NAME="Your Name"
そして、国際電話番号を国内番号に変換するための一行を加えます。
イスラエルから発信する場合は、以下のようになります。
TELCVT='sed -e s/+972/0/ -e s/+/00/' # Israel
/usr/bin/fax ファイルの 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 file) (/var/spool/fax/lock ) を作成します。
作成されたファイルのパーミションは適切ではないので、次のコマンドを使って
正しく設定してください。
touch /var/spool/fax/lock ; chmod 644 /var/spool/fax/lock
/dev/modem スペシャルファイル
efax プログラムは、/dev/modem ファイルが実際に存在することを前提
にしているので、シンボリックリンクを張っているだけでは動きません。
モデムが接続されている /dev/cua? と同じメジャー番号とマイナー番号
が付いた /dev/modem デバイスファイルを作成してください。
ls -lL /dev/modem
rm /dev/modem
mknod /dev/modem c Mj Mi
chmod 666 /dev/modem
Mj の部分には 5 を、Mi の部分には cua0 なら
64 を、cua1 なら 65 等を入れてください。それゆえ、モデムが
cua1 に接続されている場合は、次にようになります。
mknod /dev/modem c 5 65
/var/lock ディレクトリ
/var/lock ディレクトリのモードを変更します。
chmod 1777 /var/lock
ファックスプリンタを使うときは -P オプションを付け、
-J オプションでファックス番号を指定します。
次のような lpr コマンドを使ってください。
lpr -Pfax -J <Fax-Number> [file-names]
any command | lpr -Pfax -J <Fax-Number>
-J オプションの後に、宛先の番号を指定してください。
/etc/printcap に以下の項目を加え、クライアント側の Linux 機には
スプールディレクトリ等を追加します。
fax:\
:sd=/var/spool/fax:\
:mx#0:\
:sh:\
:rm=host.domain:\
:rp=fax:
さらに、クライアントのホスト名をサーバー側の /etc/hosts.lpd に
書き加えます。
使い方はいままで通りです。
注意:
efax がファックス各ページに書き込むヘッタ文字列は、ファックスを送付する
ユーザー名が変わっても同じです。(これは、アップデートの際に修正される
かもしれません。)
LPRng 印刷管理ソフトウェアでは、コントロールファイルの扱いが異なって
います。
この問題点に気づき解決策を提供してくれた Montecchiani <m.luca@usa.net>
に感謝します。以下に /usr/bin/fax ファイルの更新個所を記載します。
以下の行を 586, 587 行にある cfile=.../ 部分と置き換えてください。
# 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
次のページ
前のページ
目次へ
|