我目前有一个加密的(使用 Veracrypt)存储分区,我在 Windows 和 Ubuntu 之间共享该分区(这样我就可以在操作系统之间共享相同的文件,并且可以更轻松地备份我的所有文件)。解密后,存储分区包含“桌面”、“图片”、“文档”等目录(用户目录)。要解密分区,我必须输入密码,我通过在 Ubuntu 的“启动应用程序首选项”中创建一个简短的脚本来完成此操作,该脚本启动终端,提示我输入密码,然后解密并将驱动器安装到~/Home/
gnome-terminal -e 'bash -c "sudo veracrypt -t -k \"\" --protect-hidden=no --pim=0 /dev/sda5 $HOME/Home; exec bash"'
在 Windows 上,我将用户目录设置为我的存储分区目录,当 Windows 启动时,桌面和其他目录都是空的,直到我输入我的 veracrypt 密码,然后所有用户目录都会填满来自存储分区的文件。我希望在 Ubuntu 上也能有类似的效果。
我尝试过的事情
- 存储分区挂载后,将 更改
~/.config/user-dirs.dirs
为我的用户目录所在的路径。(我相信它被 xdg-user-dirs-update 覆盖,并被主目录替换) - 更改
/etc/xdg/user-dirs.conf
为enabled=False
(我相信这只是使其更改为默认路径) - 存储分区挂载后,将 更改
/etc/xdg/user-dirs.defaults
为我的用户目录所在的路径。(仍然只是将其更改为默认路径,这很奇怪,因为这不是定义默认值的文件吗??) - 将简短的 veracrypt 脚本放在开头,
/etc/xdg/user-dirs.conf
看看是否可能xdg-user-dirs-update
会暂停其进程以等待存储分区被解密并且终端关闭。 (没有) xdg-user-dirs-update
更改中的值后运行~/.config/user-dirs.dirs
。(我认为该命令在启动期间只运行一次,之后的所有执行都没有意义)
更新
运行mount --bind ~/old-dir/ ~/new-dir/
适用于除桌面之外的所有用户目录。桌面目录设置为我的存储分区,~/Desktop/ 会按照我的意愿将我带到我的存储分区,但是,桌面本身不会更新以显示我的存储分区中的文件,而是显示以前的文件。如果我右键单击并创建新文件夹,它会在我的存储分区中创建一个新文件夹,而不会出现在桌面上。如果有某种方法可以刷新桌面以显示新安装的目录,那将会很有帮助。