作者 主題: 「問題」raid資料救援  (閱讀 22321 次)

0 會員 與 1 訪客 正在閱讀本文。

zterry26

  • 鑽研的研究生
  • *****
  • 文章數: 596
    • 檢視個人資料
「問題」raid資料救援
« 於: 2010-05-17 17:17 »
dear all:
各位先進,小弟的hp ml370g,有4顆hd作raid5,上周3更換第0顆hd,周5想說「節能」把server關機。
結果,今早上開機就慘了,hd2、hd3亮紅燈,raid顯示第2顆、第3顆hd異常。
該server是差勤系統,平時沒備份。
不知有無評價優良的資料救援廠商可以推薦給小弟。
請先進們指點。
謝謝

anderson1127

  • 訪客
回覆: 「問題」raid資料救援
« 回覆 #1 於: 2010-05-17 21:35 »
嗯!?

之前在友站才看到有人RAID5 掛了一棵HD , 原本要進行更換HD以利Rebuild 資料
結果陸續又出現RAID system裡的HD又掛點,讓整個RAID crash

您該不會是苦主吧??

算了,您試著找看看thx大幫忙救援看看吧...

PS:不論您用何種RAID system , 請勿忽略備份工作的同步進行 , 這是老生常談了
這次就當做教訓吧,不然下次發生時,您怎麼會記得住備份的重要性呢??

rainday

  • 鑽研的研究生
  • *****
  • 文章數: 738
  • 性別: 男
  • enhancing and optimizing
    • 檢視個人資料
回覆: 「問題」raid資料救援
« 回覆 #2 於: 2010-05-18 00:56 »
問點比較技術性的問題
難道沒有什麼樣的程式或方法,能做到還原和讀取raid5組成的資料嗎
舉個例:像是ABC三顆都用dd dump成file,再透過程式轉換等等
雖然時常用RAID5 , 但不清楚和沒研究過,各家RAID卡是不是都是用共同的機制建立起RAID5
不知道有沒有人了解這一部份
<0  =_=  Don't learn to hack , hack to learn.

zterry26

  • 鑽研的研究生
  • *****
  • 文章數: 596
    • 檢視個人資料
回覆: 「問題」raid資料救援
« 回覆 #3 於: 2010-05-18 09:57 »
感謝anderson1127 學長回應,請問thx大是?
小弟要如何聯絡。
謝謝

嗯!?

之前在友站才看到有人RAID5 掛了一棵HD , 原本要進行更換HD以利Rebuild 資料
結果陸續又出現RAID system裡的HD又掛點,讓整個RAID crash

您該不會是苦主吧??

算了,您試著找看看thx大幫忙救援看看吧...

PS:不論您用何種RAID system , 請勿忽略備份工作的同步進行 , 這是老生常談了
這次就當做教訓吧,不然下次發生時,您怎麼會記得住備份的重要性呢??

anderson1127

  • 訪客
回覆: 「問題」raid資料救援
« 回覆 #4 於: 2010-05-18 12:57 »
http://phorum.study-area.org/index.php/topic,60723.0.html

自己想辦法聯絡, 但我想....不管如何,銀子多準備些再跟人家談!!

資料救援是非常貴的服務!!

zterry26

  • 鑽研的研究生
  • *****
  • 文章數: 596
    • 檢視個人資料
回覆: 「問題」raid資料救援
« 回覆 #5 於: 2010-05-18 14:33 »
感謝anderson1127 學長回覆。
目前小弟就是在確認可信廠商,錢的部份已有心裡準備。
謝謝

http://phorum.study-area.org/index.php/topic,60723.0.html

自己想辦法聯絡, 但我想....不管如何,銀子多準備些再跟人家談!!

資料救援是非常貴的服務!!

pier7

  • 可愛的小學生
  • *
  • 文章數: 15
    • 檢視個人資料
回覆: 「問題」raid資料救援
« 回覆 #6 於: 2010-05-25 01:41 »
再一次驗證機房最怕關機...平常都沒有事,一關機就出事 >"<
(每次關機都要先拜拜一下)
不過話說大大是否有時間限制…

不知道有沒有人有玩過…把異常的hd,跑ghost到一顆正常的
然後死馬當活馬醫 @@"
不知道這種方法可不可行 >"<

