TRIM на зашифрованном устройстве с Precise
Я перенес основные данные на новый SSD. (Samsung 840 EVO, 120 ГБ.) Мой ~
является зашифрованным разделом, автоматически смонтированным pam_mount
, То есть есть запись в /etc/security/pam_mount.conf.xml
для этого раздела.
Я хочу, чтобы он поддерживал TRIM. Я знаю, что это немного ослабляет шифрование (то есть устанавливает какой-то побочный канал), но я надеюсь, что это приемлемо.
Я пытался включить его в pam_mount.conf.xml
, Одним из подходов было включить discard
чтобы смонтировать параметры, которые, как было сказано, автоматически разрешают сброс на зашифрованное блочное устройство:
<volume user="{USERNAME}" fstype="crypt" mountpoint="/home/{USERNAME}" path="/dev/sdb{NUMBER}" options="defaults,noatime,nosuid,nodev,discard" />
Еще одна попытка была включить discard
(а также discards
) в мн.
<mntoptions allow="discard,discards,nosuid,nodev,loop,encryption,fsck,nonempty,allow_root,allow_other" />
Неудачно. Фстрим до сих пор не работает
% sudo fstrim --verbose ~
fstrim: /home/{USERNAME}: FITRIM ioctl failed: Operation not supported
Я что-нибудь забыл? Решит ли обновление до 14.04? man cryptsetup
команда говорит мне, что --allow-discards
поддерживается, поэтому я надеюсь, что это должно работать. Версия ядра 3.13.0-35-generic
что вроде нормально, так как версия 3.1+
необходимо.
Основной файловой системой является ext4. fstrim
Команда прекрасно работает с незашифрованными файловыми системами (которые также являются ext4), но не работает с файловой системой, которая обернута шифрованием dm-crypt (?).
Обратите внимание, что discard
Опция монтирования, кажется, используется:
% mount | grep ~
/dev/sdb{NUMBER} on /home/{USERNAME} type crypt (rw,nosuid,nodev,noatime,discard)
1 ответ
Компиляция новой версии pam-mount
из источника сделал свое дело. Я должен был установить .deb
из libhx28
а также libhx-dev
от Trusty (что в целом рискованно), чтобы получить более новую версию этой библиотеки.
Вероятно, у вас будет более новая версия в новой Ubuntu из коробки, поэтому вы можете пропустить компиляцию. Если вы можете, вы можете перейти на Trusty. Я хочу остаться с Precise некоторое время.
Теперь, позволяя allow_discards
без discard
это уродливый хак Патч просто проверяет наличие флага "сбросить". Итак, я решил поместить и "сбросить", и "nodiscard" (в этом порядке) и надеюсь, что это сработает.
Сейчас fstrim
на этом устройстве работает но надеюсь сбросить флаг монтирования неэффективно. Не уверен, смогу ли я проверить это.
В качестве альтернативы можно попытаться выполнить перемонтирование, но у меня не получилось с этим подходом.