메인 데이터를 새 SSD로 마이그레이션했습니다. (Samsung 840 EVO, 120GB.) My 는 ~
에 의해 자동 마운트된 암호화된 파티션입니다 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" />
또 다른 시도는 mntoptions에 discard
(및 )을 포함하는 것이었습니다 .discards
<mntoptions allow="discard,discards,nosuid,nodev,loop,encryption,fsck,nonempty,allow_root,allow_other" />
불운. fstrim이 여전히 작동하지 않습니다.
% 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
from source 의 새 버전을 컴파일하는 pam-mount
것이 성공했습니다. 이 라이브러리의 최신 버전 을 얻으려면 Trusty(일반적으로 위험함)를 .deb
설치 해야 했습니다 .libhx28
libhx-dev
최신 Ubuntu에서 최신 버전을 사용할 수 있으므로 컴파일을 건너뛸 수 있습니다. 가능하다면 Trusty로 업그레이드할 수 있습니다. 나는 한동안 Precise에 머물고 싶습니다.
이제 allow_discards
없이 활성화하는 discard
것은 추악한 해킹입니다. 그만큼반점단지 "폐기" 플래그가 있는지 확인합니다. 그래서 나는 "discard"와 "nodiscard"를 모두 이 순서대로 넣기로 결정했고 이것이 효과가 있기를 바랍니다.
이제 fstrim
이 장치에서는 작동하지만 폐기 마운트 플래그가 효과가 없기를 바랍니다. 테스트할 수 있을지 잘 모르겠습니다.
또는 다시 마운트를 시도할 수도 있지만 이 접근 방식으로는 성공하지 못했습니다.