新购一个西数2T硬盘,也就是绿盘的那种,淘宝500左右,支持高级格式化。
到手以后,分区格式化,前几天格式化完成以后,fdisk -l 发现如下文字引用
Partition 1 does not start on physical sector boundary.
网上找了下,说是软件的问题,后来折腾了下,应该是分区没有对齐的原因,至于为什么要对齐,优点很多,好像这个是跟神马高级分区格式化有关,具体的原理神马的,我就不讨论了,反正有一点,对齐后,性能会有提升。 这个是我对齐后,ext4 分区后,dd 的速度 可以看出,速度是相当的给力的 没有对齐前的速度是这样的 很明显,速度提升非常高,同样的硬盘,同样的测试方法 对齐后,用fdisk -lu 查看的结果如下引用
Disk /dev/sdc: 2000.4 GB, 2000398934016 bytes 255 heads, 63 sectors/track, 243201 cylinders, total 3907029168 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk identifier: 0x2fa8ebd1 Device Boot Start End Blocks Id System /dev/sdc1 2048 3907028991 1953513472 83 Linux 怎么样个对齐的方法呢,就是分区的时候,要注意,不要用 fdisk 来分区,不是说fdisk不行,经过我的测试,用 fdisk 分区,我明明分的是2T,结果却是1T大小,用 parted 分区就没有这个问题 debian 下面,如果没有 parted 这个工具,apt-get 安装,安装完成以后,就可以使用了引用
root ~]# parted /dev/sdb # 使用parted来对GPT磁盘操作,进入交互式模式 GNU Parted 1.8.1 Using /dev/sdb Welcome to GNU Parted! Type ‘help’ to view a list of commands. (parted) mklabel msdos # 将MBR磁盘格式化为msdos 2T的硬盘 msdos 没有问题 (parted) p #打印当前分区 (parted) mkpart primary 1 2TB # 分一个2T的主分区,这里输入1,否则会提示性能问题 (parted) p #打印当前分区 (parted) q 退出 Information: Don’t forget to update /etc/fstab, if necessary. 退出后,用 mkfs.ext4 格式化就好了 然后再用 fdisk -lu 查看,已经没有那个提升了 这里说明下,对齐,就是说分区的时候,开始的扇区要以 8 的倍数来开始,而 fisk 默认是 63 ,对老硬盘没有什么问题,但是对西数的新硬盘, 4k 扇区的,就会有对齐的问题,会导致性能下降