[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)

不知道現在還有多少人有在使用 LinkStation 或玄箱等類 nas 產品,小弟最近入手了家中第四台玄箱(嚴格講起來算三台,因為其中一台是 LinkStation),趁這個機會稍微做些介紹,並包含一些拆機照片。

不管是玄箱,還是 LinkStation,或甚至是 NAS-01G,這些產品都已經問世有好幾年的歷史,但規格上卻一直沒有很明顯的改變(當然高階 nas 的規格也可以很嚇人),不像個人電腦每隔半年一年就汰舊換新。

玄箱這東西,說穿了是個跟這幾年很流行的一個名詞所產生的產物,「內嵌式系統」即使不是念本科系的,也應該都聽過這個名詞,因為內嵌式系統早已融入我們日常生活,甚至多數人已經正在使用內嵌式系統所帶來的便利性而不自知。

儲存設備是在電腦周邊裡比較不會退流行的設備,只要速度不太慢,使用上也夠方便,大都可以跟電腦系統切開來,儲存歸儲存,這也是為何小弟只要有機會,就會收購中古玄箱的原因,而且玄箱的作業系統就是 linux,活用的彈性相對就很大,效能也不差。(會不會就因為對多數人來說 linux 不好學,但 linux 又可以做到很多功能,所以才叫「玄」箱」?)

小弟是 linux 肉腳,設定也都是看網路上一步一步照著做的,所以在這篇小弟並不會介紹關於玄箱 linux 系統的設定方式,這個部分已經有人分享過了,話說小弟現在只要在 debian 想更新核心至 2.6,玄箱就會變成無法開機,有沒有人可以救救小弟啊,超想用 nfs 的,現在只要做 apt-get update,都會自動以新版的套件來更新,不得不把核心更新到 2.6,但問題多多啊。

[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)
這是玄箱的包裝盒,當然不是全新的。

[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)
就如同 Toro 的好朋友 Kuro 一樣,都可以叫小黑。

[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)

[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)

[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)
產品的外觀就如同印在上面的名稱一樣,黑盒子。

[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)
正面的樣子,相信大多數人都知道面板是鏡面的,但卻又捨不得把那張藍色的膜給撕掉。

[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)
機殼的背面,有散熱孔、Reset 按鍵、網路線插槽與 USB。

[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)
外殼拆開的樣子,第一個看到的就是機板。

[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)
把機板整個翻開來看,這就是玄箱的內部所有構造,看不出來那裡玄對吧?

[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)
將每個元件都拆解。

[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)
這個是玄箱的電力來源,交換式電源供應器,一樣可提供 5v 跟 12v 的電壓,但沒辦法像一般桌機用的提供大功率輸出。

[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)

[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)
這個看起來像八爪魚的是電源線與散熱風扇。

[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)
玄箱所採用的風扇是 ADDA 這家的,算是好料的風扇。

[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)
小弟的習慣是,買來的中古玄箱,都會自行把風扇給換新,因為不知道前一個使用者是怎麼操玄箱的,不想等噪音出現時才來換風扇。這個 ADDA 的風扇,講起來還真的是不便宜,也不是挺好買到,那麼,可以自己更換同規格其他品牌的風扇嗎?答案當然是可以的,小弟也有換過一般同規格的風扇,一比較之後就馬上知道為何 ADDA 的風扇比較優,這筆錢是省不得的。

[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)
接下來看看機板。

[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)
這顆四四方方的就是玄箱的核心,也就是 CPU,這顆是 Motorola 的 MPC8241,是 PowerPC 的一種,使用精簡指令集,早期的蘋果電腦曾經擁護 PowerPC 很長一段時間,工作時脈為 266MHz,應該不會有人以為只有 x86 系列才叫做 CPU 吧?左上角那一顆是 DRAM,ELPIDA 的記憶體也算是名牌。

[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)
上方 USB 插槽的右邊黑黑的是網路線接頭,中間那個台達的 IC 是網路轉換模組。

