2015年6月7日

建立網路印表機伺服器 安裝網路印表機 智慧型手機列印 linux printer share windows linux smartphone tablet

測試環境在Linux上建網路印表機伺服器,讓電腦、手機與平板都可列印

Server
硬體架構:x86_64
O.S.:Linux Debian Jessie
印表機:Epson stylns TX235(USB port)

印表機的選擇

印表機廠牌有Epson、Hp等,每家廠牌又有各種型號,我們所要選擇廠牌與型號,當然是要能支援Linux,我們從Linux 基金會Open Printing來搜尋哪些印表機支援Linux,網址如下:
Open Printing 資料庫:http://www.openprinting.org/printers



進入後頁面如下圖,選擇你喜歡的印表機廠商(Manufacturer)與型號(Model)後按show this printer,而我家原先已經有印表機型號為:Epson stylns TX235。



按下後出現頁面如下圖,如果右邊你看到三隻企鵝恭喜你這台印表機支援度最高,如果你看到很抱歉你的印表機目前不支援Linux,可能要換一台印表機,所以還沒買印表機的選擇就是三隻企鵝為優先,在選擇你喜歡的廠牌與型號或想要的功能。
詳細支援度說明如網址:http://www.linuxfoundation.org/collaborate/workgroups/openprinting/database/databaseintro

下載與安裝驅動

繼續上圖下載驅動程式,我的Linux是64位元Debian,所以選擇64位元.deb檔。
$ uname -a
Linux debianserver 3.16.0-4-amd64 #1 SMP Debian 3.16.7-ckt9-3~deb8u1 (2015-04-24) x86_64 GNU/Linux

安裝驅動程式
# cd 下載/
# dpkg -i epson-inkjet-printer-201108w_1.0.0-1lsb3.2_amd64.deb
選取了原先未選的套件 epson-inkjet-printer-201108w。
(讀取資料庫 ... 目前共安裝了 102297 個檔案和目錄。)
Preparing to unpack epson-inkjet-printer-201108w_1.0.0-1lsb3.2_amd64.deb ...
Unpacking epson-inkjet-printer-201108w (1.0.0-1lsb3.2) ...
dpkg: 因相依問題,無法設定 epson-inkjet-printer-201108w:
 epson-inkjet-printer-201108w 相依於 lsb (>= 3.2)﹔然而:
  套件 lsb 未安裝。

dpkg: error processing package epson-inkjet-printer-201108w (--install):
 相依問題 - 保留未設定
處理時發生錯誤:
 epson-inkjet-printer-201108w


如果出現底下錯誤訊息
cd: /etc/cups/ppd: No such file or directory
請先執行
# apt-get install cups

# apt-get install -f
正在讀取套件清單... 完成
正在重建相依關係      
正在讀取狀態資料... 完成
正在修正相依關係... 完成
下列的額外套件將被安裝:
  alien avahi-daemon cups cups-browsed cups-bsd cups-client cups-common
.
.
.
下列【新】套件將會被安裝:
  alien avahi-daemon cups cups-browsed cups-bsd cups-client cups-common
  cups-core-drivers cups-daemon cups-filters cups-filters-core-drivers
  cups-ppdc cups-server-common debhelper debugedit ed lib32z1 libavahi-core7
  libc6-i386 libcupscgi1 libcupsmime1 libcupsppdc1 libdaemon0 libfontembed1
  libgutenprint2 liblua5.2-0 libmysqlclient18 libnss-mdns libpod-plainer-perl
  libqpdf13 libqt4-network libqt4-opengl libqt4-sql libqt4-sql-mysql
  libqt4-sql-sqlite libqt4-svg libqtdbus4 librpm3 librpmbuild3 librpmio3
  librpmsign1 lsb lsb-core lsb-cxx lsb-desktop lsb-graphics lsb-languages
  lsb-multimedia lsb-printing lsb-security mysql-common pax poppler-utils
  printer-driver-gutenprint qpdf rpm rpm-common rpm2cpio rsync ssl-cert
升級 0 個,新安裝 60 個,移除 0 個,有 0 個未被升級。
1 個沒有完整得安裝或移除。
需要下載 20.9 MB 的套件檔。
此操作完成之後,會多佔用 54.1 MB 的磁碟空間。
Do you want to continue? [Y/n] y

安裝完成後重啟cups列印服務(開源的列印系統)
# /etc/init.d/cups restart

連接印表機至電腦


  1. 開啟印表機電源
  2. 將USB接上電腦
  3. 觀察硬體資訊

