圖書館盒

九月 5, 2014
Facebook
Twitter
圖書館盒的靈感是來自紐約大學藝術系系主任大衛‧達特(David Darts)博士的「海盜盒」。海盜盒是一種匿名行動檔案分享裝置,可讓任何人從手機、筆電或電腦上傳或下載檔案。當開發者後來打算將海盜盒加入平價的3G對WiFi路由器時,我便想到可以參考海盜盒來做出圖書館盒。

圖書館是知識分享的堡壘也是傳遞自由資訊的基石。不過我知道要說服圖書館使用這種叫做「海盜盒」的裝置並不是一件簡單的事。我研究海盜盒的程式碼,試著讓它能更廣受圖書館和教育者的青睞。其中,最明顯的修改就是移除匿名上傳檔案的功能。

那到底要如何使用圖書館盒呢?只要將你的檔案存在USB隨身碟中,將隨身碟接上圖書館盒並啟動電源,它就成了一臺無線數位下載分享器。你可以透過它分享任何東西,也可以串流視訊和音訊檔——它還支援串流高解析度的MP4影片到iPhone和iPad上,而使用充電電池做為電源可以讓它運作一整天。


材料


圖書館盒可以做什麼?

圖書館盒厲害的地方在於方便隨身攜帶而且低耗能。在某些網際網路不開放或限制的地方又需要傳送數位檔案時,有圖書館盒就解決了。

  • 不需透過網路即可傳送間諜檔案
  • 在派對上可將音樂和影像串流到任何人的手機
  • 在同學會或婚禮上分享照片和檔案
  • 去露營或是海邊玩時串流音樂
  • 架設匿名聊天室
  • 在網路使用受到監控、禁止或是不安全的國家分享資訊
  • 在祕魯叢林裡分享醫療資訊
  • 分享數位教科書給偏遠地區的學校
  • 以流動讀書館的方式分享電子書


第一階段 : 刷機為OPENWRT韌體 

第一步 makezine.com/go/openwrt下載T-P Link MR3020 路由器專用的OpenWrt韌TP-Link,(經Strubel修改後包括所需核心模組的OpenWrt韌體)。MR3020原先是一套$1200元,供3G USB裝置再多個裝置間分享的3G wi-fi路由器;這次韌體更新將讓路由器完成其他客製設定的準備。

第二步 將 LAN/WAN 埠旁邊的開關轉到 WISP 模式。

第三步 如果您的電腦使用wi-fi,請關閉wi-fi以使分享器連接至乙太網路。

第四步 使用乙太網路線連接路由器與電腦,並使用USB線連接至電源,接著開啟網路瀏覽器,輸入http://192.168.0.254

第五步 輸入預設使用者名稱和密碼(「admin」和「admin」)。

第六步 進入系統工具(System Tools )頁面→韌體更新並選擇您在步驟1下載的OpenWrt韌體。

第七步 完成升級後, MR3020將重新開機。請勿再重開機時關閉電源或移除路由器連線。

第一階段完成。此時,您的MR3020已更新至OpenWrt。

第二階段 :安裝海盜盒


您不需要懂程式指令也能安裝海盜盒; 只要簡單地遵守指示即可完成安裝。但如果您在過程中誤植了某些指令,以下的說明幫助您排除問題,讓您在Linux系統中不至於迷路。MR3020完成重新開機後,開始著手以下步驟。

第八步 在裝置上使用Telnet:
telnet 192.168.1.1
telnet 192.168.1.1(是的,這是正確的IP地址)

第九步 使用passwd指令設置您的註冊密碼。這將會開啟SSH :

在步驟10您將會進行MR3020網路設定/etc/config/network 以確保它能取得網路連線及安裝變項。您需要修改檔案中的4條指令; 其中兩項變更(有「dns」字樣的)將是所有LibraryBox共通的。其他2項取決於您的網路設定。您將需要設定以「option ipaddr」和「option gateway」為首的兩個設定。

「option gateway」的設定值是您路由器的IP位址。
「option ipaddr」的值則是您的路由器網域中可選用的IP位址。例:如果您的路由器是172.16.0.1,則這兩項指令會是:

option gateway ‘172.16.0.1’
option ipaddr ‘172.16.0.101’

另兩項需要改變的指令是listdns。除非您有一個充足的理由選擇其他伺服器,不然我推薦使用Google的DNS伺服器。在不選用Google伺服器的情況下,您大概也知道要如何進行以下設定。反之,請按照以下說明進行設定:

list dns ‘8.8.8.8’
list dns ‘8.8.6.6’