[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)
這顆 AMTEL 的晶片小弟認為在玄箱中扮演的重要性僅次於上面講的 MPC8241,這晶片本身就是一個單晶片,負責玄箱所有的燈號與按鍵的控制,玄箱的電源開機與關機,也是由這晶片來負責,也有看門狗計時器,隨時監控玄箱的狀態,風扇的轉速也由他控制,MPC8241 內建兩組 UART,其中一組就專門與這晶片進行溝通。

[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)
這個是 IDE 控制晶片,當然就是接硬碟用的,不過資料手冊中並沒有描述支援硬碟容量的上限。

[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)
這是機板的背面。

[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)
右上方那個大家應該都很熟啦,就是俗稱的螃蟹卡,支援到 giga 速度。左下方的是早期號稱最穩定速度最快的 USB 2.0 控制晶片,由 NEC 製造。左上方的是 flash 記憶體,容量為 4MBytes,玄箱的開機程序與基本的 linux 核心都存在這裡。

[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)
各位有沒有看到?機板上寫著大大的 Buffalo 字樣,這還不打緊,原來玄箱跟 LinkStation 都是台灣製造的啊。

[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)

[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)
來介紹另一個給玄箱用的配件。

[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)
這東西叫 Kuro-SATA,就是可以讓玄箱也可以安裝目前一般 SATA 硬碟的轉接卡。

[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)
因為玄箱已經行之有年,所以設計是使用 IDE 規格的硬碟,但現在幾乎是 SATA 硬碟的天下,同樣價錢下,SATA 硬碟可以買到 IDE 兩倍容量,所以才推出這樣的轉卡。如果不想這樣轉接的話,就得採購更高階的 Kuro Box Pro,就是內建 SATA 介面,但價位不討喜。

[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)
裡面的手冊就一張紙,主要就是說明如何安裝。

[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)
轉卡本體,相信市面上找不到如此設計的轉接卡。

[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)
因為玄箱就這麼小一台,內部空間更是幾乎設計得剛剛好,市面上所有轉卡應該都不適用於玄箱。

[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)
SATA 接頭與 IDE 接頭跟我們一般常見到的轉卡方向是不一致的。另外有沒有發現,連轉卡都是台灣製造的。

[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)
這個晶片就是專門負責 IDE 與 SATA 轉換,SATA 可支援 1.5G 與 3G SATA 規格,同樣地,晶片的技術資料都沒有說明可支援的硬碟容量上限。

[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)
這是另一個順便入手的東西,Hitachi SATA 1TB 硬碟。

[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)

[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)
製造日期為今年四月,上面也提到此硬碟的耗電量為 10.5W,算省電的硬碟。

[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)

[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)
再來就要把這顆 Hitachi 1TB 的硬碟安裝到玄箱裡了。

[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)
SATA 端的接頭先安裝至硬碟。

[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)
其實要先把硬碟鎖在硬碟架上啦。

[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)
當大家看到這篇文時,小弟已經把這顆硬碟給退貨了,因為這顆硬碟裝在玄箱中,運轉時玄箱會整台轟轟叫,震動很大,連 ADDA 的散熱風扇都比硬碟小聲。

[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)
看到的應該是像這樣子。

[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)
把硬碟架裝到玄箱中。

[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)
硬碟電源線的部份。

[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)
看到這張,應該就可以知道為何這張轉卡的設計是兩種不同介面以 90 度方式呈現。

[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)
小弟最後是把排線折成這個樣子,是不是都設計地剛剛好?

[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)
這是機板電源部分,風扇與硬碟的電源都是從這裡分接出去的。

[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)
這是開機的樣子,LINK/ACT 亮藍燈表示目前是 giga 的速度。

[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)
亮綠燈表示 100Mb 的速度。

[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)
亮紅燈就是最遜的,10Mb 的速度。

接下來小弟要來製作 jtag 線,有玩 ARM 或是其他內嵌系統的,應該都聽過 jtag 這個東西,jtag 這個介面已經有快二十年歷史了,主要是應用於晶片本身(晶片外部裝置也可以)的 debug 與監控晶片狀態,現在的應用也越來越多,包括下面會提到的 flash 燒錄。

[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)
要製作 jtag 線,只需要這幾個零件即可,會用烙鐵的人應該都可以很順利完成。

[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)
小弟用烙鐵的技巧很兩光,所以焊成這副德性。