thx

  • 鑽研的研究生
  • *****
  • 文章數: 510
    • 檢視個人資料
    • http://www.osslab.com.tw
回覆: 「問題」raid資料救援
« 回覆 #7 於: 2010-05-27 16:34 »
其實一般狀況下raid 5 壞掉沒有太高難度..
演算法原理都相同..
用winhex ,rstudio 都可.連做Disk Image 都不用了
基本上市面已經有很多軟體可以自動算NTFS raid 架構...
原理跟軟體清參考

http://www.osslab.org.tw/Storage/Data_Recovery/Theory/Raid_Recovery

以科學化講度講  Data recovery 公司 95%在這塊是獅子大開口
真正有點難度是VMFS 笑.....

壞軌clone 做法說錯..
Ghost 是分區對拷轉換程式
若真的要做該是做 Sector to Sector 扇區對拷
軟體:  Winimage ,Diskgenuius, Clonezilla ,Linux DD指令
硬體:一般市場上拷貝機.

不過實際上在跑時,大量壞軌 會造成ATA error ,CPU Loading 飆高死當. 當然跑不下去
目前最成熟方法是Acelab PC3000 +DE 要價NT 25萬
http://www.osslab.org.tw/Storage/Data_Recovery/Hardware/PC3000/UDMA
原理是在已讀不出區壞軌做斷電 ,ATA Singal Reset  (讓磁頭復位,跳下一個Block 讀取)

假設某碟片嚴重有損  UDMA +DE 可以關磁頭導出.
 

zterry26  的問題是 那二顆 SCSI HDD 已經都抓不到了..
不管是raid 0 ,5,6, 當Raid 已不能湊成完整資料時.. .這樣會變成只有Strip size 資料...
小於 strip size ok .大於的話當然會少資料...部份office 文件檔案可以修復 .SQL 這就不行..

所以這時就要做單顆Data recovery

單顆Data Recovery 牽涉會更廣

硬碟固障有下面幾個原因

1.硬體PCB ,HDA 問題

HDA (Head Disk Assembly) 稱之為磁頭磁片總成或盤體
碟片(Platter)、磁頭(Head) 、磁頭臂(Acutaor) 、主軸馬達(Spinde motor)、前置訊號,放大器( Preamp) ,音圈馬達 VCM ) 其中之一壞
修理HDA 必需在無塵室..

PCB 上 電路損壞或 Flash memory (NV-RAM ,ROM ) 固件遺失.


2.碟片上SA區(Service area) Moudle Program firmware 壞.

硬碟啟動原理就像一台電腦主機一樣. Hitachi HDD 為例 .
Mask ROM code 起動-->NV-RAM 放起始SA 啟動區位置,啟動後還要Loading 在磁片上 Service area "硬碟應用程式"之後......
整顆硬碟才ATA 待命正常...硬碟抓的到正確型號跟容量  所以載入碟片上module 起動失敗 部份狀況會bios認不到硬碟或報錯

要是這塊失敗 有二個處理方式 1.電路版熱交換法 2.虛擬LDR載入法..
電路版熱交換方法很簡單,讓一塊已經"開好機"讀取好硬碟module 的PCB 停掉電機,再移去別顆 HDA上處理強制Scan data區.

LDR 載入預先讀好同款HDD 的 碟片上硬碟開機用應用程式,就需要用PC-3000

zterry26 大如果要動到scsi hd. 全台灣應該就二家有這樣設備..

一個好的Data recovery 服務商 應該是

1.正確的設備. 2.優秀的技術與經驗  3.完整的磁頭臂(HSA)備料 4.服務客戶的心態

如果大家真有興趣 改天我來開免費課演講好了..Xd..................
« 上次編輯: 2010-05-28 23:56 由 thx »

日京三子

  • 全區板主
  • 俺是博士!
  • *****
  • 文章數: 8829
    • 檢視個人資料
    • http://www.24online.cjb.net
回覆: 「問題」raid資料救援
« 回覆 #8 於: 2010-05-27 17:38 »
一個好的Data recovery 服務商 應該是

1.正確的設備. 2.優秀的技術與經驗  3.完整的磁頭臂(HSA)備料 4.服務客戶的心態

如果大家真有興趣 改天我來開免費課演講好了..Xd..................

那個誰誰誰,有沒有看到? 還不趕快優先處理一下! (招手)
 ;D ;D ;D ;D
