Ubuntu 是否支持用于 SSD 的 TRIM 命令?

ssa*_*anj 35 ssd trim kernel

SSD 驱动器装满后需要“清除/重置”以保持性能。这是通过新 SSD 驱动器的 TRIM 命令完成的。Ubuntu 是否支持用于清除/重置这些驱动器的 TRIM 命令(通过 hdparm 等)?

Jer*_*err 24

看起来在 10.10 和更新版本中支持 TRIM 功能:

此外,TRIM 内容会自动发生 - 如果磁盘报告它支持 TRIM,则在不再需要它们时(例如,您删除文件)会自动释放空块。您不必手动发出 hdparm 命令即可使其工作。

  • TRIM 命令需要知道要释放哪些块,因此在不确切知道磁盘上哪些块未被使用的情况下发出此命令是很危险的。是的,操作系统和磁盘都需要修剪支持。在 Linux 中,这是在内核版本 2.6.33 中添加的,因此将包含在 Maverick 中。您使用的磁盘驱动程序和文件系统都需要支持修剪才能正常工作。如果你在 Maverick 上使用 ext4 作为你的文件系统,你应该没问题。 (3认同)

Oli*_*Oli 20

Jeremy 的回答并不完全准确 AFAIK。一段时间以来,我一直在 Lucid 上运行最新的稳定内核,并且一直在密切关注 TRIM 的状态,因为我的主磁盘是 OCZ Agility。

这是(我认为)我所知道的:

  • 内核从 2.6.33 开始支持 TRIM(Maverick 是 2.6.35)。

  • EXT4 具有 TRIM 支持,但仅在日志关闭时才支持。

  • TRIM 在内核中的工作方式非常基本,而且速度很慢。遵循规范的磁盘可以接受多个范围,但内核目前一次只能执行一个范围。这来自我一个月前读到的东西。我希望我有消息来源,因为这可能不是真的或可能不再适用。

日记对我来说是致命的。数据损坏是一个 PITA。

然而,较新版本的 hdparm(v9.25 - Maverick 位于 v9.27)带有一个名为的脚本,该脚本wiper.sh执行驱动器的快速分析,然后修剪所有空白空间。与其失去功能,我发现 cronwiper.sh每周运行一次(或每天/每月/无论如何)要容易得多。操作系统驱动器的 SSD 降级不会发生得那么快,除非您不断地把事情搞砸。您不需要实时修剪。

还有一个名为DiskTRIM的 GUI 前端,它似乎不在存储库中。经验不足的用户可能会发现这比设置 cron 作业更容易使用。

有用于 hdparm 和 disktrim 的 PPA,所有这些都可以在 Lucid(以及更远的版本)上运行,而无需 2.6.33+ 内核。

  • 在 Ubuntu 12.04 中,wiper.sh 已替换为 fstrim (2认同)

Uli*_*Uli 8

Linux 从内核 2.6.33 开始支持使用 ETX4 文件系统的自动 TRIM。

第一Ubuntu的释放带自动TRIM支持是10.10(MAVERIC),但它在fstab中被激活(如所描述的在这里)。