[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)
不知道有沒有人想過,jtag 本身已經是個介面了,那為何最後是做成並列埠的樣子?原因很簡單,因為既省錢又可以達到目的,小弟認為並列埠可衍生出的應用並不會比串列埠要少,並列埠一組 8-bit 的 data bus,與其他一些控制點,所以就可以很容易藉由軟體寫作的技巧,自行把並列埠規劃成相容其他標準介面。

[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)
這是最後完成的樣子,有蓋子蓋起來,別人就不知道裡面焊得有多爛。

[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)
在玄箱的機板上,要焊上 2x8 的接腳,R67 這個點也要給他短路,這樣才可以從這個介面提供 3.3v 的電源給剛做好的線材。

[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)
線接上去的樣子,並列埠就接到桌機上,執行 jtag tool,並搭配玄箱適合的 bootloader 或 linux 核心,燒錄完後玄箱就有如換血一般。使用玄箱的過程中會接觸到 jtag,大都是想自行在 linux 系統中更新軔體不幸失敗,就如同我們桌機更新 bios 失敗一樣,電腦是開不了機的。

小弟目前是有自行更新了較新版的 U-Boot 與 kernel,那麼用這個 jtag 燒錄 flash 速度如何呢?小弟只能說,不是有夠慢而已,是慢到想殺人,讀取 flash 的速度大約是 312bytes/sec,寫入 flash 的速度大約是 36.14bytes/sec,各位沒有看錯,單位是「bytes」,所以小弟更新一個約 2.6MB 的 kernel 要多久?光是燒錄的時間就要 21 個小時左右,而且燒錄完還要做 verify 的動作,這個部分要兩個半小時左右,所以燒錄個新核心,總共需要 23.5 個小時,要命吶!

市面上當然有較高速的 USB jtag 介面可購買,但價錢也是不討喜,如果只是為了要燒錄玄箱的 flash 買一組也是根本划不來,所以只能使用低成本的 Parallel jtag 來達到同樣的目的。

上面說的使用 Kuro-SATA 搭配 Hitachi 1TB 的硬碟,玄箱當然是可以抓到全部的容量,若不是這顆硬碟的震動太大,不然也不會想退貨。

下一次小弟會加入 serial port 的心得,讓玄箱可以不藉由網路連入方式,使用 console 的方式來直接與玄箱做溝通,當然要先測試成功啦。


2009/6/15 新增

下面要介紹的是讓玄箱可以用「本機登入」的方式來操作玄箱,什麼叫「本機登入」?大家每天使用個人電腦的習慣就是一種本機操作的作法,互動式設備(泛指螢幕、鍵盤、滑鼠等設備)就直接連結在電腦主機上,透過鍵盤與滑鼠輸入裝置,主機經過一些運算的結果,就會由螢幕輸出。

當在使用玄箱時,不管是在 EM mode 或是進入已安裝好的系統,都要先等 Power 燈號不再閃爍,表示玄箱已開機完成,再由另一台電腦,通常是以網路連線的方式,telnet 或 ssh 登入至玄箱中,這種方式就稱為「遠端登入」,也可以說遠端控制、遠端遙控之類的。

如果玄箱的系統本身是沒有問題的,當然就不用去在意到底是要「本機登入」還是「遠端登入」,因為結果都是一樣可以用的。

有安裝過 linux 的朋友(不管哪一家的),應該都會發現,在開機程序時,螢幕是全文字畫面,然後會顯示一大堆看不懂的英文,最後才出現提示輸入帳號與密碼的文字。

重點就是在於那些看不懂的訊息,這些訊息包含了 linux 載入核心的過程、驅動了那些硬體裝置、mount 了那些磁碟、啟動了那些服務,甚至在進入系統後,網路的連線有異動或是有 usb 裝置熱插拔,系統都會自動顯示相關訊息,因為玄箱也是 linux 系統,所以當然也會有這些資訊,多數人都是使用遠端連線的方式登入玄箱操作,自然就不曾看到這些訊息。

