montar uma partição zfs criptografada

montar uma partição zfs criptografada

Então eu tenho que montar uma partição zfs criptografada para consertar meu computador. Procurei em todos os lugares, mas não consigo montá-lo com as informações que encontrei. Cada vez que faço sudo zfs set mountpoint=/mnt/k/ rpoolisso não falha, mas não consigo acessar os arquivos. Se eu montá-lo em discos, recebo arquivos error mounting /dev/sda4 to /media/ubuntu/rpool2: unknown filesystem type zfs_member (udisk-error-quark, 0). Provavelmente a partição não está sendo montada porque está criptografada. Como faço para montá-lo?

Responder1

Você pode usar o exemplo de fluxo de trabalho abaixo para realizar o seguinte:

  1. Instale o ZFS e verifique a instalação
  2. Localize e importe um pool ZFS de uma partição de disco
  3. Defina o ponto de montagem do pool e/ou conjunto de dados ZFS desejado
  4. Descriptografe o keystore do pool ZFS
  5. Monte a chave de cifra e carregue-a no ZFS
  6. Monte seu pool e/ou conjunto de dados ZFS no ponto desejado
ZFS_DISK='/dev/sdX'
ZFS_POOL_PARTITION='/dev/sdXn'
ZFS_POOL='rpool'
ZFS_POOL_DATASET='DATA'  # 'ROOT' or 'USERDATA' for Ubuntu
MOUNTPOINT='/mnt'

# install zfs (using apt-get, yum, dnf, pacman, etc)
sudo apt-get install zfsutils-linux
sudo zfs --version

# locate zfs disk and pool
sudo lsblk -af "$ZFS_DISK"
sudo fdisk -l "$ZFS_DISK"
 
# create mountpoint directories for zfs pool and cipher key
sudo mkdir -p "$MOUNTPOINT"
sudo mkdir -p /zfskey
 
# import pool from partition
sudo zpool import -d "$ZFS_POOL_PARTITION" "$ZFS_POOL"
sudo zpool list
sudo zpool status -P "$ZFS_POOL"

# get and set the mountpoint for our zfs pool/dataset
# NOTE: mountpoints may collide with current filesystem,
# as mountpoints inherit from higher-level mountpoints
sudo zfs get mounted "$ZFS_POOL" -t filesystem -r
sudo zfs get mountpoint "$ZFS_POOL" -t filesystem -r
sudo zfs get mountpoint "$ZFS_POOL/$ZFS_POOL_DATASET"  # BACKUP THIS VALUE
sudo zfs set mountpoint="$MOUNTPOINT" "$ZFS_POOL/$ZFS_POOL_DATASET"
 
# decrypt zfs keystore and load cipher key
sudo cryptsetup open "/dev/zvol/$ZFS_POOL/keystore" zfskey  # creates /dev/dm-0 dm-1 dm-2
ls -l /dev/mapper/zfskey  # /dev/mapper/zfskey -> /dev/dm-n
sudo cryptsetup -v status zfskey
sudo mount /dev/mapper/zfskey /zfskey
df -H
ls -l /zfskey
sudo cat /zfskey/system.key | sudo zfs load-key -L prompt "$ZFS_POOL"

# mount the decrypted pool and/or dataset
sudo zfs mount "$ZFS_POOL/$ZFS_POOL_DATASET"
sudo zfs list
ls -la "$MOUNTPOINT"

Seu diretório agora deve estar montado e visível.

informação relacionada