启动时解密 encfs

启动时解密 encfs

我想在启动时解密 EncFS“卷”。通常我会像这样解密卷:

cat "/home/user1/encfs.pw" | encfs -S /mnt/encryptedVolume /mnt/decryptedVolume

/etc/init有一个myService.conf文件:

start on startup
stop on shutdown
respawn

pre-start script
  cat "/home/user1/encfs.pw" | encfs -S /mnt/encryptedVolume /mnt/decryptedVolume
end script

exec /home/user1/myService

如果没有预启动部分,myService 可以正常启动。如果有预启动部分,则无法启动,因为如文档中所述,如果脚本行失败,则它仍然存在。

我的问题是,脚本行在 shell 中可以运行,但在预启动中却不行。

有人可以帮忙吗?感谢您的帮助。

答案1

(我想我的评论应该是一个答案......)

我猜测启动脚本运行时“/mnt/encryptedVolume”尚未安装。

您可以等待一段时间,直到所需的卷安装完成后再运行脚本,

  • sleep 20在脚本中使用。
  • 或者在一切“启动”并安装完毕并且您登录后运行脚本,运行initctl start myService就可以了。

相关内容