哈克不愛的多合一輸入平台----->新香草口味
過去的時間不斷流逝,抹去的眼淚已成追憶;
乾枯的雙手無力阻止,再會了我遠去的曾經。

zterry26

  • 鑽研的研究生
  • *****
  • 文章數: 596
    • 檢視個人資料
回覆: 「問題」raid資料救援
« 回覆 #9 於: 2010-05-27 17:50 »
真的非常感謝thx學長回應。
已經將您的回應告知user,在user確認ok了,一定再會麻煩您的。
謝謝

phantom

  • SA 苦力組
  • 俺是博士!
  • *****
  • 文章數: 2185
    • 檢視個人資料
回覆: 「問題」raid資料救援
« 回覆 #10 於: 2010-05-27 18:03 »
一個好的Data recovery 服務商 應該是

1.正確的設備. 2.優秀的技術與經驗  3.完整的磁頭臂(HSA)備料 4.服務客戶的心態

如果大家真有興趣 改天我來開免費課演講好了..Xd..................

那個誰誰誰,有沒有看到? 還不趕快優先處理一下! (招手)
 ;D ;D ;D ;D


沒錯!!!

快快快!!!
Linux 非萬能, 沒 Linux 萬萬不能.
root = God
apt-get install ultimate-horsepower

Ijs

  • 懷疑的國中生
  • **
  • 文章數: 34
    • 檢視個人資料
回覆: 「問題」raid資料救援
« 回覆 #11 於: 2010-05-27 18:48 »

如果大家真有興趣 改天我來開免費課演講好了..Xd..................

James葛格~台南台南台南台南~~~
有好吃的東西唷~人家好久沒看到你了~(扯扯袖子)
>///////<

anderson1127

  • 訪客
回覆: 「問題」raid資料救援
« 回覆 #12 於: 2010-05-27 22:53 »
我也想上課說...

畢竟對於這方面的known how實在是愧乏...

不過想討論一下,手頭上有一棵2.5吋的60G IDE HD , 之前因為手賤
想改成內接式給Desktop PC使用,轉接頭也買了,安裝時不慎將2.5吋HD
的電路板給折到了,電路板當場在IDE pin腳的部份,折到PCB的電路板
因此當場掛點(連通電都不敢),想說試著等等看,看看有無拍賣有人願意出售
同型的2.5吋HD , 買來更換上去試試... 到目前為止,有人賣同型故障硬碟
但不願意讓我挑選PCB來安裝到我的HD上頭,因此就算了,不買就是了!!

看了thx大的說明,再加上我的案例,更換同型PCB電路板似乎是不可行 ...
不知是何原因??

PS: 我有點貪心,不知是否可以實作 迷你型無塵室 ? 創意來自於醫院裡的嬰兒保溫箱 ...
« 上次編輯: 2010-05-27 22:56 由 anderson1127 »

西歪街

  • 鑽研的研究生
  • *****
  • 文章數: 696
  • 性別: 男
    • 檢視個人資料
回覆: 「問題」raid資料救援
« 回覆 #13 於: 2010-05-28 00:39 »
台南的來了0.0/
thx幾月有空?
6月可以馬上加開喔!!

thx

  • 鑽研的研究生
  • *****
  • 文章數: 510
    • 檢視個人資料
    • http://www.osslab.com.tw
回覆: 「問題」raid資料救援
« 回覆 #14 於: 2010-05-28 13:17 »
HDD PCB 有nv-ram ,flash memory 等.
主要記錄的是  embedded hd  在碟片上module program 的啟動位置....

所以除非啟動區接近.要不然直換版不行..用"工具"把資料讀出來 或是拿吹風機吹下nv-ram 黏回去

更換HDA 內部料件.一般用桌上無塵台就夠
不過我自己處理還是照規矩 在無塵室內+無塵台運作

為何學習storage 的最大原因 應該說是對Computer Science一種驗證與思維...
一般Data Recovery 公司 對於Raid 客戶是最愛的..因為價高簡單...

對於單碟恢復 因為自己經驗跟技術不夠  每家卻是低調很...除了二家天價的廠商外..

人還在國外 開課可以七月方便..XD
« 上次編輯: 2010-06-03 19:59 由 thx »

anderson1127

  • 訪客
