在加密分区上使用定位

在加密分区上使用定位

我在安装 Ubuntu 时选择加密 /home/。现在可以使用locate这样的加密分区吗?

答案1

我既“在登录时运行locate(updatedb),如上所述,我也继续我的我的加密 $HOME 下的定位数据库的一部分。

export LOCATE_PATH="$HOME/var/mlocate.db"

然后我$HOME

updatedb -l 0 -o $HOME/var/mlocate.db -U $HOME

现在我有一个完整的索引,但是除非安装和解密,$HOME否则数据库是不可见的。$HOME

答案2

当您的文件系统被解密时,如何运行 updatedb 并尝试匹配环境变量来读取/写入它?

阅读手册页后,将两个变量添加到您的 BASH RC 文件中。

man locate
echo "export LOCATE_PATH=$HOME/var/lib/mlocate/mlocate.db:$LOCATE_PATH" >> ~/.bashrc
echo "export DBPATH=$HOME/var/lib/mlocate/mlocate.db:$DBPATH" >> ~/.bashrc

创建上面指定的目录并将 $username 添加到 mlocate 组。

mkdir -p ~/var/lib/mlocate/
sudo usermod -a -G mlocate $username

注销并再次登录,将您的用户计入 mlocate 组中并获取新的环境变量。现在,当您运行时,

updatedb -o $LOCATE_PATH

解密文件现在是否位于定位数据库中?或者,您做了什么来使其正常工作或变得更好?

您可能还想将 updatedb 添加到用户的 crontab。首次运行:

crontab -e

并添加以下行:

0 12 * * * updatedb -o $HOME/var/locate

答案3

如果不登录,实际上不可能更新数据库索引。您应该登录并运行 updatedb 命令。

检查 中的配置。从 中/etc/updatedb.conf删除,可能从 中删除。不要忘记在 之后运行。ecryptfsPRUNEFS/home/.ecryptfsPRUNEPATHSsudo updatedb

相关内容