有没有简单的方法可以判断我是否在主目录中使用 ecryptfs?我ecryptfs-migrate-home
之前尝试运行该脚本,但中途失败了。我以为它又回到了使用我以前的普通、未加密的主目录,但我刚刚注意到 /home/.ecryptfs/naught10t/.Private 存在,并且其中有很多文件……
答案1
如果正在使用 ecryptfs,您的主文件夹将被挂载。您可以使用以下命令检查是否已挂载:
df -T
当我运行它时,我得到了这个结果:
kalle@Kalle-PC:~$ df -T
Filesystem Type 1K-blocks Used Available Use% Mounted on
/dev/sdc1 ext4 115376648 9002220 100513568 9% /
udev devtmpfs 2050188 4 2050184 1% /dev
tmpfs tmpfs 824108 1128 822980 1% /run
none tmpfs 5120 0 5120 0% /run/lock
none tmpfs 2060264 900 2059364 1% /run/shm
/dev/sdb1 fuseblk 1953512444 1183183452 770328992 61% /media/x
/dev/sda2 ext4 861466440 138769200 678937216 17% /home
/home/kalle/.Private ecryptfs 861466440 138769200 678937216 17% /home/kalle
我的系统上有多个驱动器,但最后一行是相关的。它显示 ecryptfs 类型的 /home/kalle/.Private 已安装到 /home/kalle,这是我的主目录。
在您的系统上运行df -T
并检查结果。
答案2
在终端中输入命令mount
。这将列出设备及其文件系统。查找ecryptfs
。
答案3
我想在脚本中使用 fallocate,但发现我仍在我测试的其中一台机器上使用 ecryptfs,但失败了,告诉我不支持 fallocate。
我实现并进行 shellchecked 来检测这种情况并使用 dd 的代码如下:
if $(grep -q -e "^${HOME}/.Private ${HOME} ecryptfs" "/proc/mounts"); then
echo 'eCryptfs detected!';
fi