這下有個問題來了,我們每天在用的個人電腦,會接上螢幕滑鼠鍵盤,一直都認為這是很天經地義的事情,但玄箱能夠與外界溝通的,就只有一個網路接頭,玄箱又沒辦法像個人電腦一樣接上螢幕滑鼠鍵盤,哪有可能做到本機登入這回事您說是吧?要是哪一天玄箱的系統出了問題,進不了系統,就沒辦法遠端連線,我們使用者就會跟瞎了眼一樣,玄箱的狀態完全無法得知,然後最後通常都會有一個結論,就是「玄箱壞了」,但其實這個結論還下的太早。

玄箱提供了一個 console 連線,其實正確地來說應該是玄箱的 bootloader 在啟動時就會同時驅動 MPC8241 的 UART0,以 RS-232 的傳輸協定,可以將玄箱的所有狀態,藉由 UART0 傳輸出去,如果另一台電腦有執行終端機程式,這時這個終端機程式就可視為玄箱的螢幕與鍵盤了,也同等於本機操作的效果。

要把玄箱的 console 接出來,還要先製作一些電路才可使用,請各位接著看下去。

[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)
這是一個很基本 RS-232 訊號的轉換電路,網路上隨便都可以找到一狗票相關的電路圖,使用的 IC 是 MAX3232,跟 MAX232 是一樣的東西,只是差別在 MAX3232 本身使用 3.3v 的電壓就可以驅動。

[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)
這是背面的樣子,左邊的接頭將會接到玄箱的機板上,右邊的接頭會延伸成 RS-232 的接頭。

[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)
這是另一個版本的板子,主要差別就是這個是使用電解電容,上面那個是使用陶瓷電容,結果可想而知,電解電容這麼大顆,根本無法塞進玄箱裡。

[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)
MAX3232 的手冊裡是說,要使用有極性的電解電容,但實際上使用無極性的陶瓷電容也可以。

[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)
這是 RS-232 的接頭,從轉接板接出來。

[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)
先與轉接板合體一下。

[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)
這時出現了電鑽與銼刀,話說這兩樣原本是小弟做鋼普拉用的工具,沒想到現在會派上用場。

[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)
為的就是要把玄箱的背板開一個大洞。

[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)
剛好沒有把網路卡號給破壞。

[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)
目的就是為了把 RS-232 的接頭給固定住。

[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)
背面鎖上去的樣子。

[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)
背板正面的樣子,看起來還挺像一回事的對吧?

[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)
再來就要看看機板了,要自己焊上這四支腳的針座,這四根就是 console 的引出線路,R76 要給他短路,這樣才可以在終端機程式裡使用鍵盤輸入,如果 R76 沒有短路也是可以看到玄箱的狀態,但就只能看不能輸入。

[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)
最後全部接起來會像這個樣子,因為這個端子其中有一個針腳就有提供 3.3v 的電壓,這也是為什麼轉換 IC 要用 MAX3232。

[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)
確定 RS-232 背面的每一個線路都不會跟下面的電源供應器有接觸到的機會,不然的話就精采了。

[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)
玄箱的外觀看起來沒什麼改變。

[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)
後面多了個 RS-232 的接頭,不知道為何看起來還滿屌的。

[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)
再來要準備一條 RS-232 的傳輸線(要跳線),右邊的是 USB 轉 232 的線,因小弟都使用筆記型電腦,所以會需要,一般桌機就免了。

[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)
最後全部連線起來的樣子。

在前面有提過,MPC8241 這個 CPU 已經有內建兩組 UART,其中 UART0 就是拿來作 console 用途,另外一個 UART1 則是拿來與 AVR 晶片(就是上面有介紹過那顆 Amtel 的晶片)作溝通。

到這邊,只不過是要讓玄箱可以 console 連線的事前工作罷了,原先就是把線都從玄箱的縫隙拉出來,用是可以用,就線路會拉的亂七八糟,所以最後才決定乾脆在背板開一個洞,直接把 RS-232 接頭給鎖上去。

好,事前工作都好了,各位應該都還是很好奇,玄箱拉 console 到底能幹些什麼事情,小弟下面會貼一些裁圖,作些簡單的說明,使用遠端連線的都是看不到的喔。

