Linux LUKS 加密根目录:fstrim 始终修剪所有空白空间

Linux LUKS 加密根目录:fstrim 始终修剪所有空白空间

我有一台 Manjaro 系统,在 NVME SSD 上有一个 LUKS 加密的根文件系统。它设置为/在启动时通过内核解密。

$ cat /proc/cmdline
initrd=\amd-ucode.img initrd=\initramfs-5.11-x86_64.img root=UUID=</dev/mapper/cryptroot UUID> rw cryptdevice=UUID=<SSD partition UUID>:cryptroot:allow-discards

$ cat /etc/fstab
# /dev/mapper/cryptroot
UUID=</dev/mapper/cryptroot UUID>       /               xfs             rw,relatime,attr2,inode64,logbufs=8,logbsize=32k,noquota        0 0

# /dev/nvme0n1p1
UUID=</boot UUID>          /boot           vfat            rw,relatime,fmask=0022,dmask=0022,codepage=437,iocharset=iso8859-1,shortname=mixed,utf8,errors=remount-ro   0 0

这一切都有效,但最近我意识到 trim 没有启用。我将其添加:allow-discards到内核命令行,如上所示。现在,每次运行时,fstrim -v /即使文件系统活动很少,它也会修剪所有可用空间:

$ sudo fstrim -v /
/: 540.8 GiB (580689911808 bytes) trimmed
$ sudo fstrim -v /
/: 540.8 GiB (580660371456 bytes) trimmed

这是预期行为吗?我的其他 SSD(未加密)通常修剪得少得多fstrimdmsetup table显示allow_discards选项,因此应启用修剪。

相关内容