回覆: 「問題」raid資料救援
« 回覆 #15 於: 2010-05-28 16:35 »
感謝thx大的提示...

唉,為了一台PCB損壞的HDD 而購買一台專業用的烙鐵+ 熱風機
實在有點不值得啊....

若為了修練PCB維修功力就另當別論了... 說實話,我有點衝動想去買這種專業級的維修工具
總之,只要解決pcb上的nv-rom的移植工作,硬碟應該還是可以藉由另一棵同型的HDD復活
應該是沒錯的吧??

謝謝thx大的熱心解答!! m(_ _)m
« 上次編輯: 2010-05-28 16:37 由 anderson1127 »

西歪街

  • 鑽研的研究生
  • *****
  • 文章數: 696
  • 性別: 男
    • 檢視個人資料
回覆: 「問題」raid資料救援
« 回覆 #16 於: 2010-05-28 22:29 »

人還在國外 開課可以七月方便..XD

當然沒問題,這樣台南來個四連發XD?
不然就要排八月了Orz..

pier7

  • 可愛的小學生
  • *
  • 文章數: 15
    • 檢視個人資料
回覆: 「問題」raid資料救援
« 回覆 #17 於: 2010-05-28 23:44 »
感謝thx大的提示...

唉,為了一台PCB損壞的HDD 而購買一台專業用的烙鐵+ 熱風機
實在有點不值得啊....



如果大大有需要,小弟不材可以提供這兩樣東西(跟公司借用)
調溫度烙鐵、熱風機
小弟都是本著實驗精神~~自已試一次當作學經驗 >"<
還是thx大大比較專業
« 上次編輯: 2010-05-28 23:47 由 pier7 »

rainday

  • 鑽研的研究生
  • *****
  • 文章數: 738
  • 性別: 男
  • enhancing and optimizing
    • 檢視個人資料
回覆: 「問題」raid資料救援
« 回覆 #18 於: 2010-05-29 01:35 »
感謝thx的說明
又學到了新知識
研究研究raid5還原中

話說anderson提到的迷你型無塵室,突然有個有趣的想法
是否可以利用水蒸氣將空氣中的雜質灰塵包覆進而帶走呢
還是用正負壓來過濾空氣(利用dysxn吸塵器),應該蠻有趣的,能不能做到無塵就不知道了
<0  =_=  Don't learn to hack , hack to learn.

anderson1127

  • 訪客
回覆: 「問題」raid資料救援
« 回覆 #19 於: 2010-05-29 11:02 »
我想,迷你無塵室恐怕不好弄....

不過,只要有心,應該還是可以弄一個DIY 的低塵的無塵室吧 ??
臨時去想到一個降低灰塵的好方法,概念來自於常看電視來的創意(借抄一下啦... :D )

1. 養雞場的水簾式過濾空氣的方法
這個東西要實作應該不難,可以拿來當做最初的一層空氣過濾系統,降低空氣中的灰塵量

2. 抽煙用的水煙管
詳細的實作方式我不清楚,但我直覺認定應該對於降低空氣中的灰塵有一定的幫助

總之,都是要用到水...

rainday 大的吸塵氣慮塵的idea也很棒喔,只是要把接管部份弄到空氣不外漏這就有點難度了...
並且弄成一個密閉空間的循環系統, 然後加上醫院用的嬰兒保溫箱..... 蠻好玩的!!

其實無塵室並不是真的無塵,而是單位平方公分的落塵量控制在一定的範圍之內, 比起正常室內外
的落塵量少了非常的多...

thx

  • 鑽研的研究生
  • *****
  • 文章數: 510
    • 檢視個人資料
    • http://www.osslab.com.tw
回覆: 「問題」raid資料救援
« 回覆 #20 於: 2010-06-17 14:58 »
最後修訂以本頁為主
http://www.osslab.org.tw/Storage/Enterprise/Blocklevel/SAN/FC_Sector_with_520_Bytes
作者:
OSSLab sunchiahome ,thx

raid 可能上比較高難度 為光纖硬碟..

因為 Netapp 或EMC 部份內為光纖硬盤的儲存架構為其校驗系統BLOCK CHECKSUM 設計,
因此FC硬碟採用 520 Bytes扇區.不同於一般硬碟的512 Bytes 扇區
架構如圖