[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)
各位看到的這個畫面,小弟已經將玄箱的 bootloader 更改為 U-Boot,這個就是玄箱的開機畫面,U-Boot 的功能相當多,小弟在此先不介紹 U-Boot,在畫面下方則是 U-Boot 提供的一個功能,可以中止玄箱的開機程序。

[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)
這個則是正常的開機程序,第一行 Booting image at ffc00000,這個 0xffc00000,對於 CPU 來講,表示的就是一個記憶體位置,而這個記憶體位置,指的就是已經在 flash 記憶體內的 linux 核心。如果 bootloader 還是使用玄箱裡預設內建的,就不會有上一個畫面,而是直接從這個畫面開始。

[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)
這樣的畫面對於 linux 的使用者來說再熟悉不過了,硬碟的狀態,網路的狀態都一覽無遺。

[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)
這個畫面有一個重點,小弟在硬碟裡安裝的是 2.6.25.1 核心,但是玄箱本身 flash 的是 2.4.17_mv121 核心,上面也有提到,玄箱是從記憶體位置 0xffc00000 開機的,照理來說,開機後應該是 2.4.17_mv121 的核心,這個部分就是 2.4.17_mv121 核心的功能,原先的開機程序即將完成時,卻發現在硬碟中有 vmlinux.bin 這個檔,這時就會重新導向改由這個核心重新開機,最後開機完成,就是 2.6.25.1 的核心,所以玄箱開機會變成兩倍時間,由 console 就可以得知為什麼了。

[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)
通常較新版的核心,都會提供較多的功能,所以開機過程的訊息比舊核心還要多。

[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)
這個畫面就表示已開機完成,中間的部份 Starting 開頭的就是啟動了那些服務。最下方的 ttyS0 就表示現在是要本機登入了。

[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)
這是用 PieTTY 連線的畫面,用 ps 指令看一下狀態,TTY 那一欄顯示 pts 就表示現在是以遠端連線方式。

[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)
不信的話再到終端機程式看一看,TTY 那一欄顯示 ttyS0 就表示本機登入。

[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)
如果同時本機登入與遠端登入呢?那就是會同時顯示 tty 與 pts。

[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)
這是稍微惡搞,同時開啟了五個遠端連線,所以會顯示 pts0 ~ pts4 的編號。

看到這邊,不知道各位是否可以感受到使用 console 所帶來的好處,小弟再舉一個例子,在作玄箱的網路設定時,大家應該都有過這樣的經驗,把玄箱的 ip 設定好了,可是卻忘記在 /etc/hosts.allow 作開放的動作,這時就會做出自己的玄箱自己卻無法遠端登入的蠢事,就要重新進入 EM mode,手動編輯 hosts.allow,接下來,啥?!vi 不會用怎麼辦?只好把 hda1 重新格式化,重新把別人做好的 debian 給解 tar,一切重新來過。

小弟在本文一開始時,提到升級至 2.6 版的核心會造成玄箱掛掉的情況,小弟也藉由 console 顯示的訊息,看到了玄箱掛掉的那一行訊息,雖然不是很瞭解為什麼會發生,但總是有個訊息可以參考。

下一次,小弟會分享已經升級成功的 debian etch,核心升級的問題,過去已經困擾小弟很久,現在已經解決了大部分問題,目前小弟正快樂使用 2.6.25.1 的核心,小弟一直很想使用的 nfs 服務也已經正常掛載使用中。


2009/6/21 新增

這一次小弟要分享的是在玄箱上使用 debian 作業系統與核心版本會碰到的一些問題,小弟必須要再強調一下,小弟是 linux 白痴,很多資料都是從網路上找來的,所以觀念上小弟自知並不紮實,如果有小弟說錯的部份,歡迎大家指正。要不是希望把玄箱利用得好一點,小弟這輩子大概也不會這麼認真去學習 linux 了。

雖然本文主要還是介紹玄箱,現在這個第三部分的介紹卻要講作業系統,小弟相信接下來所講的並不一定只適用於玄箱,只要是使用 linux 的環境,很多觀念應該都可以通用,就請各位斟酌情況了。

大家都知道,在玄箱上使用的作業系統是 debian,小弟現在不討論為什麼玄箱使用 debian,而不用其他的 linux 作業系統?而是要來討論 debian 使用上會碰到的一些問題。