# dmesg
.
.
.
[42371.239366] usb 1-4: new high-speed USB device number 4 using ehci-pci
[42371.380377] usb 1-4: New USB device found, idVendor=04b8, idProduct=0881
[42371.380389] usb 1-4: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[42371.380397] usb 1-4: Product: EPSON Epson Stylus TX235 Series
[42371.380402] usb 1-4: Manufacturer: EPSON
[42371.380407] usb 1-4: SerialNumber: 4E3857593030333087
[42371.390610] usblp 1-4:1.1: usblp1: USB Bidirectional printer dev 4 if 1 alt 0 proto 2 vid 0x04B8 pid 0x0881
[42371.391718] usb-storage 1-4:1.2: USB Mass Storage device detected
[42371.391960] scsi9 : usb-storage 1-4:1.2
[42372.392546] scsi 9:0:0:0: Direct-Access     EPSON    Storage          1.00 PQ: 0 ANSI: 2
[42372.393220] sd 9:0:0:0: Attached scsi generic sg1 type 0
[42372.407129] sd 9:0:0:0: [sdb] Attached SCSI removable disk
[42412.674395] usblp1: removed
[42412.684843] usblp 1-4:1.1: usblp1: USB Bidirectional printer dev 4 if 1 alt 0 proto 2 vid 0x04B8 pid 0x0881

# lsusb
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 007 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 006 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 001 Device 004: ID 04b8:0881 Seiko Epson Corp. PX-404A [ME OFFICE 535]
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 004 Device 002: ID 046d:c52f Logitech, Inc. Unifying Receiver
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub

# ls -l /dev/usb/lp*
crw-rw---- 1 root lp 180, 1  6月  7 15:55 /dev/usb/lp1

設定新增印表機

確認有連上印表機後,進入此網址http://localhost:631/admin如下圖頁面
輸入一般使用者帳號與密碼

 網頁存取失敗
請輸入以下指令
# usermod -a -G lpadmin clementyan
clementyan是我的一般使用者名稱
再將網頁重新整理

點選Add Printer,會在Local Printers這裡看到你的印表機型號
點選你的印表機型號後按繼續


一樣選擇我們的型號,這是我們裝好的驅動程式,選後按新增。

再來列印表姪設定,Type:選擇紙張的類型,我選擇一般的普通紙。
底下是Epson紙張說明,詳細作用google吧~

再來選擇列印品質,第一個Draft品質較差列印速度較快也比較省墨水,不是重要文件我會選草稿,一般文件我選擇文字跟圖片。

Borderless無邊距設定,不懂?
看這裡就懂了→http://www.mountaincow.com/images/desktop.printing.epson.R2000.gif
一般文件列印不需要啟動:off

都設完後選擇Set Default Options,出現此畫面即設定完成

列印測試

實際測試看看是否可列印,選擇Print Test Page。

目前列印的工作項目

到目前為止是完成個人電腦上的印表機設定
Reference:
http://www.linuxfoundation.org/collaborate/workgroups/openprinting
http://linux.vbird.org/linux_basic/0610hardware.php


安裝跨平台檔案列印伺服器samba
# apt-get install samba

設定Server,進入此http://localhost:631/admin,我只設定分享印表機跟與許使用者取消列印項目。
另外印表機分享的功能要開啟



Reference:

連接至windows 8.1

至windows 8.1新增印表機偵測即可看到Epson 印表機,至於驅動程式安裝方式,由於現在windows 8.1只要插上裝置便會自動偵測與安裝,所以我用麻煩的方法先把印表機搬去windows 8.1插上USB偵測後,發現驅動程式名稱為Epson ESC/P-R V4 Class,在一次用網路偵測時在選擇Epson ESC/P-R V4 Class驅動安裝。

連接至智慧型手機和平板

到你的平板跟智慧型手機,下載Google 雲端列印與Google 文件如下圖,開啟任何文件用Google才可以列印。
 

回到電腦在google瀏覽器網址輸入chrome://devices/ 如下圖,按Add printer

等待一會兒會看到你的印表機型號

選擇印表機型號,在點選共用
可以變更權限,並把家人的手機帳號匯入,被匯入者會收到郵件




回到手機開啟chrome,到想要列印的網頁,點選右上角



點選列印



 預設儲存為PDF 點選所有印表機


點選右上角新增


點選雲端列印


選擇Epson印表機


按接受


點選Epson印表機 



第二頁不印可以取消勾勾


確定後按右上方列印


印過程中可以回到電腦看看列印工作項目


連結至Linux

到另一台Linux電腦(Client),安裝cups列印服務
# apt-get install cups

開啟瀏覽器輸入http://localhost:631/admin選擇Printers

可以看到已經有印表機,正式Server端分享出來的印表機


所以我們只要在安裝一次他的驅動程式,如前所述的方法,就可以列印了。



補充Linux簡易列印指令:
$ lp -d Epson_Stylus_TX235 -o media=a4 /home/clementyan/filename
request id is Epson_Stylus_TX235-12 (1 file(s))

-d 印表機名稱
-o media=列印紙張大小 "a4", "letter", and "legal"
最後面是放列印的檔案名稱

所以下次設定印表機名稱要設簡短一點Epson_Stylus_TX235

沒有留言:

張貼留言

文章有誤或有問題麻煩您留言告知! 謝謝您~~