ดอตแมทริกซ์ (Dot Matrix Printer) ยังคงเป็นเครื่องพิมพ์ยอดนิยมที่มีคนใช้อยู่ทั่วไป เพื่อพิมพ์เอกสารต่างๆ โดยเฉพาะเอกสารทางด้านบัญชีหรือการเงิน ข้อดีก็น่าจะเป็นสามารถทำสำเนาเอกสารหลายชุดได้ง่าย
ลองมาดูการต่อเครื่องพิมพ์นี้เข้ากับเครื่องเซิร์ฟเวอร์ลีนุกซ์ แล้วติดตั้งและคอนฟิก CUPS เพื่อทดสอบพิมพ์เครื่องพิมพ์นี้บนเซิร์ฟเวอร์ลีนุกซ์โดยตรง
ในที่นี้จะใช้เครื่องพิมพ์ EPSON LQ-590 ต่อพอร์ต USB เข้ากับเครื่องเซิร์ฟเวอร์ที่ติดตั้ง Ubuntu 16.04
หมายเหตุ บทความนี้ไม่ใช่การโฆษณาสินค้า และผู้เขียนก็ไม่ได้เกี่ยวข้องกับบริษัท EPSON หรือเป็นตัวแทนจำหน่ายแต่อย่างใด เหตุผลที่แสดงยี่ห้อรุ่นของอุปกรณ์ ก็เพื่อให้ผู้อ่านสามารถอ่านเข้าใจได้ง่าย โดยวิธีการที่ใช้นี้น่าจะใช้กับเครื่องพิมพ์ ยี่ห้อ หรือ รุ่นอื่นๆ ที่เป็นดอตแมทริกซ์ได้เหมือนกัน
ต่อสาย USB จากเครื่องพิมพ์เข้ากับเครื่องเซิร์ฟเวอร์ลีนุกซ์ แล้วเปิดเครื่องพิมพ์
ตัวอย่างข้อความที่เกิดขึ้นในไฟล์ /var/log/syslog (บน Ubuntu 16.04) เมื่อต่อเครื่องพิมพ์ดอตแมทริกซ์ EPSON LQ-590
dev@u16:~$ sudo tail /var/log/syslog
Nov 1 12:37:33 u16 kernel: [ 467.072140] usb 4-2: new full-speed USB device number 7 using ohci-pci
Nov 1 12:37:33 u16 kernel: [ 467.288097] usb 4-2: New USB device found, idVendor=04b8, idProduct=003b
Nov 1 12:37:33 u16 kernel: [ 467.288104] usb 4-2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
Nov 1 12:37:33 u16 kernel: [ 467.288108] usb 4-2: Product: LQ-590
Nov 1 12:37:33 u16 kernel: [ 467.288111] usb 4-2: Manufacturer: EPSON
Nov 1 12:37:33 u16 kernel: [ 467.288114] usb 4-2: SerialNumber: 4832...
Nov 1 12:37:33 u16 kernel: [ 467.298221] usblp 4-2:1.0: usblp1: USB Bidirectional printer dev 7 if 0 alt 0 proto 2 vid 0x04B8 pid 0x003B
ถ้าแสดงข้อความอย่างข้างบน หมายความว่าตอนนี้เซิร์ฟเวอร์ลีนุกซ์มองเห็นและสามารถติดต่อกับเครื่องพิมพ์ได้แล้ว โดยผ่าน USB พอร์ตชื่อ usblp1
สามารถทดลองสั่งพิมพ์จากลีนุกซ์ได้เลย โดยใช้คำสั่ง echo แล้วส่งข้อความ (redirect stdout) เข้าไปในไฟล์ /dev/usblp1 ซึ่งก็คือการส่งข้อความ hello world เข้าไปที่เครื่องพิมพ์ดอตแมทริกซ์นั่นเอง
dev@u16:~$ sudo echo "hello" > /dev/usblp1
ติดตั้งและคอนฟิก CUPS
เพื่อความง่ายต่อการบริหารจัดการเครื่องพิมพ์บนลีนุกซ์ แนะนำให้ติดตั้งและคอนฟิก CUPS
ใช้คำสั่ง apt install เพื่อติดตั้งแพ็คเกจ cups
dev@u16:~$ sudo apt install cups
ไฟล์คอนฟิกของ cups จะอยู่ใน /etc/cups/ โดยจะมีไฟล์หลักคือ cupsd.conf
รันคำสั่ง cupsctl เพื่อแก้ไขไฟล์คอนฟิก cupsd.conf ให้เครื่องอื่นๆ สามารถรีโมตมาคอนฟิก CUPS ผ่านหน้าเว็บได้
dev@u16:~$ sudo cupsctl --remote-admin
ตัวอย่างไฟล์ cupsd.conf หลังจากรันคำสั่ง cupsctl
dev@u16:~$ sudo vi /etc/cups/cupsd.conf LogLevel warn PageLogFormat MaxLogSize 0 # Allow remote access Port 631 Listen /var/run/cups/cups.sock Browsing Off BrowseLocalProtocols dnssd DefaultAuthType Basic WebInterface Yes <Location /> # Allow remote administration... Order allow,deny Allow @LOCAL </Location> <Location /admin> # Allow remote administration... Order allow,deny Allow @LOCAL </Location> <Location /admin/conf> AuthType Default Require user @SYSTEM # Allow remote access to the configuration files... Order allow,deny Allow @LOCAL </Location> ...
สังเกตว่ารูปแบบการคอนฟิกในไฟล์ cupsd.conf จะคล้ายกับ Apache HTTP Server
รีสตาร์ตเซอร์วิส cups
dev@u16:~$ sudo systemctl restart cups
ใช้ browser เปิดเว็บโดยระบุ IP ของเซิร์ฟเวอร์ ต่อท้ายด้วยเครื่องหมาย : แล้วระบุพอร์ต 631
ตัวอย่างเช่น ถ้าเซิร์ฟเวอร์ที่ติดตั้ง CUPS ไอพี 192.168.1.1 ก็ต้องระบุ http://192.168.1.1:631
ตัวอย่างหน้าเว็บ CUPS
คลิกลิงก์ Adding Printers and Classes
หน้า Administration คลิกปุ่ม Add Printer
หน้าจอจะขึ้น Upgrade Required เพื่อให้เข้าเว็บแบบ https คลิกลิงก์ https ที่แสดง
หน้า Administration แบบ https คลิกปุ่ม Add Printer อีกครั้ง
หน้าจอ Authentication Required เพื่อให้ผู้ใช้กรอก User Name กับ Password ก่อนที่จะเพิ่มเครื่องพิมพ์ได้
กรอก User Name, Password เดียวกับ
หมายเหตุ ผู้ใช้ที่มีสิทธิ์ login ได้ ต้องอยู่ในกลุ่ม (group) ชื่อ lpadmin
dev@u16:~$ grep lpadmin /etc/group lpadmin:x:115:dev
หน้าเว็บแสดงรายชื่อเครื่องพิมพ์ที่ต่อกับเครื่องเซิร์ฟเวอร์โดยตรง (Local Printers) คลิกเลือก EPSON แล้วกดปุ่ม Continue
ใส่ชื่อ (Name) รายละเอียด (Description) เพิ่มเติมของเครื่องพิมพ์
หน้าถัดไปเป็นการเลือก Model ของเครื่องพิมพ์ ถ้าไม่มีอยู่ในรายชื่อ อาจเลือกที่ใกล้เคียง หรือกดปุ่ม Choose File เพื่ออัพโหลด PPD File ซึ่งเปรียบเสมือนไดร์เวอร์ของเครื่องพิมพ์
สำหรับ EPSON LQ-590 สามารถดาวน์โหลดไฟล์ PPD จากลิงก์ directly download PPD บนหน้าเว็บ Epson LQ-570+
ตัวอย่างไฟล์ PPD ที่ดาวน์โหลดมาได้
$ ls -l total 56 -rw-r--r--@ 1 alice staff 15606 Nov 1 13:00 Epson-LQ-570plus-epson.ppd
คลิกปุ่ม Choose File เพื่ออัพโหลดไฟล์ PPD ที่ดาวน์โหลดมาได้ แล้วกดปุ่ม Add Printer
หน้าจอ Set Printer Options กดปุ่ม Query Printer for Default Options แล้วอาจปรับค่า Resolution ตามต้องการ แล้วกดปุ่ม Set Default Options
หน้าจอแสดงสถานะเครื่องพิมพ์
ถ้าต้องการทดสอบการสั่งพิมพ์ ให้คลิกเลือกตรง Maintenance แล้วเลือก Print Test Page
ตัวอย่างหน้าจอถ้าคลิกปุ่ม Show All Jobs