升级内核是否会自动启用 trim?

升级内核是否会自动启用 trim?

简单的问题,我有一些运行 10.04 的服务器,我将其升级到了 12.04。

因此,它们是使用 10.04(我相信是内核 2.6.32*)和当时发布的 ext4 版本进行安装的。

通过升级到 12.04 和较新的内核,是否会自动启用 TRIM?(我需要在 fstab 中添加“丢弃”吗?)或者我是否需要全新安装 12.04 才能在这些驱动器上获得 TRIM 功能。

答案1

不,它不行,目前唯一的方法(至少到 12.10)是实际将选项添加discard到您的/etc/fstab文件中,如下所示:如何启用TRIM?

重启后应该可以启用。我测试了我唯一拥有的固态硬盘,英特尔 520 120GB,在 12.04 中它不会自动激活。这还包括 12.10 的 Beta 1。考虑到这一点,我可能要补充一点,我认为在 12.10 Final 上也会这样,所以现在只能手动操作。

好消息是,在任何版本的 Ubuntu 中升级内核后,丢弃选项都会保留。所以至少我不必每次更新内核时都将其打开。

真正的问题是:为什么默认情况下未启用 trim?

我认为这实际上取决于几个因素,包括:

  • 使用什么文件系统?(并非所有文件系统都支持 TRIM)
  • 使用哪种 SSD?(有些 SSD 不适合 TRIM。有些 SSD 不需要 TRIM)
  • 是否会使用 RAID?(使用 TRIM 时会出现几个 RAID 问题)
  • 会产生什么性能影响?(负面、正面。这取决于所使用的 SSD 和文件系统)

因此,我猜,考虑到所有这些疑问,我们只能通过手动方式进行测试,看看是否真的有好处。我可以说,至少就我的情况而言,带 Trim 和不带 Trim 的 Intel 520 的好处都很少。

答案2

不,升级内核不会自动打开它 - 对于 12.04 附带的内核,它仍然默认处于关闭状态。

请参阅mount 的手册页

discard/nodiscard
  Controls whether ext4 should issue discard/TRIM commands to  the
  underlying  block  device when blocks are freed.  This is useful
  for SSD devices and sparse/thinly-provisioned LUNs,  but  it  is |
  off by default until sufficient testing has been done.           | <--

相关内容