稀疏磁碟映像

維基百科,自由的百科全書

稀疏磁碟映像 是一種磁碟映像文件,可以由Mac OS X系統下的Disk Utility創建。Mac OS X 的 FileVault 功能使用的就是加密的稀疏磁碟映像文件來保護用戶的主目錄。

普通的磁碟映像文件 (.dmg)的大小與其代表的實際磁碟是一樣的(儘管其中尚有空間未使用),而稀疏磁碟映像文件 (.sparseimage) 的大小僅為實際使用數據的磁碟空間。

這對備份數據非常有利,比如,當用戶需要給一個名為 "INFO"的硬碟備份,硬碟本身容量為5GB 而實際上裡面只有 2.5GB 的數據。如果使用一張單層 DVD-R (容量約為 4.7GB )將無法容納一個普通的 "INFO.dmg" 映像文件,而 "INFO.sparseimage" 映像就沒有這個問題,因為原來卷宗未使用的 2.5GB 實際上並沒有分配到在稀疏磁碟映像中, "INFO.sparseimage" 文件只占用 2.5GB.

要注意,如果將備份好的 2.5GB "INFO.sparseimage" DVD再次接入時 Finder 會報告它有 5GB 容量,2.5GB 可用。但實際上這個虛擬盤是「只讀」的,因為其原映像放在了一張只讀光碟上。不過,如果這個 2.5GB 的稀疏磁碟映像文件 "INFO.sparseimage" 寫在硬碟上,當接入系統後,用戶可以繼續寫入文件,直到原有的 5GB 容量寫滿為止。追加寫入文件時, ".sparseimage" 文件將隨之增大。 從已接入的虛擬盤中刪除文件不會讓 ".sparseimage" 文件容量減少,只有將其推出時,整個映像文件才會隨之變小。

使用此映像文件類型有兩個限制:

  1. 由於 ".sparseimage" 映像文件容量可變,因此當其容量不斷增大時,有時會導致容納這個映像文件的物理卷宗(或硬碟分區)容量不足。這個時候 ".sparseimage" 文件必須轉移到一個更大的物理磁碟或分區。
  2. 如上所述,當往接入的 ".sparseimage" 文件葉榕文件導致容量自動增大時,必須使用 Disk Utility, hdiutil, 或其他工具來進行算法修正。

當疏散磁碟映像文件沒有接入系統時, .sparseimage 文件可以通過 Disk Utility 的 Resize Image 功能或「終端」的命令行來改變大小。如在下例中,疏散磁碟映像文件可最大擴展到 50 GB:

hdiutil resize -size 50g MyFile.sparseimage

同樣,一個 .sparseimage 文件容量增長後又有文件刪除,可以用以下命令進行 "壓縮" :

hdiutil compact MyFile.sparseimage

關於命令 hdiutil 的詳細內容可以通過以下命令查詢:

man hdiutil

稀疏束[編輯]

Mac OS X v10.5 (Leopard) 中引入了一個新概念「稀疏束」 (sparse bundle).[1] 稀疏束是一種文件的 捆綁 形式,而不是單純的一個文件。當磁碟映像內容改變時,捆綁內容相應的改變,創建或刪除。這個機制可使備份軟體 (如 Time Machine) 更有效的工作。

參考資料[編輯]