研究了一下發現/etc/init.d/pcscd的服務完全沒辦法啟用,手動restart也沒有任何反應。而執行sudo pcscd -f時還會出現下列錯誤訊息:
00000000 readerfactory.c:965:RFInitializeReader() Open Port 0x200000 Failed (USB:0CA6/0010:LIBUDEV:0:/DEV/BUS/USB/004/004)
00000033 readerfactory.c:275:RFAddReader() CASTLES EZ100PU init failed.
00000037 hotplug_libudev.c:377:HPAddDevice() Failed adding USB device: CASTLES EZ100PU
此時上網搜尋了一下Google順利找到解法,原來是Ubuntu 11.04內source tree中的pcscd與libpcsclite1預設版本都是1.7.7,與pcsc_scan的pcsc-tools中版號不太一樣。執行pcsc_scan -V可以得到下列版本訊息:
PC/SC device scanner
V 1.4.17 (c) 2001-2009, Ludovic Rousseau
Compiled with PC/SC lite version: 1.5.5
只要手動下載pcscd-1.5.5-*與libpcsclite1-1.5.5-*安裝降版號即可。
pcscd-1.5.5-3ubuntu2.1 for Ubuntu maverick-updates
libpcsclite1-1.5.5-3ubuntu2.1 for Ubuntu maverick-updates
記得到/etc/apt/preferences鎖住版本,否則每次更新跳出來就會煩你一次。
Package: libpcsclite1
Pin: version 1.5.5*
Pin-Priority: 1001
Package: pcscd
Pin: version 1.5.5*
Pin-Priority: 1001