由於網絡設定方式和路由器差異很大,逐條說明每個設定是不可能的,但對Google的一些操作將會在您遇到問題時有幫助。

第十步 編輯網路設定 vi:

vi /etc/config/network

編輯 /etc/config/network ,以便設置一個MR3020的固定IP位址以及一個包含在此IP位址下的遮罩位址。我選擇使用Google提供的DNS,因為它快速又穩定,但您也可選用自己偏好的DNS或者OpenDNS。MR3020需要能連線網路以取得海盜盒運作所需的封包更新。這個步驟是安裝過程中出錯頻率最高的部分,因此請花點時間仔細的設定,使用您在步驟9中設定的值。

注意:如果您這時出錯,很有可能造成MR3020無法回復的設定錯誤。請小心。

您應該將 /etc/config/network 修改如下,也就是在步驟9中第二組有「 ipaddr 」及「 gateway 」的值。您不需要修改第一組中的任何參數:

config interface ‘loopback’
option ifname ‘lo’
option proto ‘static’
option ipaddr ‘127.0.0.1’
option netmask ‘255.0.0.0’

config interface ‘lan’
option ifname ‘eth0’
option type ‘bridge’
option proto ‘static’
option ipaddr ‘172.16.0.101’
option netmask ‘255.255.255.0’
option gateway ‘172.16.0.1’
list dns ‘8.8.8.8’
list dns ‘8.8.4.4’

例:如果您的路由器是192.168.0.1 (許多家庭式路由器的預設值)且被IP位址分配在192.168.0.X的範圍中,則設定值應該是:

option ipaddr ‘192.168.0.101’
option gateway ‘192.168.0.1’

重要的是, 在「區域網路(lan)」的設定介面中,「option ipaddr」會被設定成網域中目前位在使用中的值,且「option gateway」設定為您的路由器IP位址。

第十一步 關閉路由器電源,並且連接FAT格式的USB裝置。在海盜盒接下來的安裝過程中都不要移除USB裝置。

第十二步 開啟您電腦的wi-fi。

第十三步 用乙太網路線連接MR3020與路由器並重新連接MR3020的電源。等待數分鐘直到MR3020完成開機。在網路連線的狀態下,試著經由電腦SSH連線MR3020。

ssh root@172.16.0.101

您應該能使用在步驟10設定的IP位址登入。如果不能,用乙太網路線直接連接電腦和MR3020以檢查您的網路設定,並再確認步驟10的流程。MR3020應該在您的網域範圍中,使用的是您所設定的位址。

第十四步 使用Ping Google確認您的MR3020與網路正常連線:

ping google.com

如果您從google.com收到封包測試反應,那麼一切應該以準備就緒,可進行下一步。使用CTRL-C指令終止ping指令模式。如果您沒收到封包反應,請檢「/etc/config/network」檔、確認您的IP網域範圍、並確認所有防火牆皆已關閉,然後再試一次。

第十五步 安裝下列套組以將USB支援加到OpenWrt:

opkg update
opkg install kmod-usb-uhci
insmod uhci
opkg install kmod-usb-ohci
insmod usb-ohci

注意:  opkg install 可能會出現以下訊息:  installed in root is up to date。這不會有任何影響,也不是錯誤訊息。

第十六步 安裝海盜盒 0.3.2 :

cd /tmp
wget http://piratebox.aod-rpg.de/piratebox_0.3-2_all.ipk
opkg update && opkg install piratebox_0.3-2_all.ipk

注意:請耐心等待幾分鐘,等安裝完成。移除電源、拉扯USB線材或者任何形式的干擾都可能造成MR3020安裝失敗,雖然出錯時,您可在LibraryBox網站提供還原程序。

安裝完成後,移除MR3020與路由器的連線,移除電源MR3020,再次重新接回電源。此時您應該有一套正常運作的海盜盒,且能夠在新「海盜盒」的 SSID透過wi-fi收到MR3020發送的訊號。

第三階段 :安裝圖書館盒 

第十七步 至 github.com/griffey/Librarybox 下載 librarybox.zip 壓縮檔並存下來。

第十八步 解壓縮檔案。解壓縮檔為 librarybox 且有數個檔案和指令檔。

第十九步 將MR3020關機,移除USB裝置,並將USB裝置插入電腦。複製 librarybox 文件夾(整個文件夾,不只是其內容)到USB的根目錄。從電腦退出或移除USB,連接回MR3020,並再啟動MR3020。

第二十步 連接您的wifi到「海盜盒」 SSID,並再透過SSH連接MR3020 :

ssh root@192.168.1.1

然後輸入步驟9的密碼以登入。

