我应该如何为 LVM 逻辑卷配置 TRIM 支持?

Zac*_*rry 9 ssd trim lvm kvm 12.04

我正在为软件演示目的设置一个笔记本。该机拥有Intel Core i7 CPU、8GB RAM、128GB SSD,运行Ubuntu 12.04 LTS 64bit桌面。实际上,SSD 配置为具有单个卷组,/boot、/swap 和 /all 位于其各自的逻辑卷中。它们总共消耗 30GB 空间。我计划将剩余的用于 KVM 来宾的逻辑卷,全部运行 Ubuntu 12.04 Server

我想确保 SSD 得到最佳利用。虽然在这个站点上,有一些关于为不涉及 LVM 的文件系统设置设置 TRIM 支持的重要信息,但我还没有找到关于我计划设置的明确指南。

我也发现这个页面其中谈到加issue_discards/etc/lvm/lvm.conf。但是在我机器上的上述文件中,我没有找到引用的内容。我仔细检查过man lvm.conf(5),也没有看到任何提及此选项的内容。

因此,我不知道该怎么做。此外,即使说添加选项是正确的做法,我是否应该在我的机器中/etc/fstab仍然添加诸如noatime等的安装选项?

非常感谢任何提示、指示和/或进一步的指导。

lza*_*zap 9

对于谷歌人 -当我们谈论删除文件时,不需要issue_discards选项来使 TRIM 工作。唯一的影响是在您实际修改 LVM 时(例如缩小或删除逻辑卷)。但是普通用户通常根本不会这样做。

对于那些在 LVM 卷组上配置虚拟机并经常删除它们的人,建议使用此设置。否则你不需要那个。有关更多信息,请访问 lvm.conf 手册页。这是来自 RHEL 6.2 LVM 管理指南:

Red Hat Enterprise Linux 6.2 发行版支持 lvm.conf 配置文件中的 issue_discards 参数。设置此参数后,当逻辑卷不再使用物理卷上的空间时,LVM 将向逻辑卷的底层物理卷发出丢弃消息。有关此参数的信息,请参阅 /etc/lvm/lvm.conf 文件的内联文档,该文件也记录在附录 B,LVM 配置文件中。

https://access.redhat.com/site/documentation/en-US/Red_Hat_Enterprise_Linux/6/html/Logical_Volume_Manager_Administration/LVM_overview.html

我写了一篇关于这个的博客:http : //lukas.zapletalovi.com/2013/11/how-to-trim-your-ssd-in-fedora-19.html


kal*_*ris 3

我将 LVM 2.02.95 向后移植到 Ubuntu 12.04 并将其放入 ppa 中。要使用它,请发出以下命令:

sudo apt-add-repository ppa:kalakris/lvm
sudo apt-get update
sudo apt-get install lvm2
Run Code Online (Sandbox Code Playgroud)

升级后,issue_discards命令 in/etc/lvm/lvm.conf将按预期被识别。


H.-*_*itt 2

issue_discards目前,12.04 附带的 LVM 版本不支持该选项。

来自LVM 变更日志

版本 2.02.85 - 2011 年 4 月 29 日

将新的 acquire_device_list_from_udev 设置添加到 lvm.conf。
如果 LVM2 是使用 udev 支持编译的,则默认从 udev 获取设备列表。
添加对 vgimportclone 的测试以及使用重复 pv 查询 vgnames 的测试。
当发现重复的 PV 时,避免使用已释放的内存。
将“devices/issue_discards”添加到 lvm.conf。
...

在 12.04 中,LVM 版本为 2.02.66(12.10 附带 2.02.95)。

现在设置这个选项不会有什么坏处,因为它会被默默地忽略。
请参阅红帽 Bugzilla 820203