无需 sudo 即可挂载 ecryptfs

stu*_*ent 5 mount fstab ecryptfs

我正在使用以下脚本挂载 ecryptfs 目录(来自如何在 Linux 中恢复 Synology 加密文件夹)。

tty -echo
read -p "Enter passphrase: " PASS; echo
stty echo

sudo mount -t ecryptfs -o key=passphrase,ecryptfs_cipher=aes,ecryptfs_key_bytes=32,ecryptfs_passthrough=no,ecryptfs_enable_filename_crypto=yes,passwd=$PASS $1 $2
Run Code Online (Sandbox Code Playgroud)

作为普通用户,如何在没有 sudo 的情况下执行此操作?

stu*_*ent 2

可以生成 fstab 条目,如下所述:https ://wiki.archlinux.org/index.php/ECryptfs#Auto-mounting_2

使用 mount 命令可以获得正确的挂载选项并将其添加到 fstab 文件中

/path/to/encrypted/dir /path/to/decrypted/dir ecryptfs              noauto,user,rw,relatime,ecryptfs_fnek_sig=XY,ecryptfs_sig=XY,ecryptfs_cipher=aes,ecryptfs_key_bytes=32,ecryptfs_unlink_sigs 0    0 
Run Code Online (Sandbox Code Playgroud)

其中 XY 必须替换为正确的签名(由安装打印)。

例如,在安装之前,必须将密码添加到密钥环中

printf "%s" "mypassword" | ecryptfs-add-passphrase
Run Code Online (Sandbox Code Playgroud)

然后可以通过以下方式安装卷:

mount -i /path/to/decrypted/dir
Run Code Online (Sandbox Code Playgroud)