Предполагая, что вы используете стандартную схему шифрования Ubuntu, без дополнительных настроек.
Папка $ HOME/.ecryptfs на самом деле является просто ссылкой.
Истинное место, где хранятся ваши файлы: /home/.ecryptfs/$USER
Там есть две папки.Приватный (с зашифрованными файлами) и .ecryptfs, с такими файлами, как авто-монтирование, авто-монтирование, Private.mnt, Private.sig, упакованный пароль.
Надеемся, что целевые файлы будут скопированы на резервную копию вашего хоста.
Если на этом сервере нет резервной копии вашей парольной фразы, вы потерялись. Если есть резервная копия, то ваша схема шифрования была ослаблена хранением вашей завернутой парольной фразы в Интернете, если вы не контролируете хост, на котором вы делаете резервную копию.
Я нашел этот скрипт для монтирования:
ROOT=/home/.ecryptfs/$USER
TARGET=/mnt/$USER
# ROOT should be the parent of the .ecryptfs and .Private folders
sudo mkdir -p $TARGET
cd $ROOT
echo Type your password:
PASS=$(ecryptfs-unwrap-passphrase .ecryptfs/wrapped-passphrase | sed s/Passphrase:\ //)
SIG1=$(head -n1 .ecryptfs/Private.sig)
SIG2=$(tail -n1 .ecryptfs/Private.sig)
echo Passphrase:
echo $PASS
echo Signatures:
echo $SIG1
echo $SIG2
echo Should be empty:
sudo keyctl clear @u
sudo keyctl list @u
echo Do not type anything:
echo $PASS | sudo ecryptfs-add-passphrase --fnek
echo Sould have signatures:
sudo keyctl list @u
echo Mounting $ROOT on $TARGET...
sudo mount -t ecryptfs -o key=passphrase,ecryptfs_cipher=aes,ecryptfs_key_bytes=16,ecryptfs_passthrough=no,ecryptfs_enable_filename_crypto=yes,ecryptfs_sig=$SIG1,ecryptfs_fnek_sig=$SIG2,passwd=$(echo $PASS) .Private $TARGET
ls $TARGET
unset -v PASS