多數的玄箱使用者,只要會使用 apt-get 這個指令,就幾乎可以把自己所需要的套件給安裝好,讓玄箱發揮最大功能。但為何很經常聽到有人說原本好好的系統,現在想要更新卻不行了,很多套件都不能用了,甚至有的一更新後,玄箱就掛了?其實這麼多的問題,大都只有一個原因,就是「來源名單」已經不能使用了。

所謂的「來源名單」指的是 apt 的 sources.list 這個檔,裡面就是描述系統中需要的檔案放在那些網站,當指令下 apt-get install 或 apt-get update 時,系統就會依照名單裡所設定的伺服器去尋找套件來安裝或更新,那為什麼原本可以更新,現在卻不能更新?接下來我們就要先了解 debian 的版本。

就如同 windows 一樣,debian 也是有發行過很多版本的,目前最新的 windows 是 windows 7,debian 目前最新的是 6.0,下面的表先看一下:
發行狀況代號版本
woody3.0
sarge3.1
oldstableetch4.0
stablelenny5.0
testingsqueeze6.0

就像 windows vista,其實就是 windows nt 6.0 的意思,debian 也有為每個版本取名,所以當有人跟你說他使用 debian lenny,這時你應該就要馬上反應其實 lenny 就等於 5.0 版的意思,比較重要的是發行狀況的那個地方,是用一個比較籠統的名詞來代替真正的版本,像目前的「穩定版」,是等於 lenny,但目前「舊的穩定版」是 etch。在過去,etch 也曾是「穩定版」,sarge 也曾經是「穩定版」,就像大部分的軟體公司一樣,軟體隔一段時間就要改版,當然 debian 也不例外。

假設今天您的 sources.list 裡面寫著:
deb ftp://ftp.dti.ad.jp/pub/Linux/debian stable main contrib

那麼,裡面寫的 stable 到底是指 debian 的哪一個版本?答案是,看目前 debian 發行的「穩定版」是哪一版,如果是今天(指 2009/6/21),stable 就是 lenny,也就是 debian 5.0。如果是在去年,stable 就有可能是 etch,也就是 debian 4.0,在未來的不知道什麼時候,stable 指的就會是 squeeze 了。

所以這樣就會發生一個狀況,如果你的玄箱是好幾年前安裝設定好的,那個時候的穩定版是 woody,然後你在今天心血來潮想要更新一下系統的套件,也許下 apt-get update 時是會成功的,但是在更新套件時卻出現一堆的錯誤訊息,或者是更新後玄箱重開機就掛了,這是因為,以今天的日期來講,穩定版指的是 lenny,已不再是往年的 woody,所以就造成了你在舊版的作業系統上安裝了過於新版的套件,系統就會出現不穩定的情形,接下來會發生什麼事,也沒人說得準。

那如果說,把 sources.list 改成這樣:
deb ftp://ftp.dti.ad.jp/pub/Linux/debian woody main contrib

這樣子寫,當然是對的,我不希望我的系統一不小心就自動升級,所以我強制永遠使用 woody 這個版本,但是還要考慮到另一個問題,woody 這個版本已經太舊了啦,舊到所有的 mirror 都下線了,所以會發生當你下了 apt-get update 時,會顯示路徑找不到的錯誤訊息。

那這樣子怎麼辦?升級了系統有可能會掛掉,不升級我將來想安裝系統中沒有的套件也會變成無法安裝,這樣就變得兩難,升不升級,都會有問題。

先提供一下堅持不想升級作業系統的作法,雖然全世界的 mirror 網站都只保留比較最近的版本,真的要使用舊版本,還是可以的,因為還有這個網站可以使用:
http://archive.debian.org/

並把 sources.list 改為:
deb http://archive.debian.org/debian woody main contrib

這時你的玄箱又可以像以往一樣,可隨時更新,可隨時安裝套件了,只不過 archive 的網站數量很少,頻寬相對也較低,下載的速度比較慢,小弟是用比較暴力的作法,把 archive.debian.org 這個站 woody 的版本,powerpc 平台的套件給他全部下載回來,所有的套件都直接放在玄箱的硬碟中,sources.list 用這樣的寫法:
deb file:/mnt2/debs_woody/debian woody main contrib non-free

