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 на этом устройстве работает но надеюсь сбросить флаг монтирования неэффективно. Не уверен, смогу ли я проверить это.

В качестве альтернативы можно попытаться выполнить перемонтирование, но у меня не получилось с этим подходом.

Другие вопросы по тегам