現在、読み込んできたデータを自動的に30件のFAX送信先に送信するFAXサーバーを構築しています。
システムとしては、読み込んできた内容を元に、データベースにあるデータから30件選んで送信する形です。
しかし新規にCent OS5.6をインストールしたところ、LANアダプタがインストールできず、インターネットに接続できなかったので、Windows XP上でVMware PlayerでFAXサーバーを構築しましたが、
/usr/bin/efax: Fri Jun 17 14:59:20 2011 efax v 0.9 Copyright 1999 Ed Casas
efax: 59:20 Warning: /dev/modem locked or busy. waiting.
と表示されてFAXを送ることが出来ません。
どのようにすればモデムが動いて、FAXを送ることが可能になるでしょうか?
モデムは内蔵モデムでREX-PCI56CX、ネットワークアダプタはRTL 8169/8110 Family Gigabit Ethernet NICです。
参考サイト
http://se-suganuma.blogspot.com/2008/11/linuxcentosfax.html
http://www.nabe.bne.jp/linux/faxserver.html
efax: 59:20 Warning: /dev/modem locked or busy. waiting.
これが文字通り原因だとすれば、fuser コマンドで、/dev/modem を開いているプロセスを調べる事ができます。
# fuser /dev/modem /dev/modem: 12345
/dev/modem を開いているプロセスがあれば、そのプロセス ID が表示されるので、そのプロセス ID の実体が何かを調べると、問題解決のいとぐちになる可能性があります。
efax をいじったことはありませんが、似た様な現象で経験したのは、なんかの拍子にシリアルマウス(昔あった、シリアルポートにつなぐタイプのマウス)を使う設定になっていて、コンソールマウスサーバの gpm が、そのシリアルポートを開いていた、といった事はありました。
ただ、
Windows XP上でVMware PlayerでFAXサーバーを構築しましたが、
そもそも、PCI ボードのモデムが、ゲスト OS で、どんな風に認識されるのか、という疑問があるのですが、その辺は大丈夫ですか?
外付けであれば、ハードウェアの物理的なシリアルポートを、そのままゲスト OS の仮想マシン上のシリアルポートに割り当てれば OK だと思うし、USB タイプであれば、USB デバイスをそのまま仮想マシンで認識させる事はできるので、ゲスト OS が対応していれば OK、と思うのですが、PCI ボードのデバイスは、そのまま仮想マシン上から見える事は無いのでは? と思います。
ホスト OS が割り当てた仮想のシリアルポートが、そのままゲスト OS のシリアルポートとして割り当てる事が出来れば、と思うのですが、「出来る」とも「出来ない」とも、確証の持てる情報を見つけられなかったので、ちょっと心配してます。VMWare Player の仮想マシンの編集で、シリアルポートを追加する時に出てくる選択肢が「ホストの物理シリアルポートを使用」「ファイルに出力」「名前付きパイプに出力」だったので、どうなのかなぁ、と。
「いや、その辺は大丈夫」というのであれば、私の杞憂で済むのですが....。