[分享]神奇!可幫你補檔的軟體-Mirror



贊助商連結


snic
2001-12-01, 10:26 AM
下面英文網站有簡易的介紹:
http://www.wehlus.de/mirror/index.html

下載:
Mirror 0.2.6 for Win32 (292 KB):
http://www.wehlus.de/mirror/mirror.zip

教學:
http://www.wehlus.de/mirror/create.html
http://www.wehlus.de/mirror/restore.html


基本上,它是採用類似 RAID-5 (Parity Volume Set )
陣列硬碟的方法來重建缺少或損壞的檔案 (抱歉有些中文
名詞不會翻譯),假設現在有100個檔案,用 PAR 的程式
產生額外的5個 (不一定只有5個 ,假設而已)par files
(1 PAR index file and 4 parity volume set p01, p02,..),
當你下載的 100 個檔案有缺少或損壞幾個檔案時,便可用 Par files
來重建缺少或損壞的檔案,當然你不可以只用Par files
來重建所有的檔案,所以大家可以盡量的下載檔案,
有缺少或損壞檔案時,便可用 Par files 來重建缺少或損壞的檔案,
對上傳的人,只要保證 Par files 的完整,便可減少補檔的困擾,
不知大家的意見如何?

不過 PAR file 現在還在出始階段,有一些限制,例如
原始檔案加上PAR 檔案不可以超過255個檔案等等,
所以若檔案有400個以上,就可能要做兩組
PAR File 來因應了。
(以上轉載自無名的 newage 的說明)

**************************

如果還是看不懂的話...我再舉一個真實的例子(剛剛試過)

比方說我將一片 iso 分割成
snic.exe
snic.r00
...
...
snic.t00
共約 200 個分割檔,每一個檔 1.5 MB

接著利用 mirror 的"Creating Parity Volume Sets"全選剛剛分割好的檔案則可
以製作出:
snic.PAR
snic.P01
...
...
snic.P21
共 22 幾個分割檔,每一個檔 1.5 MB
而這些檔案的數量跟大小都是程式控制的,你可以自行修改!
預設值是設定為所有原始分割檔大小的 10% 大小
也就是原本共 200 MB 的分割檔會做出約 20 MB 的 PAR 分割檔

做好之後,如果今天我把 snic.r01 到 snic.r20 刪除,也就是缺了 20 個檔案
,這時我可以用利用剛剛用 mirror 製作出的那 22 個檔案來"變"出那 20 個檔
案,使用方法就是用 mirror 的"Check Volume Set"來開啟那 22 個 Par files
,此時程式會先檢查你那 200 個檔案是否有錯誤或缺檔,有的話就會幫你補檔或
修復,所以這個程式是一個具有補檔,修復,檢查功能的檔案工具,後來我也試
過,用事先做好的 sfv 檢查檔去檢查剛剛用 mirror 還原好的那 20 個檔案,發
現完全吻合,並且也可以順利解壓成功!

所以我們可以這樣利用...
多花一些免費空間去放這些檔案,以後補檔的動作就可以交給下載的人去解決了
!而且由於這些檔案是補檔專用的,只要著名清楚,一般人不會無聊到去下載這
些檔案,自然也就不容易被砍!

**************************

不過有一點要注意!

(以下轉載自無名英雄館的 newage 的說明)

在此補充一些說明,
如果你有 21 個Parity Volume Sets 如 P01 P02......到 P21,
那你最多可以重建 21 個原始檔案(任意 21 個原始檔案),所以就
無法重建超過21 個檔案,但是換句話說,如果你只缺 10 個原始檔案,
那你只要有任意 10 個Parity Volume Sets 檔案如 P01 P02......到
P10 就可以重建 10 個原始檔案,而不需要21 個Parity Volume Sets
來重建 10 個原始檔案喔。這真是一套不錯的補檔程式,根據發展程式
的團體說法,他們希望發展winrar 的公司能夠將這套程式加到 Winrar
裡,那以後大家就方便多了。

