ZFS on Linux >= 0.8
원본 데이터세트를 사용 하고 파기하여 send | recv
기존 데이터세트(스냅샷 포함)를 암호화하는 것이 가능합니까 ?
답변1
예. 이 간단한 예를 참조하세요(ZoL 0.8.3에서 테스트됨).
비밀번호 대신 원본 키 파일을 사용하려는 경우:
( umask 777
dd if=/dev/urandom of=/path/to/keyfile bs=32 count=1 )
먼저 스냅샷을 만듭니다.
zfs snapshot -r tank/home@transfer
그런 다음 조언을 따르되 send | recv
(복사 옵션 사용 -R
) 수신 측에 암호화 옵션을 제공하십시오.
zfs send -R tank/home@transfer |
zfs receive \
-o encryption=aes-256-gcm \
-o keyformat=raw \
-o keylocation=file:///path/to/keyfile \
tank/newhome
원본 데이터세트가 설치된 경우 새 데이터세트는 즉시 설치되지 않습니다.
'/tank/home'을 마운트할 수 없습니다. 디렉터리가 비어 있지 않습니다.
암호화되지 않은 데이터세트를 삭제하고 새 데이터세트로 교체합니다.
zfs destroy -r tank/home
zfs rename tank/newhome tank/home
데이터세트에 하위 데이터세트가 없으면 설치가 쉽습니다.
zfs mount tank/home
기타
zfs list -rH -o name tank/home | xargs -L 1 zfs mount
(또는 zfs mount -a
설치하면 안 되는 다른 데이터세트가 없는 경우)
그게 다야!
마지막으로 원하는 경우 스냅샷을 삭제할 수 있습니다.
zfs destroy -r tank/home@transfer