sane

2007/05/20

sane の Update でスキャナを認識しなくなる

以前にVineLinuxのsaneでスキャナを使う設定を行ったのですが、
Synapticでsaneのパッケージを1.0.18へ更新後、スキャナを認識しなくなりました。
ちなみに CANON IX-4025 という大変古いSCSI接続のスキャナです。

# sane-find-scanner
とコマンドすると

# sane-find-scanner will now attempt to detect your scanner. If the
# result is different from what you expected, first make sure your
# scanner is powered up and properly connected to your computer.

found SCSI scanner "CANON IX-4025 1.09" at /dev/scanner
found SCSI scanner "CANON IX-4025 1.09" at /dev/sg0
# Your SCSI scanner was detected. It may or may not be supported by SANE. Try
# scanimage -L and read the backend's manpage.

# No USB scanners found. If you expected something different, make sure that
# you have loaded a kernel driver for your USB host controller and have setup
# the USB system correctly. See man sane-usb for details.

# Not checking for parallel port scanners.

# Most Scanners connected to the parallel port or other proprietary ports
# can't be detected by this program.

とスキャナの検出はできているのに、

# scanimage -L
とコマンドすると

No scanners were identified. If you were expecting something different,
check that the scanner is plugged in, turned on and detected by the
sane-find-scanner tool (if appropriate). Please read the documentation
which came with this software (README, FAQ, manpages).

となり、sane ではスキャナを認識していません。

設定ファイルなども以前のままで、特に変更点はありません・・・。
なぜなんだろう???
唯一気になるのが、使っているcanonドライバが1.0.18用に新しくなっていることです。
/usr/lib/saneに
libsane-canon.so.1.0.18*
ってのがあります。

もしかして、あまりにも古いスキャナなので、サポートしなくなったのか!?
VineLinuxのミラーサーバの過去のパッケージが置いてある
http://ftp.kddilabs.jp/pub/Linux/packages/Vine/apt/old-stable/i386/RPMS.plus/
から
sane-1.0.15-0vl4.i386.rpm
をダウンロードし、
# rpm -Uvh --oldpackage sane-1.0.15-0vl4.i386.rpm
とダウングレードインストールしたところ、

# sane-find-scanner

found SCSI scanner "CANON IX-4025 1.09" at /dev/scanner
found SCSI scanner "CANON IX-4025 1.09" at /dev/sg0
# Your SCSI scanner was detected. It may or may not be supported by SANE. Try
# scanimage -L and read the backend's manpage.

# No USB scanners found. If you expected something different, make sure that
# you have loaded a driver for your USB host controller and have installed a
# kernel scanner module.

# Not checking for parallel port scanners.

# Most Scanners connected to the parallel port or other proprietary ports
# can't be detected by this program.

