- 辦公室裡那一百零一台的 USB 介面印表機,每個人要列印的時候,總是要把線拔來拔去,拔到線都快斷了。
- 同事把 USB 隨身碟借走了,我們急著要拿回來用的時候,卻不知道插在哪一台電腦上面。
- 正準備用 USB 介面的掃瞄器來掃瞄照片,卻發現電腦上的 USB 埠已經插滿了,而且還不能拔下來。
- 好不容易把新買的 USB 多功能事務機裝好,要用的時候,這才發現 USB 線不夠長。
若以添購硬體的方向考慮,我們可以尋找「網路 USB 多用途分享器」,如: ZOT SU-201、ZOT SU-211、ZOT SU-401、Eusso UPS1211-IP。
能選擇的產品真的不多,這邊一定要推一下 零壹科技,雖然說這塊市場不大,他們始終持續的在維護舊產品的相容性及開發新產品。
若要用軟體來完成,以關鍵字「USB over LAN」、「USB over Network」、「USB over Ethernet」、「USB over IP」進行搜尋,也有許多套軟體提供同樣的功能,如 KernelPro KernelPro、Eltima USB Network Gateway、FabulaTech USB over Network、SimplyCore USB Redirector。
偏偏 Server 端都只支援 Windows,也僅有少數的 Client 端額外支援 OS X 與 Linux,更別說還有著試用期 15 ~ 30 天不等。
難道,真的都沒有支援 Linux 的 Server 端產品嗎???
有! 我們這次要使用 VirtualHere USB Server,就是目前唯一的答案。
他們的 Server 端支援 Raspberry Pi、Beagle Board、Odroid、OpenWRT、Ubuntu、openSUSE、CentOS 及 Android。Client 端支援 Windows、OS X、Ubuntu、Raspbian、Debian Whezzy、CentOS 及 openSUSE。
另外,Synology、QNAP、ASUSTOR 及 NETGEAR 等廠牌的 NAS 也開始加入這個套件,支援的機型請參考 VirtualHere - Network Attached Storage Devices。
接下來,我們就以 CentOS 7.0 x64 為 Server 端,以 OS X 10.10 與 Windows 7 Ultimate x64 為 Client 端來實作。
注意事項
- VirtualHere USB Server 試用版沒有使用時間的限制,但是同時間只能連接一個 USB 設備,需要同時使用多個 USB 設備的話,請洽 VirtualHere 官網 購買正式版的授權。
Server 端安裝
先複製 CentOS 7 的 Server 端 下載連結。
回到 CentOS 裡下載。
wget http://www.virtualhere.com/sites/default/files/usbserver/vhusbdc764
加入執行的權限。
chmod +x ./vhusbdc764
接著執行這個檔案就可以了,要停止服務的話,可以按 Ctrl + C。
sudo ./vhusbdc764
可以加上 -h 顯示所有可用參數。
./vhusbdc764 -h
Client 端操作
下載 OS X 的 Client 端 與 Windows 64bit 的 Client 端。
在 OS X 裡,掛載 VirtualHere.dmg 之後,裡面只有一個 VirtualHere.app 檔案。
複製到「應用程式」裡面來執行。
這時,可以看到 Server 端分享出來的 USB 隨身碟。
不過,它也會提醒我們使用的是試用版,放心! 就只是提醒而已。
在 USB 隨身碟上面按右鍵,選擇「Properties」。
可以看到它的相關訊息,以及是否有人正在使用中。
要連線使用隨身碟的話,就點選「Use」。
由於我們是第一次使用,所以程式會提示我們要安裝驅動程式。
依照它的指示順序操作即可。
程式就會顯示隨身碟正在被我們使用中。
要停止使用的話,同樣用右鍵打開選單,再點選「Stop using」即可。
在 Windows 裡執行之後,同樣會顯示 USB 隨身碟出來。
也會提醒現在用的是試用版。
第一次執行,Windows 同樣也需要安裝驅動程式。
在右鍵選單點選「Use」,同樣顯示「in use by you」。
回到 OS X 裡,則會看到隨身碟正在被 IP 為 192.168.88.62 的電腦使用者,再也不會搞不清楚到底是誰在使用了。
就像是在本機插上這支 USB 隨身碟一樣,方便的存取檔案。
異常排除
- 出現「error while loading shared libraries: libgtk-x11-2.0.so.0: cannot open shared object file: No such file or directory」的錯誤訊息。
先輸入 yum provides \*/libgtk-x11-2.0.so.0 來查詢它是屬於哪一個套件的函數庫。
我們發現是屬於 gtk2 函數庫後,再用 yum -y install gtk2 把它安裝到系統裡。
中間過程省略 ...
- 出現「Unfortunately VirtualHere has crashed.」的錯誤訊息。
VirtualHere USB Client 程式當掉了,重新執行一次吧。
參考資料
更新紀錄
- 2014/11/13 撰文。
我不是很了解,client端的設定過程並沒有任何authentication的步驟,那client端如何知道server端在哪裡?@@
回覆刪除官方並沒有說明背後的技術原理,或許是使用類似 mDNS、自訂協定之類的技術吧 ...
刪除