apt 的來源不限定是網站,也可以是本機的硬碟,這樣子,玄箱就永遠變成一台 woody 版本的作業系統,所有 apt-get 相關的指令也都可以正常使用,唯一的不同,就是網路連線變成本機檔案,所有的套件也都有,以後就不用再擔心版本升級的問題。

[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)
最後一行的 apt-get upgrade 零錯誤訊息應該是大家的夢想吧。

另外一個是升級作業系統的作法,網路上還可以下載到日本人做好的 sarge image,解開來玄箱就直接變成 sarge 作業系統,但是,sarge 版本也已經太舊了,各 mirror 站也都已經下線,安裝新套件肯定也是會出問題的,所以還是得想辦法升級到 etch 版本。

小弟從 sarge 升級至 etch 的方法如下(大家都用過玄箱,詳細步驟就沒寫了):
1. 從 http://www.genbako.com/ 下載 sarge 版的 source,直接解 tar,並重新開機。
2. 這一步可做可不做,從 http://www.genbako.com/ 下載最新的核心,並解開至對應的路徑中。
3. 把 sources.list 改成:
deb http://security.debian.org/ oldstable/updates main contrib non-free
deb ftp://opensource.nchc.org.tw/debian/ oldstable main contrib non-free
deb ftp://debian.linux.org.tw/debian/ oldstable main contrib non-free
deb-src ftp://opensource.nchc.org.tw/debian/ oldstable main contrib non-free
deb-src ftp://debian.linux.org.tw/debian/ oldstable main contrib non-free
4. 進行 update、upgrade、dist-upgrade,重開機後,你的玄箱就變成了 etch 作業系統,小弟試過,成功率 100%。

以上是小弟最後整理出來最簡易的步驟,小弟也順道提供了自行製作的 etch image,直接在玄箱中解開即可,玄箱重新開機就是 etch 作業系統。
http://renz.myweb.hinet.net/kurobox/debian-etch-2.6.25.1-kuroHG-20090621.tgz

其實重點還是在 sources.list,因為在今天時 oldstable 就是 etch 版,所以還可以順利升級成功(debian 的系統升級好像要一版一版升,小弟不確定,但實務上好像是要這樣子做才會成功),如果哪一天 squeeze 變成了穩定版,etch 就會被踢掉了,你的來源名單也就跟著失效了。

好,既然都可以升級到 etch,那就乾脆給他升級到 lenny 好了,不過很不幸地,小弟套用上面的作法是不會成功的,原因不明,而且玄箱就會變成開不了機,用 console 去看是會停在這個畫面:
[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)

有個日本人成功在玄箱上安裝 lenny,網址在這裡:
http://www.revulo.com/kuro-box/Debian/lenny.html

步驟也滿簡單,小弟跟著做一次就成功,不過作法上有點不一樣的是,他是先用 2.4.17 的核心,再改成用 hda3 來開機,所以分割區要做成四塊,這個比較像過去 linkstation 大家建議的作法。
[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)

然後小弟也嘗試著繼續升級至 squeeze,也順利成功了,就直接把來源名單裡寫成 testing 就可以了。
[分享] 老調重彈 - 玄箱(追加 console 連線心得、追加作業系統使用心得)

如果只是想把玄箱當成很基本的檔案伺服器,其實用 woody 就好了,該有的套件也沒少,當然新版的作業系統提供的套件數量是更多的,版本也較新,但這接下來會跟核心的升級有關了。

玄箱內建的是 2.4 版的核心,另外還有一個 2.6 版的核心,其實 2.4 跟 2.6 兩者並不是前後版本的關係,而是兩個同時並行的計畫,小弟的建議是,可以用 2.6 的核心是較好的,因為在多工處理機制上 2.6 是較優於 2.4 的,而且 debian 好像從 etch 開始(還是 sarge?),一些內建的套件就必須要配合 2.6 版的核心才能運作。

所以小弟一開始在本文提到的,玄箱一升級,玄箱就掛點,猜想有八成原因就是不小心安裝了新套件,結果核心沒有跟著升級,所以在開機階段就停住了。

