磁碟分割槽對齊詳解與配置 - Windows篇

發表於2014-05-29

介紹

許多系統管理員可能不曾聽過”磁碟分割槽對齊“之說,甚至一些有經驗的儲存管理員對分割槽對齊也不甚瞭解。磁碟分割槽不對齊現象是什麼,為什麼會造成比較嚴重的效能下降?相反,配置正確的分割槽起始位置(Offset)設定會使儲存系統發揮更大的效能潛力。文章就磁碟分割槽對齊進行的介紹,並且給出了在Windows平臺上如何配置的方法。

更多資訊

什麼是磁碟分割槽對齊(Disk Alignment、Partition Alignment):

Windows的磁碟有一種結構叫做Master Boot Record(MBR), 它的預設大小為63個Block(每個大小為512位元組)。它的存在使得磁碟的初始位置和的磁碟上第一個分割槽的初始位置有63個Block的錯位。如果磁碟的單個Track大於63個Block的話。這就會導致預設的初始的位置是從第64個開始。使檔案系統的中的Track和位於磁碟中的兩個Track之上。這種不對齊現象會導致儲存系統的效能下降,原因是單個I/O請求會跨越多個磁碟上的Track,從而導致儲存系統的額外效能開銷。特別是對於一些隨機I/O比較較大的應用程式,影響將更大。

而對於Windows 2003以後支援的GPT Disk,也會存在磁碟分割槽不對齊的現象,但是結構有所不同。如圖1所示(圖中單位為Block,512位元組),所有的分割槽由1MB大小(2048 Block)構成,第一個分割槽從LBA 34開始,即17KB大小位置。這也就意味著所有的分割槽會有17KB的不對齊的情況發生。同樣會導致I/O讀寫效能影響。

A-1

圖1

Windows磁碟分割槽對齊配置:

配置磁碟分割槽對齊後,如下圖所示四個分割槽的例子中,對比圖1中不對稱的情況,圖2中這些Windows的分割槽結束地址與圖1中的地址位置一致了。

A-2

圖2

磁碟分割槽對齊操作,只針對Windows的Basic Disk。對於Windows 2008和Windows 2008 R2,無需對磁碟進行對齊操作,因為這個過程已經在作業系統劃分分割槽的時候自動進行了,軟體的升級還是給管理員們帶來了不少便利的。對於Windows 2003和 2003 R2,以及Windows 2000,建議設定開始偏移量(starting offset)為64KB(128 block)。另外,對於Dynamic Disk型別,不能進行磁碟分割槽對齊操作。不過,如果原來的Basic Disk上已經進行了對齊操作的分割槽,會在轉換後保留原來的對齊。

檢視Windows磁碟分割槽對齊方法

1. 檢視Basic Disk的分割槽對齊資訊:

方法1:

在Windows的命令列下輸入Diskpart命令。

C:\>diskpart

選擇對應的Disk

DISKPART> list disk (顯示本機所有磁碟)

DISKPART> Select Disk X (x代表上面顯示的從0開始的磁碟編號)

DISKPART> list partition (顯示從1開始的所有的分割槽資訊,在最右邊有一個Offset/偏移量的值,如果它是8的倍數,說明你的硬碟分割槽是對齊的,如果不是,說明你的磁碟分割槽沒有對齊)

方法2:

使用WMIC命令,在Windows命令列下輸入下列命令,命令輸出的列StartingOffset為該分割槽的偏移量,該數值除以512則為扇區數目:

wmic partition get BlockSize, StartingOffset, Name, Index

2.檢視Dynamic Disk的對齊資訊:

使用dmdiag工具,下載地址;

執行從命令列執行dmdiag.exe –v

在命令列輸出中,LDM Volume區域的RelSec列,該列顯示的就是Dynamic Disk的起始扇區。

磁碟分割槽對齊配置方法

對於Windows 2003 sp1以下版本,使用dispar命令來設定偏移量和分割槽對齊。步驟如下:

1. 安裝在Windows Resource Kit後,在Performance Tools目錄下,通過命令列執行diskpar命令:

2. 使用diskpar –s N命令,下面的例子中定義了配置一個20GB的磁碟的錯位64KB的配置

A-3

對於Windows 2003 sp1以上版本,dispar命令被dispart命令所替換。

1. 在CMD命令列執行Diskpart命令

C:\>diskpart

2. 選擇對應的Disk

DISKPART> Select Disk X

3. 建立分割槽設定偏移量為64KB(128 Block),下面的例子為建立一個1GB的分割槽。

DISKPART> create partition primary size=1024 align=64

 

最後,進行分割槽對齊操作的時候需要注意:對齊操作需要在磁碟上寫入資料之前完成,最好在磁碟剛剛對映到主機時進行。磁碟對齊操作必然損壞磁碟上的資料,所以如果有資料需先備份,操作的時候注意資料安全。

參考

Aligning GPT Basic and Dynamic Disks P/N 300-004-075

應用於

Windows 2000

Windows 2003

Windows 2008

相關文章