![如何在 Ubuntu 12.10 上的 LVM 上启用 TRIM?](https://linux22.com/image/1097684/%E5%A6%82%E4%BD%95%E5%9C%A8%20Ubuntu%2012.10%20%E4%B8%8A%E7%9A%84%20LVM%20%E4%B8%8A%E5%90%AF%E7%94%A8%20TRIM%EF%BC%9F.png)
当我在 SSD 上重新安装 Ubuntu 12.10 64 位时,我选择了在 Ubiquity 中使用 LVM 的选项。我正在尝试找出如何为我的 SSD 启用 TRIM。我偶然发现了这篇文章:
http://worldsmostsecret.blogspot.com/2012/04/how-to-activate-trim-on-luks-encrypted.html
文章指出,除了将 discard 和 noatime 添加到 /etc/fstab 之外,还必须将 discard 添加到 /etc/crypttab 中的驱动器 (sdX_crypt)。我的问题是,我的 /etc/crypttab 中仅列出了几个 cryptswap;它没有列出任何 sdX_crypt。
我当前有一个 /dev/sda1 (ext2),它是启动点,还有 /dev/mapper/ubuntu-root,这是我的 ext4 分区。
关于如何启用 TRIM 有什么想法吗?
答案1
只有当您实际使用 LUKS 时,Crypttab 才有意义,但您没有提到这一点。(“只要 LUKS 不知道您要使用 TRIM,它就会出于安全原因有效地阻止来自 LVM 分区文件系统的所有 TRIM 操作”)
如果您不使用 LUKS,则将丢弃选项添加到 fstab 就足够了。
请注意你在做什么。这将在删除这些文件系统上的文件时开始发送 TRIM 命令。要 TRIM之前已删除的文件,我相信您需要运行 fstrim 命令。
您还应该注意 /etc/lvm/lvm.conf 中的“issue_discard”选项。这控制在缩小或删除 LV 时是否发送 TRIM。(同样,它没有提到对已经空闲的空间进行 TRIM)。默认情况下,它是禁用的。就我个人而言,我会保留它,因为我习惯了从错误中恢复的可能性。(当我高兴时,我可以在文件系统我已经创造了……我怀疑交换但分区仍然默认发出修剪)。