Как включить сброс в зашифрованном корне

Как включить сброс в зашифрованном корне

Я установил систему нафайловая система 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 refreshdevice), но, похоже, его нет ( cryptsetup: Unknown action).

Физическое устройство, по-видимому, поддерживает TRIMего, когда я запускаю fstrim /bootего, он работает (это то же самое устройство, просто не зашифрованное).

dmsetup tableкоманда не отображается allow_discardsдля cryptroot.

Когда я загружаюсь с USB и вручную расшифровываю (с --allow-discardsаргументом cryptsetup) и монтирую корневой раздел, это работает. Я пытался использовать --persistentoption, но он сказал, что не может сделать его постоянным.

Я запутался. Что мне сделать, чтобы это 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. (Возможно, сначала сделайте резервную копию на случай, если с вашей конфигурацией что-то не так, а вы об этом не знаете.)

Связанный контент