我遇到了以下问题。我将磁盘分成两个分区,一个用于 /,另一个用于 /home。我还加密了 /home。
有一天,ubuntu 在启动时报告了一些损坏的文件,尝试修复它们,但仍然不让我进入 - 我输入了密码,密码被接受,但我仍然停留在登录屏幕上。
我已经下载了 livecd 并运行了磁盘检查 - 它报告了两个损坏的文件,但没有说明是哪些文件,也没有提供任何修复它们的选项。
通过 nautilus 我可以看到驱动器的内容,它包含两个文件:
Access-Your-Private-Data.desktop
README.txt
自述文件说要访问我的数据,我必须运行“ecryptfs-mount-private”,但是当我运行它时:
ubuntu@ubuntu:~$ ecryptfs-mount-private
错误:加密的私人目录未正确设置
因此,我查找了如何安装加密分区,并找到了这个从命令行挂载加密卷?但后来我得到了这个:
ubuntu@ubuntu:~$ sudo cryptsetup luksOpen /dev/sda7 home
设备 /dev/sda7 不是有效的 LUKS 设备。
我不太清楚问题是什么,而且我对 ubuntu/linux 管理也不是很熟悉。您能帮我找到问题并修复它吗?我只想访问我的数据和 ssh 密钥。
Ubuntu版本是14.04。
提前致谢。干杯!
答案1
加密主目录(使用 eCryptFS)与加密分区(使用 cryptsetup / LUKS)不同。事实上,你可以挂载你的/home
分区并“查看驱动器的内容”还告诉您它不是一个完全加密的设备(因此不是 cryptsetup/LUKS)。
要立即查看加密的主文件,您应该能够运行:
ecryptfs-recover-private
- 查找并挂载任何加密的私人目录
只需运行它而不指定任何目录,它就会“在整个系统中搜索加密的私有目录”,man
有关信息请参阅其页面。(实际上,在终端中,键入ecryptfs
然后TAB几次应该会显示可能的命令列表,您可能已经看到了“恢复”并认为它可能有用。)
而且您可能看不到所有文件,实际加密的文件可能位于/home/.ecryptfs/<user>/.Private/
和 eCryptfs 配置目录中/home/.ecryptfs/<user>/.ecryptfs/
。如果您现在想备份/home
分区中可以看到的所有内容,那么稍后也应该能够解密所有内容(如果您没有忘记复制重要文件wrapped-passphrase
)。
我不知道“损坏的文件”是什么,也不知道您如何运行“磁盘检查”或它给出了什么错误,但终端中的标准文件系统检查将运行该fsck
程序,或者如果您知道可以运行的文件系统fsck.<type>
,也许可以fsck.ext3
(这实际上是指向该程序的链接e2fsck
)。请参阅您的特定文件系统man
的页面(应该会告诉您,它是否已安装,如果没有,则或或“磁盘”或程序)/home
mount
parted -l
fdisk -l
gparted
如果您的驱动器出现故障,或者文件系统以某种方式损坏(电源故障?),它们可能会给出类似的错误,但这只是猜测。如果驱动器出现故障,情况可能会继续恶化,如果您想将分区挂载为只读(mount -o ro
...),您可能能够读取所有数据,以免情况变得更糟。但同样,这只是对您非常模糊的“损坏文件”错误格外谨慎和偏执。