# scanimage -L
device `canon:/dev/scanner' is a CANON IX-4025 flatbed scanner

認識してるし!!
これは最新のsaneで、CANON IX-4025 をサポートしなくなったと考えるのが妥当ですな・・・。
がーん・・・ショック〜。
saneのパッケージをうっかり最新にしてしまうと困るので、
sane-1.0.15-0vl4.i386.rpm
を自分のファイルサーバに移し、私の中で永久保存版になりました。

| | コメント (0) | トラックバック (0)

2006/11/05

Linuxに接続されたスキャナをWindowsから使う

前回、なんとかLinuxの起動後にスキャナが使える所までできました。
なんかインチキっぽいけど。(汗)

あとは、これが Windowsなどで共有できれば目的達成です。
そもそも今回の一連の作業は、@IT Linux Tipsの「Linuxに接続したスキャナをWindowsから使うには」という記事が発端なんです。


今回の環境です。
○サーバ側
OS VineLinux3.1
SCSIホストアダプタ Adaptec AHA-2940J
スキャナ Canon IX-4025(SCSI接続のスキャナ)

○クライアント側
Windows2000
Kunoppix5.0.1


まずは、Linuxに繋いだスキャナをネットワークで使用できるように設定します。
基本的に、@IT Linux Tipsの「スキャナをネットワークで共有するには」という記事を参考に設定していけばよいはずです。

/etc/sane.d/net.conf を修正します。
localhost のコメントを外します。
# localhost
   ↓
localhost

この作業って、サーバ側のXsaneを使ってサーバ側に接続するためのもののようです。
だから、無くてもOKです。
あると、サーバ側のXsaneを起動した時に、ローカルのスキャナに繋ぐかネットワークのスキャナに繋ぐか選択できます。(って言っても、localhostに繋ぐんだから、同じ事なんだけど)
これ以下の作業の動作確認に使えるので、やっておくと問題が出た時に問題の切り分けがしやすいです。(経験談)


次に、/etc/sane.d/saned.conf にクライアントPCのIPアドレスを設定します。
私の場合、
localhost
192.168.1.0/24
と書きました。

ちなみに、最初、この設定を /etc/sane.d/net.conf に書いてしまっていて、書く設定ファイルが違っていることに気付かず、かなり悩みました。
文章はよく読みましょう。(汗)
@ITのここの部分の文章も、なんか日本語的に間違っているから余計にややこしいんだけど。

追い討ちとして、IPアドレスの書き方を
192.168.1.0/255.255.255.0
の形式では正しく設定してくれませんでした。
これもなかなか気付かなくて、かなり悩みました。


その次に、xinetd の設定です。
・・・ってVineLinux3.1はデフォルトでxinetdを使っていません。
inetd を使っています。

が~ん。@ITの記事を参考にできない・・・。
inetd の設定は、SWATを使えるようにした時に触ったぐらいです。

ネットで検索すると、
Love Old Macintoshスキャナ共有という記事が見つかりました。
この方は、debianですが inetd を使用したスキャナの共有をされています。

/etc/service を見てみます。

sane 6566/tcp saned # SANE network scanner daemon

という記述があればOKです。
saneインストール時に追加してくれているみたいです。
無ければ追加します。

次に、
/etc/inetd.conf を見てみます。
こちらも既に

#sane stream tcp nowait root /usr/sbin/in.saned /usr/sbin/in.saned

と書いてあったのですが、コメントがついているのでコメントを外します。

sane stream tcp nowait root /usr/sbin/in.saned /usr/sbin/in.saned

ちなみに、デフォルトは /usr/sbin/in.saned から in.saned を起動していますが、
/usr/sbin/tcpd から /usr/sbin/saned を起動する書き方でも問題ありませんでした。
ま、デフォルトなら間違いないです。

最後に、
/etc/hosts.allow に

sane: localhost 127.0.0.1 192.168.1.0/255.255.255.0

を追加しました。
hosts.allow の追加って、調べたどのページにも載っていなかったんだけど、いるんではないだろうか?
実際よく解りません。私の環境では追加しています。

inetd を再起動します
# /etc/init.d/inet restart

これで、サーバ側の設定は終わりのはず。
次はクライアントの設定です。

まずは「Linuxに接続したスキャナをWindowsから使うには(TWAINブリッジ編)」を試してみます。
SaneTwainのページの下の方のDownLoadってところからダウンロードします。
zip版とWindowsインストーラ付版があります。私はインストーラ付き版をインストールしました。(setup127.exe です)
初めての起動時か、水溜りにキノコが生えたようなボタン(よく見るとレバーが2本出ている絵なのだが(汗))を押すと、サーバへ繋ぐ設定画面が出ます。
Connectionタブの Hostname にサーバのIP、ポートはデフォルトの 6566 です。
ちなみにユーザー名はなんでもいいです。(何に使っているんだ?)

SaneTwainを起動して、エラーが出なければ大丈夫なはずです。
ちなみに、このアプリケーションのアイコンは、何が描いてあるのかよく解らん・・・。
Paint Shop Pro 9 を使って、TWAINからのインポートもきちんとできました。

ここまでさらっと書いていますが、上記の設定ファイルの書き間違いなどがあり、かなり大変でした。


次に、
Linuxに接続したスキャナをWindowsから使うには(Xsane編)」を試してみました。
XsaneのページDownload source/win32のページから、xsane-win32-0.991.zip をダウンロードします。ファイル名がよく似た別のファイルもあるので注意です。
解凍してできたフォルダの中にREADMEがあるので、1度目を通しておくといいです。
英語ですが、そんなに難しくないので。

で、そのREADMEどおりに設定します。
saneフォルダをCドライブ直下へ移動します。
C:\sane\etc\sane.d\net.conf に、サーバのIPを記入します。

C:\sane\bin\xsane.exe を起動すると、Linux版のXsaneと同じようにスキャナを検索して起動します。

・・・なんですが、私の環境では、起動しませんでした。
スキャナ検索の画面で固まってしまうのです。
う~ん、またもや問題発生。
SaneTwainからは接続できるので、サーバの問題ではありません。
Xsaneの設定と言っても、サーバのIPを設定ファイルに書くだけだし・・・。

なんかよく判りませんので、Knoppixから試してみようと思いました。
Linux間でスキャナを共有するやり方は、「スキャナをネットワークで共有するには」の最後の方に載っています。
Knoppix5.0.1を起動して(ちなみにUSBメモリに入れていたやつです(笑))、コンソールを立ち上げて、
$ export SANE_NET_HOSTS=サーバのIP
$ xsane
と入力するとXsaneがネットワーク上のスキャナを検索します。
おお!ちゃんとできるじゃんか。
なぜWindows上ではできないのだろう?

こういう時に疑うべきは、ファイアウォールってのは、定番です。
マカフィーのファイアウォールを停止した所、繋がるようになりました。
ちくしょう、マカフィーめ!ライセンス切れたらカスペルスキーに替えてやる!
(ちなみにカスペルスキーのPCでは検証してません。(汗))

で、サポートを調べてみたら、マカフィーの2007年度版が出ていたのでインストールしてみました。
すると、 Xsane が問題なく起動しました。

マカフィー2006年度版のファイアウォールではXsaneが使えないので要注意!です。


長かったけど、やっとできた~。(TvT)
これで、Win98以外でもスキャナ(IX-4025)が使えます!

| | コメント (0) | トラックバック (1)