He migrado los datos principales a un nuevo SSD. (Samsung 840 EVO, 120 GB). La mía ~
es una partición cifrada montada automáticamente por pam_mount
. Es decir, hay un registro /etc/security/pam_mount.conf.xml
para esta partición.
Quiero que sea compatible con TRIM. Sé que debilita un poco el cifrado (es decir, establece algún tipo de canal lateral), pero espero que sea aceptable.
Intenté habilitarlo en pam_mount.conf.xml
. Un enfoque fue incluir discard
opciones de montaje, que se decía que permitían automáticamente el descarte en el dispositivo de bloque cifrado:
<volume user="{USERNAME}" fstype="crypt" mountpoint="/home/{USERNAME}" path="/dev/sdb{NUMBER}" options="defaults,noatime,nosuid,nodev,discard" />
Otro intento fue incluir discard
(y también discards
) en las mntoptions.
<mntoptions allow="discard,discards,nosuid,nodev,loop,encryption,fsck,nonempty,allow_root,allow_other" />
Sin suerte. El fstrim todavía no funciona:
% sudo fstrim --verbose ~
fstrim: /home/{USERNAME}: FITRIM ioctl failed: Operation not supported
¿Se me ha olvidado algo? ¿Una actualización a 14.04 resolvería el problema? El man cryptsetup
comando me dice que --allow-discards
es compatible, así que espero que funcione. La versión del kernel es 3.13.0-35-generic
, lo cual parece estar bien, ya que 3.1+
se requiere la versión.
El sistema de archivos subyacente es ext4. El fstrim
comando funciona perfectamente bien con sistemas de archivos no cifrados (que también son ext4), pero no funciona con el sistema de archivos que está encriptado con dm-crypt (?).
discard
Tenga en cuenta que parece que se utiliza la opción de montaje:
% mount | grep ~
/dev/sdb{NUMBER} on /home/{USERNAME} type crypt (rw,nosuid,nodev,noatime,discard)
Respuesta1
Compilar una nueva versión de pam-mount
la fuente funcionó. Tuve que instalar .deb
de libhx28
y libhx-dev
desde Trusty (lo cual es riesgoso en general) para poder obtener una versión más nueva de esta biblioteca.
Probablemente tendrá la versión más nueva en un Ubuntu más nuevo listo para usar, por lo que puede omitir la compilación. Si puedes, puedes actualizar a Trusty. Quiero quedarme con Precise algún tiempo.
Ahora, habilitar allow_discards
sin discard
es un truco feo. Elparchesimplemente comprueba la presencia de una bandera de "descarte". Entonces, decidí poner "descartar" y "no descartar" (en este orden) y espero que funcione.
Ahora fstrim
en este dispositivo funciona, pero espero que el indicador de descarte de montaje no sea efectivo. No estoy seguro de poder probarlo.
Alternativamente, se podría intentar volver a montarlo, pero no tuve éxito con este enfoque.