14.04.5 版 TRIM 灯亮

14.04.5 版 TRIM 灯亮

我想知道我的机器是否适合 SSD,我感到很困惑,在网上阅读这个故事的各个章节......没有编号。

在这里我不会质疑 TRIM 的必要性,因为正如我们将在下面看到的,虽然 Ubuntu 14.04 中的默认设置是禁用的,但在可能的情况下还是提供了启用它的选项,所以我想它是可取的,并且我相信一个不受欢迎的功能永远不会产生这么多的内容。

我的理解是(可能全部都是错的,肯定有些是错的):由于与 Windows 立即删除时修剪相比,通过 fstab+discard 方式处理内核的性能较差,因此 ubuntu 中的激活被推迟到 Trusty。而且即使在 Trusty 中,如果我们相信 fstrim-all 手册(这里的另一章是某些 SSD 固件中存在严重错误),激活也仅限于英特尔和三星 SSD 供应商。fstrim-all [wa|i] 是带有此限制的辅助 cron 工具,并且它绕过了我们需要了解文件系统(以及 FS 对 TRIM 的支持)和挂载点是什么,以回答某人的问题,例如“如果我的 2 个分区 / 和 /home 位于同一个 SSD 上,我必须运行 fstrim / /home 还是 fstrim / 就足够了?”。全部在“dash-all”中代表全部兼容的挂载点(以及全部品牌,借助单个 -no-model-check 参数)。这个有限的白名单(在 man 中)比 fstrim-all 脚本更保守(现在仍然如此)!!!它有 2~4 个供应商,反过来又比 ext4(如果有的话)或内核(当然不可能更少)中的更严格。今天有人说不再有白名单了。他们是指 -all 和/或 fstrim 二进制文件(如果有的话)和/或内核吗?

我很困惑地说:是不是因为我的一台机器是经过 ubuntu 认证的,没有三星、没有英特尔、没有 OCZ、没有 Patriot、没有 SanDisk,在运行 fstrim-all 的 /etc/cron.weekly/fstrim 旁边,我发现了一个修剪通过运行一个简单的脚本来绕过所有 util-linux 限制fstrim -v / >> /var/log/trim.log?我不记得我自己做过这件事。我确实删除了正版 12.04 并按我想要的方式重新分区,我是否从 Precise std iso 重新安装并升级到 Trusty 或从头开始安装 14.04,我不记得了:所以这可能是遗留文件,或者在第二种情况下,Trusty 的魔术安装程序检测到经过认证的品牌/型号并添加了这个。/修剪

不管怎样,我认为我的戴尔不会每周修剪两次,对吗?我并不害怕,我甚至会这么想mv trim ../cron.daily。你只是用另一种方式告诉你,cron.weekly/fstrim 从未在这台机器上运行过修剪。

忽略这一点,我两年前为我妻子的旧笔记本电脑买了一台三星。cron.weekly 中有单个脚本 => 毫无疑问。

然后上周我拿到了一台二手 Crucial M4,我将旧的 IDE 克隆到上面,它为我的台式机做了 /... 我猜 trim 永远不会运行,只要我不复制trim笔记本电脑的脚本,或者我不在其中添加预期的参数fstrim。如果我运行

sudo /etc/cron.weekly/fstrim

回显 $?

0

很奇怪不是吗?Crucial 没有被列入白名单,而 fstrim 脚本未经修改就开箱即用。这可能是由于脚本或子脚本设计(无论做了什么或什么都没做,都没有日志或输出)。对吗?我应该这么做吗?如果是,那不可能像有人说的那样,仅仅靠“不再有白名单”的魔力。自 Trusty 诞生以来,在数百个 3.13 内核更新中,现在是否有一些更新fstab discard比 cron 更新更可取/更可靠?

答案1

我在 14.04 中使用它来代替 Ubuntu 在 /etc/cron.weekly 中的内容,注意我知道我的 ssd 可以处理 trim(即使它在 14.04 中被错误地列入黑名单,并且从未更新它的列表以反映较新的驱动器或较旧驱动器上更新的固件。

#!/bin/sh
LOG=/var/log/trim.log
echo "*** $(date -R) ***" >> $LOG
fstrim -v / >> $LOG

每周一次就可以了(请记住,一周从您安装的那天开始,而不是周日或周一

可以在 /var/log 中找到名为 trim.log 的日志

要检查是否可以,而不需要等待一周,请运行此命令

sudo run-parts /etc/cron.weekly -v

相关内容