目前最新的核心是 2.6.30,但小弟想嘗試自行編譯核心,結果編譯完後無法使用,不過也沒差,網路上下載的 2.6.25.1 版本也挺好用的,安裝 squeeze 也可以用。

到這邊小弟的玄箱心得就先告一段落,一篇文用超過半個月的時間更新也是挺累人的,以目前來講,玄箱在小弟的眼裡仍然是個好物,當然在之前使用時也是像多數人一樣困難重重,雖不致於把玄箱給砸了,但心中就是有點疙瘩,所以花了點時間做了一點功課(小弟這段時間已經開始感受到 linux 的威力了),總算可以對事情有些交代,要把玄箱給正常使用好,並沒這麼難。

小弟前幾天又把玄箱的背板給開了個洞,裝了一個 AC 電源開關,這樣方便多了,要不然每次一把玄箱弄掛,就要把插頭拔掉,挺麻煩的。
這老調可是彈得細緻優美啊
難得還能遇到 LinkStation / KuroBox 的同好
小弟的論壇就是架在 LinkStation 上,24hr 無休默默工作
感謝您的分享,讓我能更了解它,期待後續更多精彩的分享
數位天堂 http://digiland.tw/
真是懷舊
我對於那個轉接卡很有興趣
不知道你是在哪邊買的
另外有人有改好的一代linkstation的img檔嗎?
實在是很懶的在去慢慢改,之前改成debian要complie就超久的
老了沒那個時間,想掛webserver上去弄超久的弄不好
我之前有用過750GB的ide在linkstationg上面用
ide好像沒有更大的了

發覺幸福於平淡生活中
Kuro-SATA 目前拍賣有人在賣,小弟也買了好幾支,等目前這一台能改的改完,能設的設完,
測試後沒什麼問題,應該就會把其他的玄箱也一起給升級了。

IDE 曾經出現過的最大容量好像就是 750GB,但現在應該幾乎買不到了,所以目前還能買到
的是 500GB,而且只有一種型號可以買,應該是末代機種了。

ATB wrote:
真是懷舊我對於那個轉...(恕刪)
那個Kuro SATA雖然是MIT的東西,國內卻沒有鋪貨
是因為客製化的關係嗎+.+
還得從日本買回來,有人知道製造商是哪家公司嗎?
看要不要乾脆直接團購算了
我有一台
當初在日本買的
現在因為電源壞掉問題,放在倉庫裡面,好想把它修好拿來用阿!

這樣可以就可以學版大改裝加1TB硬碟說
真相永遠只有一個!
小弟今天已經將 console 連線的心得加在本文的後面,歡迎大家繼續支持。
To: ralse
其實好像滿多產品都會這樣子,畢竟玄箱這東西本來就只有日本才買的到,其他的國家要買就只能買 Buffalo 的 linkstation。

很久以前有個音效卡的品牌 Turtle Beach,最高檔的音效卡 Pinnacle(十五年前的價格為一萬多),後來也才發現,這麼高檔的音效卡居然是台灣製造的(而且工廠就在中壢工業區),但也很無奈,想要購買,就一定要從美國批貨回來。



To: alfonsoh
小弟並不是電子科班出身的,所以電源供應器也不知道該怎麼修,玄箱的電源是吃直流 5v 跟 12v,如果可以的話,找一台桌機用的電源供應器,線拉一拉,玄箱應該就會復活了。



To: 各位
小弟在今天又追加了文章的內容,主要是談作業系統的升級部分。
個人用kuro-box好幾年了, 都是24/7當NAS/P2P.

核心換2.6無法開機的原因是Lenny的關係. 其中有一個套件千萬不要更新...libc6-2.4. 應該是一些系統套件會用到這個新的library, 所以一更新某些特定的系統套件就會順道更新這個套件. 更新完就會變成無法開機. 最好的方式還是維持在Etch, 反正也沒啥不好的, 核心還是可以更新到2.6.x. iptable就可正常使用了.
可以方便提供etch image的帳密嗎?

沒有帳密進不去啦!
我從山中來...
文章分享
評分
評分
複製連結

今日熱門文章 網友點擊推薦!