我以前把Linux安装在硬盘上。这很容易。但现在我有一个 SSD,我想在上面安装 Fedora 17。
我应该怎么做才能让Fedora 17向SSD发出TRIM命令?
答案1
这非常简单,现在 TRIM 可以通过 LVM 传递到底层设备。
安装时,请确保文件系统全部设置为 ext4。 ext3 不支持 TRIM。
安装后,以 root 身份登录并编辑
/etc/fstab
.在第四列(通常为defaults
)中添加关键字discard
。对/
和/boot
分区以及您在 SSD 上创建的任何其他分区执行此操作。一个例子:
/dev/mapper/vg_mymachine-lv_root / ext4 discard 1 1 UUID=94b6d32d-ec21-4028-9a89-b1a19849c4ad /boot ext4 discard 1 2
(如果
defaults
是唯一的关键字,可以用 替换discard
。如果有其他关键字,请在后面添加逗号,例如whatever,discard
。)交换无需执行任何操作;所有交换分区自动支持 TRIM。
默认情况下禁用 LVM 对丢弃的支持。通过编辑
/etc/lvm/lvm.conf
并更改issue_discards = 0
为来启用它issue_discards = 1
。重新启动计算机。
答案2
Fedora 18 中存在一些问题,LUKS 无法传播 TRIM 命令,但这在 Fedora 19 中得到了修复。在我的系统上,TRIM 命令传播成功。只需要对配置进行一些更改即可。首先,我们需要检查 TRIM 是否将所有分区传播到终端设备:
[lzap@lzapx ~]$ lsblk -D
NAME DISC-ALN DISC-GRAN DISC-MAX DISC-ZERO
sda 0 512B 2G 1
├─sda1 0 512B 2G 1
└─sda2 0 512B 2G 1
├─fedora_lzapx-root 0 512B 2G 1
├─fedora_lzapx-swap 0 512B 2G 1
└─fedora_lzapx-home 0 512B 2G 1
└─luks-aaaaaaaa-6657-44f4-8297-bbbbbbbb1111 0 512B 2G 0
最后一列显示 TRIM 命令是否传播。我们可以看到一切都已设置, 除了加密的主页(最后一行)。为了在 LUKS 加密设备上获得完整的 TRIM 支持,我们需要允许 TRIM 命令。注意这会降低加密强度。这是 Fedora 19 默认的 crypttab 文件:
$ cat /etc/crypttab
luks-aaaaaaaa-6657-44f4-8297-bbbbbbbb1111 UUID=aaaaaaaa-6657-44f4-8297-a571e02e5492 none
我allow-discards
在那里添加了选项:
$ cat /etc/crypttab
luks-aaaaaaaa-6657-44f4-8297-bbbbbbbb1111 UUID=aaaaaaaa-6657-44f4-8297-a571e02e5492 none allow-discards
可选 LVM 配置
如果您经常修改 LVM 逻辑卷(例如缩小、删除),则需要在`/etc/lvm/lvm.conf 中将 issues_discards 设置为 1。然后您需要执行下面描述的下一个可选步骤。
可选的初始化 RAM 磁盘再生
如果你有根由 LUKS 加密的分区(不是我的情况)或者如果你有根LVM 上的分区和如果您希望在收缩或删除时进行 LVM 修剪(请参阅上面的可选步骤),则需要使用以下命令重新生成初始 RAM 磁盘:
dracut -f
当然,您需要重新启动才能使此更改生效。
现在,要启用 TRIM 并利用它,有两个选项:
删除文件时TRIM
可以配置 ext4 在删除数据时发送 TRIM 命令。您可以通过discard
向 中的分区添加选项来做到这一点/etc/fstab
。请注意,这会减慢删除速度。这取决于 SSD 驱动器,但这在某些驱动器上可能会显着减慢速度。
不要将discard
选项设置为交换设备,因为这不是必需的(也许它也不起作用)。默认情况下,交换对 SSD 友好并传播 TRIM 命令。
从 cron 进行修剪
这是首选选项,因为如果您不关闭笔记本电脑/服务器,则可以每天、每周或在夜间安排它:
cat /etc/cron.weekly/01-fstrim
#!/bin/sh
fstrim /
fstrim /home
chmod +x /etc/cron.weekly/01-fstrim
现在尝试运行该脚本,它不应该打印任何错误消息。如果您更改了 LUKS 配置,则可能需要重新启动才能执行此操作。
http://lukas.zapletalovi.com/2013/11/how-to-trim-your-ssd-in-fedora-19.html