**
這幾年新出的硬碟由於既要增加每個扇區的儲存空間,又要保證和現有作業系統的相容,所以出現了物理扇區和邏輯扇區的概念。而這樣的硬碟可能會產生分割槽對齊問題。沒有做分割槽對齊的硬碟效能會受到一定的影響
下面寫文章來說明不做分割槽對齊對分割槽效能的影響和如何做分割槽對齊
先普及幾個概念:
physical sector:磁碟的乙個物理扇區,目前大硬碟一般為4096bytes(4kb),其他的有512bytes(0.5kb)的
logical sector:現在physical sector是4096的硬碟往往會把乙個physical sector分成8個logical sector,每個512bytes(0.5kb),系統實際操作logical sector:劃分logical sector的原因是有些系統呼叫還不支援sector為4096bytes(4kb)的磁碟
lba:邏輯塊定址方法,實際中表現為系統中用來定位磁碟的logical sector的乙個邏輯位址
block size:系統內對分割槽格式化後劃分的最小磁碟單元
舉例:以乙個2t的硬碟為例
檢視磁碟physical sector size、logical sector size和容量
# hdparm -i /dev/sdj|egrep -i "physical|logical|device size with m"
logical sector size: 512 bytes
physical sector size: 4096 bytes
device size with m = 1024*1024: 1907729 mbytes
device size with m = 1000*1000: 2000398 mbytes (2000 gb)
說明每個physical sector 裡有8個logical sector
檢視檔案系統的block size
# tune2fs -l /dev/sdj1|grep "block size:"
block size: 4096
我們在給這個磁碟做分割槽的時候,如果選擇0-100%,則會提示」warning:partition is not properly aligned for best performance「,說明這種分割槽方法使分割槽的效能損失,為什麼呢?
如下圖所示,一圈代表乙個物理扇區(後來查到其實一圈有很多歌扇區,比如256個),用黑線分割成了8個邏輯扇區。沒有做分割槽對齊的分割槽就類似於把分割槽起始lba放置在了紅線位置。這樣會導致什麼後果?有100%的block跨越物理扇區,處理任何該分割槽下的文件都會包含至少乙個跨越物理扇區的block,磁碟跨扇區訪問每個block,這樣勢必會影響檔案系統的i/o效能。0-100%的分割槽行為就是因為分割槽的起始位置沒有在單個扇區的起始位置才會產生waring
大概明白了吧?我們需要把分割槽的起始位置放置在扇區的0,才能保證每個block占用乙個獨立的扇區,訪問單獨的block就不需要跨越扇區了。可不要小看這訪問block跨扇區的動作,在有大量磁碟i/o操作時,對磁碟效能的影響還是很顯著的。
對於以上磁碟的情況,我們可以如下分割槽
#parted /dev/sdj
unit s
mkpart
ext4
40s100%
注意這裡40s的意思是起始lba位置為40 logical sector,恰好是乙個physical的開始(40/8=5)
對於physical sector size = logical sector size的磁碟,一般不用考慮分割槽對齊問題
磁碟分割槽的刪除
使用fdisk 裝置名 進入fdisk 介面。root zeng fdisk dev sdb warning dos compatible mode is deprecated.it s strongly recommended to switch off the mode command c an...
Linux的磁碟分割槽
要掌握 linux磁碟分割槽,先了解一下硬碟的物理結構.一 硬碟的物理結構 為了便於理解,可將硬碟看作乙個圓,它是堅硬金屬材料製成的塗以磁性介質的碟片,不同容量硬碟的碟片數不等.每個盤有兩面,都可記錄資訊.要了解硬碟的物理結構,需要弄懂磁軌 扇區 柱面 簇等幾個概念.磁軌 上圖中硬碟被一圈圈分成18...
Linux磁碟分割槽的理解
磁碟分割 分類磁碟檔名 實體機 dev sd a 虛擬機器 dev vd a p scsi,sata,usb,flash 隨身碟 dev sd a p 1 15 ide 介面 dev hd a d 1 63 windows 在windows中,只有給分割槽分配了碟符如c,這個分割槽才能被使用.那麼如...