尝试在旧操作系统(CentOS 5.5)上使用现代内核(目前为 2.6.37),以便我们可以在我们的 SSD(Crucial C300s)上运行 TRIM(丢弃)。
最新的 hdparm (9.37) 同意 C300 支持 TRIM:
./hdparm -I /dev/sdc | grep TRIM
* Data Set Management TRIM supported (limit unknown)
* Deterministic read data after TRIM
但是当我尝试使用丢弃选项挂载 /dev/sdc 时,内核似乎不同意:
EXT4-fs warning (device sdc): ext4_issue_discard:2619: discard not supported, disabling
当我写这篇文章时,我们正在尝试其他版本的 Linux,但无论如何,知道发生了什么就好了。
这是 CentOS 5.5 中其他一些老旧组件误导内核的表现吗?或者 hdparm 使用与内核不同的机制来确定是否支持 TRIM?
答案1
对于 SSD 磁盘的性能,“FITRIM”消息比“TRIM”更好。此支持自 2.6.37 开始 - 因此“在线丢弃”被“批量丢弃”取代。您必须使用 ioctl 命令在 ext4 上启用它,请参阅fstrim 实用程序来自 util-Linux。
它在 2.6.39 中得到了改进,并且3.1发布。
此外,由于文件系统损坏,ext4 的“直接 bio 层”功能在 2.6.37 中被禁用。它已启用自 2.6.39 起。
因此,为了提高 SSD 性能,你应该更新到 2.6.39 甚至 3.1
答案2
唐,很高兴在这里见到你(我是 smugmug pro)...
你可能想看看这个帖子在 OCZ 论坛上。它使用的是 2.6.36,并且有一些有趣的花絮,可能会对您的特定设置有所启发。
至于发行版问题,如您所知,CentOS 5.5 已经相当老旧了。很多机器上仍然有它,但期待主要版本的发布。5.6 应该会在本周(左右)发布,6 应该很快就会完成。如果 Red Hat 没有几乎同时发布 5.6 和 6,那么可能已经完成了。我是生产硬件方面的 centos 专家,但看看在同样的设置下 Ubuntu 10.10 服务器会做什么会很有趣。
祝你好运。
答案3
我同意 Zeb 的观点。您可能想尝试一下 live-cd,只是为了检查较新的内核和较新的 ext4fs-tools 将输出什么。
答案4
目前的建议似乎是使用批量 TRIM,而不是逐个删除 TRIM。该命令fstrim -v /
将针对您已挂载的根分区执行此操作。