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个扇区 成功 删除临时文件.. 同步磁盘.. 完成。
但是,如果我再次运行它,它会显示需要修剪的相同数量的扇区/范围,并再次报告成功。 我每次都得到完全相同的东西。 它看起来不像是被删除/释放的扇区。 阅读它们仍然显示相同的数据。
好奇,如果有其他人让它工作。