注意: 這個位址與步驟13不同。海盜盒安裝將重新設定MR3020的IP。

第二十一步 進入MR3020 圖書館盒(librarybox) 位於USB裝置的目錄:

cd /mnt/usb/librarybox/

And run the LibraryBox install script:

./librarybox.sh

並且進行LibraryBox安裝:

 指令將複製必要的使用者介面(UI)文件至正確位置,並同時修改其他文件的相關參數。如果您想要取得指令的細節,且想要更深入了解,請到 librarybox.us/scripts.html

第二十二步 預設情況下,圖書館盒 v1.5 是與 Chatbox 同步安裝,部分使用者可能會想移除此部份。如果您希望移除Chatbox,請進行nochat指令:

如果您稍後改變心意,可透過 SSH連線MR3020,進到/mnt/usb/librarybox/,並且輸入指令:

./nochat.sh

If you later change your mind, SSH back in to the MR3020, navigate back to /mnt/usb/librarybox/, and run:

./chat.sh

第二十三步 大功告成! 再重新開機一次,您手上就有一台圖書館盒了。當MR3020完成重新開機,您應該會看到名稱為的「圖書館盒 -自由資源!」的SSID。透過所有wifi裝置連接到圖書館盒,開啟瀏覽器,您應該會看到圖書館盒主首頁,且能瀏覽和下載文件。

使用


 上傳內容就跟關閉RM3020一樣容易,移除USB裝置並插入電腦,將所需檔案存入USB裝置的 /Piratebox/Share 文件夾。任何在那個文件夾中的資訊皆可經由圖書館盒分享。我推薦以從收藏古騰堡計畫的藏書或線上音樂、電影開始分享。我有一個示範的共享資源,可在LibraryBox網站的 librarybox.us找到。

在荒郊野外也能使用圖書館盒,只要將你的裝置連接到名稱為「LibraryBox — Free Content!」的SSID,接著用瀏覽器打開任何網頁。圖書館盒具有限制網路門戶的功能,會將使用者導向其內部網頁,內建的聊天室功能讓使用者以匿名的方式進行溝通。

我已經在手機、筆電和平板上測試過圖書館盒的功能,發現到只要任何具有Wi-Fi和瀏覽器的裝置都能連接到圖書館盒並下載檔案。

如果你想為LibraryBox配置不像鏤空書籍作成而且更時髦一點的保護殼的話,我為它設計了兩款可用3D列印製作的外殼:一款比較小,適合尺寸較小的USB隨身碟,如Sandisk Cruzer Fit;另一款比較大的,則適合體積較大的隨身碟。兩款外殼設計檔我都放在thingiverse.com/griffey上。

那麼,您想怎麼使用這個價值1200元,能放進口袋隨處走的數位圖書館呢? 就像有無數資源可共享一樣,這個問題的答案也有無限可能:在訪客逛藝廊時供他們下載藝術照片、在當地音樂節供大家下載音樂,或是上傳研討會用的簡報檔。在任何有限或甚至沒有網路的環境下,圖書館盒都能滿足分享數位檔的需求。

在這個專案早期,我收到一個來自網路因政治因素受到嚴密監控國家的英文老師來信。在這個國家,上層階級可透過購買VPN而免受監控,而經濟弱勢的學習者則受限於網路控制,無法取得教材。有了圖書館盒,教師能使用當地、匿名方式為最需要這些資源的人提供適合的資源。

全世界大部分國家的無線網路覆蓋率並不高。但隨著手機愈來愈普及,圖書館盒能將教育、醫療和娛樂資訊帶到手機普及率大於網路普及率的地區。我們現在生活在一個愈來愈緊密連結的世界,但是將資訊帶到偏遠地區仍是一個議題,而LibraryBox可以幫我們填補這個鴻溝。

2.0版本

圖書館盒2.0版本的計劃近日透過Kickstarter網站完成集資,目前正在和馬蒂亞斯‧史楚博(Matthias Strubel,海盜盒主要開發者)密切合作開發中。在2.0版本中升級了許多地方,包括SFTP內容更新、網狀網路內容共享、新款Bootstrap使用者介面,以及大幅簡化安裝過程。歡迎到librarybox.us追蹤圖書館盒的動態。

特別感謝大衛‧達特(Dr. David Darts)、馬蒂亞斯‧史楚博(Matthias Strubel)、麥特‧聶耳(Matt Neer)、羅斯‧辛格(Ross Singer)和安卓美達‧耶頓(Andromeda Yelton)。

(譯:江惟真、張雅涵)
[原文]

Social media & sharing icons powered by UltimatelySocial