會員 | n合1光碟製作法 必備軟體:cdimage 這段時間流行了一陣“N合一”風,最早是WIN2000的PRO,SERVER和 ADVSERVER三個版本做成一張光碟,剛開始我還以為是簡單的把三個 系統的安裝檔燒在一張上面,後來大概算了一下,少說也有900M-1G 的資料,不太可能。拿了一張來看看,發現做法非常新鮮: 其實WIN2000的三個版本的安裝檔中,有大量的檔是相同的,特別是 語言包/字形檔(I386\LANG目錄)以及寫字板等應用程式,以及那個 50M的driver.cab。不同的只是相對少數的系統檔。這種N合一光碟將 ISO映象經過特殊處理,重複的檔,實際資料在光碟上只有一份,通 過類似於修改光碟目錄表的辦法,讓不同的目錄/檔指向相同的資料 區。完成ISO修改後再刻成光碟。這樣,既省了空間,又讓每個目錄 看起來仍然獨立、完整。 那麼到底有多少相同呢?我自己做了個實驗,我有一個WIN2K PRO安 裝目錄和一個ADV SERVER安裝目錄,分別是260M和280M左右。 (為了省空間,我去掉了除簡/繁體中文外的其他語言包,像韓文日 文阿拉伯文,我這輩子都用不到)。兩個目錄如果簡單的燒在一張光 碟上,將占540M左右的空間。而用N合一的方法,“相同檔只處理一 次”,合併下來只有340M左右。照這個數字看來,二者有70-75%是相 同的!不同部分只占各自的25%-30%!依此數字估算,就算將SERVER 也加進去,最後的大小也應該只有400-450M,相對於簡單相加的800M ,幾乎少了一半。如果你不想將三個差不多的WIN2000分別用三張CDR 保存的話,可以考慮自己做個N合一光碟。 說到這堣ㄥ要提一下DOS/WIN檔系統的落後。UNIX/LINUX從最開始就 提供了符號連接的功能,一個簡單的ln命令就可以完成上面的工作, 而在DOS/WIN下,這種操作必須借助專門的軟體通過修改ISO進行,而 且這種結構還不能存在於硬碟上,因為它在所有針對DOS/WIN的磁片 檢查軟體看來,都是“交叉連接”,會被更正。 好了,別扯遠了。話說回來,理解這種方式很容易,實際做起來呢? 關鍵是“相同檔”是怎麼判斷。靠人工是很麻煩的。實際上微軟內部 提供了一個工具,叫CDIMAGE,專門作這個。加上一個-o參數,就可 以實現“自動優化”的功能。MS很多內部發行版本,都是用這個辦法 “擠”在一張盤上。 當然它不光是用來做WIN2000的N合一。對所有“大量檔重複”的情況 ,用它都可以發揮極大作用。不過……好像這種情況不多……大家舉 點例子? 具體做法: 建一個目錄,把它看成是你要做的光碟的根目錄,把所有要放上去 的內容全弄進去,比如,這個目錄叫c:\ewin3in1,堶惜嬪O有 c:\ewin3in1\pro c:\ewin3in1\server c:\ewin3in1\advserver 目錄,分別對應三個WIN2000版本。現在查看目錄屬性,應該在800M或更 多,無法放在一張光碟上。 現在用CDIMAGE程式,在另一目錄(你想產生ISO檔的目錄)中執行: cdimage -lWin2K3IN1 -t08/22/00,00:00:00 -h -n -o -m c:\ewin2k My3IN1.ISO [m 直接運行CDIMAGE將顯示參數說明。下面簡單解釋一下常用參數意義: -l : (是JKL的L,不是IBM的I)這是光碟的標籤 -t : 將所有檔設成指定的時間,看起來很專業 -h : 包括隱藏檔 -n : 允許長檔案名 -o : 這是最重要的,CDIMAGE的精華就是它。自動判斷重複檔, 對重複檔只處理一次,並自動修改相關的檔指向。是使用檔大小和MD5 演算法進行比較(我也不太懂,大概是和CHECKSUM差不多概念的方法 吧)從概率角度來看準確性相當高,但並不是“逐位元組對比”。如果 你要求逐位元組對比,用-oc參數。不過速度極慢。 -m : 不加這個參數的話,將不能產生大於650M的ISO映象 c:\ewin2k : 這是光碟的根目錄。CDIMAGE將以此目錄開始構造光碟目錄結構, 硬碟上的c:\ewin2k\pro將變成光碟的x:\pro My3IN1.ISO : 這是最後生成的ISO檔的名字。它已經是修改後的了。 最後只需用燒錄軟體(如EASY CD CREATOR的CREATE DISK FROM IMAGE)將ISO燒成光碟即可。 至此我們的N合一就做完了。當然這張光碟只是簡單的將三個安裝目錄放在一起, 而且不能啟動。比較理想的情況是,將光碟做成像2000正版那樣自動啟動並開始 安裝的(這個已經有人做到了),更理想的情況是開機出現功能表,可以選擇安 裝PRO/SERVER或ADVSERVER,然後自動調用相應的安裝程式。 目前還做出來的Windows XP 六合一就是如此做成的。 這種光碟當然也有缺點,而且是顯而易見的: 1、如果光碟有某個地方損壞,剛好又是大家“共用”的系統檔,那麼可能3個 WIN2000都將報廢,無法安裝。普通光碟只是損壞那個檔所屬的那一個版本。 2、最好要有光碟燒錄機,這種ISO鏡象,用WINIMAGE解是沒有意義的,WINIMAGE 並不懂得這種修改過的結構,它將按目錄表把所有檔解到硬碟,相同檔被複製 了若干份。相當於還原成修改之前的狀態。像那個EWIN 6合一,解開後好像有 1.9G左右。 不過相對來說這些缺點都不重要。 轉貼自 香港自由講+網路資源俱樂部 |
會員 | http://www.tech-hints.com/ 這網站有對n合1詳細說明 |
會員 | 雖然目前用不到, 但還是多謝分享∼ |
XML | RSS 2.0 | RSS |
本論壇所有文章僅代表留言者個人意見,並不代表本站之立場,討論區以「即時留言」方式運作,故無法完全監察所有即時留言,若您發現文章可能有異議,請 email :[email protected] 處理。