
Я установил систему нафайловая система ext4налвм(имя vg encrypted
, root называется encrypted-root
) налюкс. Когда я пытаюсь бежать fstrim /
, я получаю fstrim: /: the discard operation is not supported
.
Мой /etc/crypttab
содержит
cryptroot UUID=5ddb7e3a-dcbe-442d-85e8-359e944d0717 none luks,discard,lvm=encrypted
/etc/lvm/lvm.conf
содержит
issue_discards = 1
/etc/initramfs-tools/conf.d/cryptroot
содержит только
CRYPTROOT=target=encrypted-root,source=/dev/disk/by-uuid/5ddb7e3a-dcbe-442d-85e8-359e944d0717
(Раньше я update-initramfs -k all -c
создавал initramfs).
/etc/default/grub
содержит
GRUB_CMDLINE_LINUX="cryptops=target=encrypted-root,source=/dev/disk/by-uuid/5ddb7e3a-dcbe-442d-85e8-359e944d0717,lvm=encrypted"
Я пробовал вручную поставить rd.luks.options=discard
параметр для linux в grub. Я пробовал refresh
вариант cryptsetup
утилиты (cryptsetup --allow-discards refresh
device
), но, похоже, его нет ( cryptsetup: Unknown action
).
Физическое устройство, по-видимому, поддерживает TRIM
его, когда я запускаю fstrim /boot
его, он работает (это то же самое устройство, просто не зашифрованное).
dmsetup table
команда не отображается allow_discards
для cryptroot
.
Когда я загружаюсь с USB и вручную расшифровываю (с --allow-discards
аргументом cryptsetup
) и монтирую корневой раздел, это работает. Я пытался использовать --persistent
option, но он сказал, что не может сделать его постоянным.
Я запутался. Что мне сделать, чтобы это fstrim /
заработало? Что-то мне подсказывает, что мне нужно как-то изменить параметры загрузки в grub, но я не уверен, как. Я также не уверен, используется ли вообще строка в /etc/crypttab (я изменил ее на cryptroot
после установки, похоже, она ничего не делает, даже если я ее изменяю).
я бегуЛинукс Минт 19.3.
Ссылки:
- Я следовал этому руководству по шифрованию системы:связь
- Раздел Arch-Wikiо SSD и dm-crypt
- возможно релевантно:1,2
решение1
Я выяснил, что проблема была на уровне шифрования. (Вы можете запустить его dmsetup table
как root, чтобы увидеть, отображается ли на вашем устройстве allow_discards
.)
Это решило мою проблему:
- Редактировать
/etc/initramfs-tools/conf.d/cryptroot
, добавитьdiscard
опцию для конкретного устройства. В моем случае строка выглядела так:CRYPTROOT=target=encrypted-root,source=/dev/disk/by-uuid/5ddb7e3a-dcbe-442d-85e8-359e944d0717,discard
. - Запустите
update-initramfs -k all -c
. (Возможно, сначала сделайте резервную копию на случай, если с вашей конфигурацией что-то не так, а вы об этом не знаете.)