我有一个OCZ Agility 2 固态硬盘有 40 GB 的空间。我将其用作 Debian Linux 中的系统驱动器(“Squeeze”),我认为它非常快。我读了很多关于对齐分区和文件系统的文章,但我不确定我是否成功正确对齐了分区。也许 SSD 可以更快?
我用ext4输出如下fdisk -cul
:
Disk /dev/sda: 40.0 GB, 40018599936 bytes
255 heads, 63 sectors/track, 4865 cylinders, total 78161328 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: [...]
Device Boot Start End Blocks Id System
/dev/sda1 * 2048 73242623 36620288 83 Linux
/dev/sda2 73244670 78159871 2457601 5 Extended
/dev/sda5 73244672 78159871 2457600 82 Linux swap / Solaris
我的分区是由 Debian Squeeze 安装助手创建的。所以我不关心分区的细节。但现在我觉得安装程序可能没有正确对齐它?实际上,2048
对我来说看起来不错(比 63 之类的奇数值要好),但我不知道。
据一些“SSD 对齐计算器”我在网上发现,OCZ SSD 有一个NAND 擦除块大小512kB 及其NAND页面大小是4kB。
2048 可以被 4 和 512 整除。那么分区对齐正确吗?
答案1
为了完全确保与 4K 扇区和 SSD 单元边界(通常为 128 或 256 或 512K)的兼容性,默认对齐将为磁盘中的 1MByte。
2048 (sectors) * 512 = 1048576 (or exactly 1MByte)
因此对我来说,您的磁盘看起来已正确对齐,包括闪存擦除单元大小和页面写入大小。
请记住,扇区计数从 0 开始,因此虽然它声称位于扇区 2048,但您的分区实际起始的扇区是磁盘的第 2049 个扇区,这将它置于前两个 NAND 闪存单元之后的第一个扇区中,同样,该扇区也是第 256 个 4K 字节“页面”之后的第一个扇区。
答案2
当前的轶事建议进行 512KB 对齐(或 log2n 的更大整数值),因此您要确保所有起始扇区都能被 1024 个扇区(即 512K 字节)整除。
/dev/sda1 * 2048
2048/1024 = 2 好的
/dev/sda2 73244670
73244670 / 1024 =71527.99
因此,如果偏离 2 个扇区,则为正常。但是,由于它是扩展分区,因此我认为这是正确的,只要您将实际磁盘分区从扇区开始即可73244672
。必须保留 1 个扇区,因为必须在扩展分区的开头写入逻辑分区。只需确保在创建文件系统时进行检查即可。
/dev/sda5 73244672
73244670 / 1024 = 71528 好的