如果你是一位愛嘗試新軟體的試用狂人或是時常須要將軟體「移植」到其它電腦上使用的人,那麼你一定要試試這一套神奇的「虛擬軟體平台」。
對於老是看到新軟體就忍不住下載並安裝試用的人來說,電腦大概每隔一段時間就必須因為「系統錯亂」而不得不重新安裝作業系統,也就是我們常說的「重灌」。或許重灌對於電腦達人來說已經是家常便飯,但是假如我們的電腦裡有一個虛擬平台,然後在這個平台上面安裝我們要試用的軟體,試用完畢之後再把這個軟體從平台上移除掉,而且完全不影響目前使用的作業系統,更不會留下軟體的「殘渣」,那麼是不是更美好?
今天我要介紹的軟體正是能實現這個理想的好物,它是由一間美國軟體公司 Altiris 出品的 Software Virtualization Solution (以下簡稱 SVS)。
SVS 是一套可以給個人免費使用的軟體,在安裝 SVS 的時候按 Get it free 便可以獲得一組免費的 License Key。
SVS 之所以能夠實現這個理想靠的是一種叫做 Layer (我暫且稱之為虛擬平台) 以及另一種叫做 File System Filter Driver 的技術。
當我們用 SVS 來安裝一個新軟體的時候,SVS 會監控安裝程式對系統所做的檔案及登錄項目 (registry) 的新增,然後再把這些新增的檔案和登錄項目存在放一個新的 Layer 上面。而這個 Layer 的實際上是位於 C:\fslrdr。之後我們可以對這個 Layer 做啟動 (Activate)、解除 (Deactivate)、重新設定 (Reset) 以及刪除 (Delete) 的動作。
舉一個例子,當我用 SVS 安裝 Firefox 時,Firefox 的所有檔案 (包括登錄檔) 會被存放在 C:\fslrdr\1 以及 C:\fslrdr\2 這兩個資料夾,其中「子資料夾 1」存放的是安裝 Firefox 之後的初始檔案,而「子資料夾 2」則是存放啟動 Firefox 之後變更的檔案,因為程式在執行期間一定會新增或是修改一些檔案。
這些以數字為名的子目錄將來會在其他的 Layer 加入而遞增,例如之後安裝的第二個軟體就會存放在 C:\fslrdr\3 以及 C:\fslrdr\4。
現在 Firefox 的 Layer 建立好了,將來每當我們啟動它的時候就可以在 C:\Program Files\ 看見 Firefox 的資料夾,並且可以用我們平常操作的方式來執行 Firefox。當我們解除它的時候 Firefox 這個資料夾就會從 C:\Program Files\ 消失。會出現及消失的檔案當然不是只有 C:\Program Files\Firefox,而是所有屬於 Firefox 的檔案,其中包括程式捷徑以及存放在 C:\Documents and Settings 裡的檔案。
而實現上述情況的技術正是前面提到的 File System Filter Driver。這個 Filter Driver 藉由轉向的動作讓我們可以從「正常的」軟體安裝目錄來執行程式以及存取資料。
說到這裡,相信看倌對這個技術應該已經有一個概念了。以下我將對 Layer 可以被執行的四個動作做個簡單的說明:
- 啟動:讓程式變成「可用」的狀態,我們可以正常地以一般的方式來執行程式。
- 解除:讓程式從系統中「暫時消失」,解除後我們將不會看到它的安裝目錄以及程式捷徑,所以也無法執行它。
- 重新設定:讓程式恢復到安裝後的初始狀態,如果因為某種因素導致程式受損時就可以使用這項作業。
- 刪除:讓程式從系統中「永久消失」,執行這項作業時會把整個 Layer 從電腦中移除掉,也就是說包括登錄檔在內的所有檔案都將被清除,就像這個程式從來就沒在電腦中出現過一樣。
那在文章一開始提到的「軟體移植」是怎麼一回事?當我們新增一個 Layer 之後,SVS 允許我們將這個 Layer 打包,成為一個 Virtual Software Package,然後我們可以拿這個打包好的檔案去其他同樣裝有 SVS 的電腦上面使用。這對於那些時常在不同電腦之間工作又必須使用相同軟體環境的人來說是一個非常實用的功能,我們可以用 SVS 匯入及匯出 Virtual Software Package 來實現這個功能。
接下來我要用圖文說明的方式來展示建立一個 Layer 的過程:
1. 首先點選 File -> Create New Layer
2. 這裡選擇 Install Application
3. 輸入要替這個 Layer 取的名稱,例如 Firefox
4. 按 Browser 選擇我們要監控的安裝程式。在這裡 Single program capture 以及 Global capture 的差別是前者只會擷取安裝程式對系統造成的改變,後者則是會擷取在安裝過程中整個系統的變化。通常只要選第一個就行了,不然有可能會連其他程式在安裝過程中對系統新增的檔案也一起包進去。
5. 確認資訊之後按完成,這個時候 SVS 會縮小到系統列並出現一個旋轉的圖示,表示正在進行監控以及擷取安裝程式在系統中新增的檔案,緊接著會跳出安裝程式的視窗,再來我們只要按照平常安裝程式的步驟來操作即可。
6. 安裝程式結束並退出之後,SVS 的視窗就會恢復並且視窗裡已經有一個我們剛才新增的 Layer。當程式安裝完之後 Layer 會自動呈「啟動」狀態。不過當電腦關機後 Layer 就會自動被解除,這時我們可以勾選 Start Layer Automatically 來讓它自動啟動。
資訊真是日新月異,
好神奇啊(讚歎)
感謝分享:)
大大:
請問一下,在SVS的Layer中,如果安裝軟體做測試,但此一軟體需要重開機才能完成安裝,SVS支援嗎?
很像 sandboxie
感覺很像沙盤呢@@a
不知試用感覺如何
這軟體真的好
感謝分享!!
真不錯阿!!
請教一下,如果是測試下P2P下載軟體呢?能不能連抓下來的檔案一起包起來呢?
多謝回覆!!
感謝分享
真的很不錯,真的很不錯!的軟體
非常感謝!非常感謝!
云端(http://www.yunduan.cn/)也是一个不错的选择。
想請教虛擬機器、還原軟體(如comodo time machine)、影子軟體(如shadow defender)等之優劣異同?
老師您好:近日重灌安裝Software Virtualization Solution(TM) 2.1,卻無法安裝,不知何故?還請賜教,謝謝!
老師您好:補充說明:出現internal error 2755.1639訊息。