假設要把原硬碟拿到一般x86上使用時.是無法正常獨取. 若要能正常使用.
必需使用低階格式化軟體改變扇區大小..

要改變 Sector size 的工具在,RHEL 4 / 5 光碟中皆有提供,  sg_format 主要是由套件 sg3_utils ,   sg3_utils_libs  所提供,如果找不到可以上官方網站來查詢.

The Linux sg3_utils package http://sg.danny.cz/sg/sg3_utils.html

使用下面的指令加上參數就可以將 sdd 的 Sector size 改成 520 bytes 大小.
[root@benjr ~]# sg_format --format --size=520 /dev/sdd

格式化的時間會依據磁碟的大小來決定,但是記得一點當我們將 Sector size 由 512 bytes 改成 520 bytes 之後,Linux 就無法透過 fdisk , mkfs 的工具做存取.不過透過 dmesg 還是可以得知有新的硬碟加入系統中.

[root@benjr ~]# dmesg
sd 0:0:7:0: Attached scsi disk sdc
sd 0:0:7:0: Attached scsi generic sg2 type 0
mptsas: ioc0: attaching ssp device, channel 0, id 33, phy 2
      Vendor: Fujitsu  Model: MBE2147RC  Rev: NQ00
      Type: Direct-Access ANSI SCSI revision: 03
sdd : unsupported sector size 520.



[root@benjr ~]#fdisk -l

Disk /dev/sda: 146.8 GB, 146814976000 bytes
255 heads, 63 sectors/track, 17849 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
 
   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1          13      104391   83  Linux
/dev/sda2              14       17849   143267670   8e  Linux LVM


若需要做光纖盤Data Recovery時.當然不可能如上format
也不是應用光纖櫃上的裝置去Mount Storage ,因為通常光纖櫃也不會有可做單顆Mount 設定必為Raid 控制

1.使用一般電腦掛上FC 硬碟.(使用HSSDC 介面卡  非LC 光纖卡)
2.需要使用上520 扇區轉換技術 這些程式並沒有現成很公開.

轉換成一般512 扇區後就可被電腦辨識與mount 就可做還原..


thx

  • 鑽研的研究生
  • *****
  • 文章數: 510
    • 檢視個人資料
    • http://www.osslab.com.tw
回覆: 「問題」raid資料救援
« 回覆 #21 於: 2010-07-12 18:39 »
http://www.osslab.org.tw/Storage/Data_Recovery/Theory/Raid_Recovery

看本篇進階前請先把上面link看完跟想完

假設傻瓜Raid 分析程式出了問題

最近手癢寫了一點小program .
這篇就不要轉載了. 市面上書上其實也沒講某些簡單概念


準備東西Winhex
假設四顆硬碟 都在.只是Raid message掉失.
1.定位第一棵硬碟
MBR 為不錯定位方法 搜索55AA

2.P = A Xor B Xor C 反導 C = A Xor B Xor P (所以不能用這個去推那個為校驗塊)

基本上先以第一扇區. 隨便各找一個 同位置 Hex 玩玩

假設  為 BA,7E,00,C4

嗯 各位可能已忘了大學電概課 Xor算法.
沒關係  請拿出小算盤 切到程式設計師模式 再切到16進位

BA Xor 7E Xor 00= 換算出來為C4  表示此位置 資料正確
如果原硬碟都在  那是前端Sector 有毀,ECC校驗 有問題
各位可以用這方法去算算

只是 Raid 是一種交錯格式 所以前面壞了
後面不一定壞 各位可以先手算幾下. 確定好扇區比較沒問題後 再從此扇區做運算


3.簡單推斷Strip Size
分別以 64,128,256 Sectors 去觀察 1 Sectors =512 bytes , 1Kbytes=1024 bytes

如果 1~ 128  扇區看起來還像校驗塊 129扇區卻不是了 感覺是資料

(一般來講是比對其他硬碟同樣位置資料區)

那此Raid Strip Size  就是64 *512 byte/1024= 32K

如果是少顆 4 pcs ..我確實就這樣Winhex瞄瞄就ok

但是如果是 6 pcs 以上. 我大腦吃不下hex 跟ascii code.
確實要有點補助工具

小弟寫的程式 只做啥?..很簡單

如果硬碟順序已不在 以文件 分區表 分析法
分算出順序.整出校驗碟 左循環 右循環 校驗塊大小