Parity Volume Sets 是經由原始檔案之間的關係所計算出的數據
檔案,所以在缺某個原始檔案時,程式可以根據Parity Volume Sets
的數據,經由其他原始檔案重新計算出(重建)缺少的原始檔案。


Q:
================================
那是不是代表產生的P**要和原來的檔案數目一樣多??
================================

A:
如果要重建所有的檔案的話,P**就要和原來的檔案數目一樣多!
那這樣就叫做重傳而不是補檔了!!

我想所謂補檔,是為了少量缺檔的朋友所考量的,常常阿貓缺
十個檔,小竹缺另外十個檔,貓抱竹又缺另外十個檔,在加上
竹抱貓又再缺另外十個檔,那麼分享者總共要補四十檔來滿足
這些人的要求,在這樣的情況下,以上缺檔的朋友只要下載同樣的
十個 Parity Volume Sets 檔,就可以重建他們各自缺少的
檔案了,對分享者或補檔者而言也可以減輕負擔。

**************************

我再舉一個實用上的例子:

今天網路上提供 a.000∼a.200 的檔案

但我下載的檔案中間缺了 a.18 和 a.122 的話

如果你今天看到
A 君缺 a.021∼a.030(缺檔數目為 10 個)
B 君缺 a.031∼a.050(缺檔數目為 20 個)
C 君缺 a.051∼a.080(缺檔數目為 30 個)
D 君缺 a.081∼a.120(缺檔數目為 40 個)
其中最大缺檔數目為 40 個

以你本身的檔案而言...

他們缺的檔案剛剛好你都有(因為你只缺了 a.18 和 a.122)

而就以前的經驗告訴我們...

要幫助這兩個人補檔的話

勢必要補上
a.021∼a.120
共 100 個檔案

但如果使用 Mirror 這個軟體的話,則可大大的減低你補檔的負擔!

根據上面所提到的:
〔如果你有 21 個Parity Volume Sets 如 P01 P02......到 P21,
那你最多可以重建 21 個原始檔案(任意 21 個原始檔案),所以就
無法重建超過21 個檔案〕

你只要用 Mirror 對你現有的檔案(a.000∼a.200,中間缺 a.18 和 a.122)做出
41 個Parity Volume Sets,就是 PAR P01 P02......到 P40,也就是取這四個人
當中缺檔最多的數目來決定你要做幾個 PAR 檔,然後你只要上傳這 41 個檔案就
可以補這 4 個人全部共 100 個缺檔,這樣不是很省嗎?

因此,對於幫忙補檔的人而言,只要你事先調查過哪些人缺哪些檔案,經由整合
後,你就可以找出最小的補檔數目來幫助大家所有的缺檔了,這樣不就可以大大
減少你補檔的負擔嗎?

贊助商連結


ghow
2001-12-04, 01:16 PM
我個人異想天開的想法..

那如果我少了40 個原始檔..
我先用補檔救前20 個...
等它產生出來...
我再救另 20 個...

不知行不行的通
^_^

fivee05
2001-12-05, 01:12 PM
看不懂............

bin6953
2001-12-05, 01:46 PM
是不大好懂...不過看了教學之後...清楚多了

crazycloud
2001-12-08, 11:35 AM
好長
不過蠻有用的
雖然我還是不大懂^^"

swpeng
2006-10-06, 05:19 PM
不可行
你要補20個檔案
就代表你其他的必需是完整的
否則是沒辦法補的
所以如果你做的par只能補20個
你壞了40個
那你什麼事都做不了

當然
新的par2或是更新的有做分區的功能可能可以解決不完全損壞的問題
新的技術可能可以支援一區一區補
而不是整個檔案



我個人異想天開的想法..

那如果我少了40 個原始檔..
我先用補檔救前20 個...
等它產生出來...
我再救另 20 個...

不知行不行的通
^_^