ถึงแม้ Epson จะมีไดรฟเวอร์มาให้ แต่ก็เป็นแพกเกจแบบ rpm ของ RedHat ทำให้การติดตั้งยังไม่สะดวกเท่าที่ควร
หน้าเว็บอยู่ที่ Avasys official Epson drivers
ซึ่งถ้านำมาแปลงด้วยโปรแกรม alien ก็อาจจะได้ แต่ที่ผมยกมาเป็นตัวอย่าง จะเป็นการปรุงด้วยเดเบียนโดยตรง
ตามตัวอย่าง ผมใช้เดเบียนรุ่น sid ซึ่งใช้ gcc-4.3 นะครับ
ติดตั้งแพกเกจสำหรับปรุง deb และ xsane
$ sudo aptitude install devscripts libsane-dev xsane
เอาไฟล์ซอร์สและแพทช์มาคอมไพล์
$ wget http://lx1.avasys.jp/iscan/2.11.0/iscan_2.11.0-1.tar.gz $ wget http://aur.archlinux.org/packages/iscan/iscan/iscan-gcc43-fix.patch $ tar zvxf iscan_2.11.0-1.tar.gz $ cd iscan-2.11.0/ $ patch -Np0 -i ../iscan-gcc43-fix.patch $ debuild -us -uc
จะได้ไฟล์ .deb ต้องติดตั้งด้วยพารามิเตอร์เพิ่มเติม เพราะแพกเกจนี้ ขัดกับแพกเกจ libsane-extras
$ sudo dpkg --force-overwrite --force-conflicts -i ../iscan_2.11.0-1_i386.deb
เสร็จแล้ว ต่อด้วยการปรับตั้ง
ก่อนอื่นดูค่าพวก Vendor ID กับ Product ID ก่อน ด้วยคำสั่ง
$ sane-find-scanner
... found USB scanner (vendor= [Language Error], product=0x083f [Language Error]) at libusb:001:003 ...
เราจะเอานำค่าเหล่านี้ไปปรับตั้ง
$ sudo vi /etc/sane.d/epkowa.conf
คอมเมนต์หน้าบรรทัด scsi และเพิ่มบรรทัด usb ดังตัวอย่าง
... #scsi EPSON ... usb ... #usb 0x04b8 0x0110 usb 0x04b8 0x083f ...
ตรวจดูว่าในไฟล์กำกับอุปกรณ์ udev มี Vendor ID และ Product ID ด้วยหรือไม่ ถ้ายังไม่มี ต้องเติมเข้าไป (แต่ถ้าเป็นรุ่นตัวอย่างนี้ เขามีอยู่แล้ว)
$ sudo vi /etc/udev/rules.d/z60_libsane.rules
... # Epson Stylus DX4450 (CX5500) SYSFS{idVendor}=="04b8", SYSFS{idProduct}=="083f", MODE="0664", GROUP="scanner", ENV{libsane_matched}="yes" ...
สั่งให้มีผลเลย
$ sudo /etc/init.d/hal restart $ sudo /etc/init.d/udev restart
(ถ้าไม่ได้ผล อาจต้องบูตเครื่องหรือล๊อกเอาต์แล้วล๊อกอินใหม่)
ต่อไปก็ทำให้เราสามารถใช้งาน scanner ได้ ด้วยการให้ชื่อเราเข้าไปอยู่ใน group ชื่อ scanner
$ sudo usermod -a -G scanner USER
เสร็จหมดแล้วครับ
สามารถใช้งานแสกนเนอร์ผ่านเมนู Application -> Graphics -> Image Scan
หรือสั่งผ่านบรรทัดคำสั่งว่า iscan
ก็ใช้ได้เช่นกัน
อ้างอิง