基本上不是程式笨的問題 (好吧 人笨.我拿VC 花幾小時亂寫好)
有時確實會算反左循環或右循環

不過關鍵排列"校驗塊" 跟"大小"幾乎都正確 傻瓜軟體就是少了 校驗塊排列法...
所以沒有邏輯思考. 是無法正確還原Raid.


切為人為判定
定義校驗碟必為 第一或最後

比對第一顆資料硬碟 .後續其他顆校驗塊.

此時正確的Raid 架構就出來了....

硬碟順序

架構
左循環同步 backward parity
左循環異步 backward dynamic
右循環同步 forward partity
右循環異步 forward dynamic
組錯Raid .小於Strip strip Size 內檔案會被掃出來
基本上就像你拿RStudio掃單顆Raid成員硬碟一樣..


其實我覺得電概課應該教Raid Recovery

如果我是教授, 小大一上完這種課 還排列不了 外面 10萬 case
那我會當死他... ><


« 上次編輯: 2010-08-07 15:36 由 thx »

stonecode

  • 可愛的小學生
  • *
  • 文章數: 2
    • 檢視個人資料
回覆: 「問題」raid資料救援
« 回覆 #22 於: 2010-09-16 11:46 »
Runtimes RAID Reconstructor 研究一下是否能救回來吧~如果是讀寫頭有問題,那真的得向有門路相關設備的廠商求援了~~

thx

  • 鑽研的研究生
  • *****
  • 文章數: 510
    • 檢視個人資料
    • http://www.osslab.com.tw
回覆: 「問題」raid資料救援
« 回覆 #23 於: 2010-09-20 22:06 »
我吃飽太閒了用MFT表去推算了.我理論正確...

下面為新增 硬碟的Runtimes RAID Reconstructor


原三顆 DISK A B C  做 Raid 5
數字代表Block順序, P代表校驗塊

DISK  A   B   C    
         P   1   2  
         3   P   4
         5   6   P
         P   7   8

準備增加一顆做線上擴容  RAID 架構會變成

DISK  A  B  C  D
        P  1   2  3  
        4  P  5   6
        7  8  P   9  
      10  11 12 P


如果失敗      除了第一列   Block 區  外   只用改寫 DISK A  跟新增硬碟DISK D 的block 外  
                後面每個block都要從寫

根據推算 這樣一顆硬碟會有二種不同raid 架構
假設做到第三列Block  失敗

DISK          A  B  C  D
                 P  1   2  3  
                 4  P   5  6
本列失敗     5  6   P  9  (都不完整資料)
(以下都正常)P  7   8  無資料
        
    
第三列Block失敗  會不完整 全部不能用. 還好 5 ,6 數據塊前面有 ........

但要算出做到那個Block轉換與改寫 會花點工夫.


至於專用的設備.. 有時我不得不說實話...那設備就是一顆FPGA 包了ATA Protocol +加密 ...
反正Таганрогского大學無線電工程學院(ТРТИ)就是把原廠的ATA 指令  攔截出來
知道指令(register ) 再用一般ATA bridge 版卡(IDE卡) 去發送也行
不過會幹這樣的Hacker 現在應該花比較大心力再搞Data recovery了..

其他設備不算是重點...

Raid 本來最大用意 就是要你不要做單硬碟硬體Data recovery .
« 上次編輯: 2010-09-20 22:09 由 thx »

thx

  • 鑽研的研究生
  • *****
  • 文章數: 510
    • 檢視個人資料
    • http://www.osslab.com.tw
回覆: 「問題」raid資料救援
« 回覆 #24 於: 2010-10-20 12:10 »


第一次遇到這種Stripe Size的Raid 5 array
藍框為校驗區

這組Runtimes RAID Reconstructor  是無法處理的..
Runtimes RAID Reconstructor 限制頗多的 非NTFS 分區就葛屁了.

請各位回憶 計算機概論  算一下Stripe Szie 為多少. 答案反白
這是從便宜DAS 上拔下處理的硬碟  應該是jmicron 的chip ,這類Low Cost Storage Processor 大概求Cpu 低頻率與dram buffer 小
所以Stripe Size 這樣離譜的......




0.5 K Bytes  算法 600 -400 =200  (16進位) = 512 Bytes =0.5 KBytes
« 上次編輯: 2010-10-21 00:39 由 thx »