由于ecryptfs能够自动挂载的加密默认只能加密主目录或者是~/Private目录,使得加密其它目录要挂载时需要在终端打入一长串的命令,如果目录中有中文的话就更要命了。参考了诸如拷贝到、移动到之类的脚本,现在也用脚本解决了这个问题,可以达到鼠标右键完成挂载和卸载的目的。贴一段例子代码出来,如下:

挂载当前目录
#!/bin/bash
Directory=$(echo $NAUTILUS_SCRIPT_SELECTED_FILE_PATHS)
CheckPassword=`zenity –entry –text=”请输入挂载密码” –title=”密码输入框” –hide-text`
if [ “$?” == 1 ] ; then exit ; fi
#提取出ecryptfs_sig与ecryptfs_fnek_sig的值,默认值相同
response=`printf “%s” $CheckPassword | ecryptfs-add-passphrase -`
sig=`echo “$response” | grep “Inserted auth tok” | sed “s/^.*[//” | sed “s/].*$//”`
gksu -u root -D exryptfs挂载脚本 “mount -t ecryptfs $Directory $Directory -o key=passphrase:passphrase_passwd=$CheckPassword,ecryptfs_sig=$sig,
ecryptfs_fnek_sig=$sig,ecryptfs_cipher=aes,ecryptfs_key_bytes=16,
ecryptfs_passthrough=n,no_sig_cache”

卸载当前目录
#!/bin/bash
Directory=$(echo $NAUTILUS_SCRIPT_SELECTED_FILE_PATHS)
gksu -u root -D exryptfs卸载脚本 “umount $Directory”

转载请注明来自 五百年
本文地址:http://blog.lizhenyu.com/build-ecryptfs-script/
分类: 代码