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

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

看起来在10.10和更新版本中支持TRIMfunction:

  • 如何优化SSD的操作系统?

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

Jeremy的回答并不完全准确AFAIK。 我已经在Lucid上运行了最新的稳定内核已经有一段时间了,因为我有一个OCZ Agility作为我的主磁盘,因此我非常敏锐地关注TRIM的状态。

这是我认识的(我认为):

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

  • EXT4具有TRIM支持,但仅限于日记function关闭时。

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

Journalling是为我杀死它的原因。 数据损坏是PITA。

然而,较新版本的hdparm(v9.25 – Maverick在v9.27)附带了一个名为wiper.sh的脚本,它可以对驱动器进行快速分析,然后修剪所有空白区域。 而不是丢失function,我发现cron wiper.sh每周运行一次(或每天一次/每月一次)更容易。 操作系统驱动器的SSD降级不会那么快,除非你经常撕毁。 您不需要实时TRIMming。

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

有hdparm和disktrim的PPA,所有这些都可以在Lucid上运行(并且可以在后面运行),而不需要2.6.33+内核。

自内核2.6.33以来,Linux支持使用ETX4文件系统的自动TRIM。

第一个支持自动TRIM的Ubuntu版本是10.10(Maveric),但它必须在fstab中激活(如此处所述)。

总的来说,是的,因为有很多方法可以获得更新的内核。 如果我们澄清您的问题,请阅读“10.04 LTS是否支持开箱即用?” 然后答案是否定的。 但是,Maverick和Natty的内核(-generic,-generic-pae,-server和-virtual flavors)都被反向移植到10.04 LTS,并且可以从Ubuntu存储库中的$ release-updates中获得,例如linux-image-generic-lts-backport-maverick是Maverick向Lucid的 linux-image-generic-lts-backport-maverick

我正在运行11.04并且它看起来不像TRIM开箱即用。

我使用此处的说明进行测试,以创建文件,删除它,并查看扇区是否被清零/删除 。

我尝试使用这里的说明启用TRIM ,但没有骰子

我跑了wiper.sh,我明白了

 /sbin/wiper.sh --verbose --commit / dev / sda1
 wiper.sh:由Mark Lord提供的Linux SATA SSD TRIM实用程序3.3版。
删除rootdev =的/ dev / SDA1
 fsmode2:fsmode =读写
 /:fstype = ext4
 freesize = 13785252 KB,保留= 137852 KB
准备/ dev / sda1上的可用空间的在线TRIM(在/上安装ext4读写)。

此操作可能会以静默方式破坏您的数据。 你确定(是/否)?  ÿ
创建临时文件(13647400 KB)..
同步磁盘..
开始TRIM操作..
 get_trimlist = / sbin / hdparm --fibmap WIPER_TMPFILE.9689

 / dev / sda上:
从462个范围修剪27294800个扇区
成功
删除临时文件..
同步磁盘..
完成。

但是,如果我再次运行它,它会显示需要修剪的相同数量的扇区/范围,并再次报告成功。 我每次都得到完全相同的东西。 它看起来不像是被删除/释放的扇区。 阅读它们仍然显示相同的数据。

好奇,如果有其他人让它工作。