在启动时挂载EncFS

我试图得到一个EncFSencryption家庭挂载在启动没有用户input(直接,而不是通过SSH)。 已经尝试了各种解决scheme(在pam_mount.conf.xml中添加一个卷条目,对各种pam文件进行各种调整),没有任何喜悦。 可以手动安装encfs目录,但需要手动input密码。 可以用期望的脚本完成所有这一切…

在启动时有很多关于automounting encfs的post,但是不能让他们中的任何一个工作(缺less期望的脚本)。

任何人都可以build议如何做到这一点(我使用Debian挤压)? 或者是一个期望脚本最好的方式去?

谢谢!

您可以将密码input到encfs中,如下所示:

echo password | encfs -S /crypted /uncrypted 

在Squeeze上,我在/etc/rc.local中使用这一行:

 /usr/local/sbin/mount_crypted_encfs.exp 

这个脚本是:

 #!/usr/bin/expect -f set timeout 1 spawn /usr/bin/encfs /crypted /uncrypted -- -o allow_other -o default_permissions expect "EncFS Password:" send "myPassword\r" expect eof 

但十次中有一次,挂载失败,我必须手动运行expect脚本: – /

我只是简单地使用一个bash脚本,就像这样:

 #!/bin/bash ENCFS6_CONFIG="/home/<user>/.keys/encfs/key_data.xml" encfs -o nonempty --extpass='/home/<user>/.keys/encfs/key_data_pw' /run/media/<user>/data /home/<user>/DATA 

ENCFS_CONFIG文档中详细logging了ENCFS_CONFIGextpass的使用。