我遇到了一个大问题。当我从 10.10 升级到 11.04 时,我丢失了主目录中的所有数据。我只有来自主加密目录的数据。我该怎么办?谢谢 Martin
答案1
我解决了这个问题。
将所有加密数据备份到*.tar文件。
查找加密目录的隐藏密码 - passprase 或者你会发现:
ecryptfs-unwrap-passphrase /home/oldusername/.ecryptfs/wrapped-passphrase
创建一个具有加密主目录的新用户(勾选选择)。
以新用户身份登录,然后按照以下说明操作: 恢复此地址中的数据在 https://help.ubuntu.com/community/EncryptedPrivateDirectory
(sudo mount-t ecryptfs /home/oldusername/.Private /home/username/Private)最后以 root 权限登录到目录 Private。
马丁取得巨大成功
答案2
这是一个非常简单的方法,基于此博客,使用11.04 或 11.10 live cd/usb 或者如果你双启动 11.04/11.10 安装
http://blog.dustinkirkland.com/2011/04/introducing-ecryptfs-recover-private.html
它确实要求您知道要恢复其加密目录的用户的登录密码。 如果还知道用户名,那么复制恢复的文件就可以大大简化,(没有理由不知道),所以首先要列出方法。
如果你不知道你的密码
您可以使用登录密码解密文件 /home/username/.ecryptfs/wrapped-passphrase 来恢复它。
步骤1
$sudo ecryptfs-unwrap-passphrase /home/username/.ecryptfs/wrapped-passphrase
第2步
输入您的登录密码以显示无法显示的挂载密码
适用于 Live CD/USB
启动到 live cd/usb,选择 Try me 选项。进入桌面后,单击电源齿轮指示器 > 系统设置 > 用户帐户。如果要求输入密码,只需按键盘上的 Enter 键即可。(无需密码
创建新用户,使用与要恢复目录的用户名称完全相同。单击“帐户类型”,选择“管理员”。创建后,单击“帐户已禁用”并启用帐户。密码无所谓,123456 或任何可接受的密码都可以。
如果使用 11.04 live cd/usb打开终端并运行此命令,在 11.10 或更新版本上无需
gconftool-2 -s -t bool /apps/indicator-session/suppress_logout_menuitem false
现在注销并在登录屏幕上选择新用户,登录。登录后,打开 nautilus 并挂载加密目录所在的分区。然后打开终端并运行此
sudo ecryptfs-recover-private
可能需要一点时间才能找到,出现提示时,如果找到的目录是所需的目录,则选择 y
当提示输入“登录密码”时,请使用要恢复加密文件的用户的密码
这是一个例子。
doug@ubuntu:~$ sudo ecryptfs-recover-private
INFO: Searching for encrypted private directories (this might take a while)...
INFO: Found [/media/03b449b1-3c0b-481d-a917-afeb3e528a5a/home/.ecryptfs/doug/.Private].
Try to recover this directory? [Y/n]: y
INFO: Enter your LOGIN passphrase...
Passphrase:
Inserted auth tok with sig [4b308179ad1441de] into the user session keyring
INFO: Success! Private data mounted read-only at [/tmp/ecryptfs.NgZaH4ds].
现在浏览到 /tmp,您将成为 ecryptfs.XXXXXXXX 目录的所有者,并可以自由查看和复制任何文件
从双启动
基本相同。但有一些不同,请登录您的管理员帐户
安装 ecryptfs-utils
sudo apt-get install ecryptfs-utils
然后与上述相同,创建一个与要恢复文件的用户具有相同用户名的新用户,登录新用户,挂载分区,运行命令等。
如果出于某种原因不想从完全相同的用户名恢复
然后,您无需创建该用户,如果在 11.04 live cd/usb 上,则无需更改 gconf 设置。否则,对于实时会话或双启动恢复,与上面所示相同。
主要区别在于您需要以 root 身份查看恢复的文件,并且需要将所有文件复制到 root 拥有的目录中。复制后,它们就可以正常传输
建议的一种查看和复制方式
sudo mkdir /tmp/backup; gksudo nautilus /tmp/backup
然后从第二个终端或 Alt+F2 打开另一个根浏览器(gksudo nautilus),浏览到 /tmp/the_recovered_directory
将您想要的任何内容复制到 /tmp/backup,然后您就可以像“正常”一样从 /tmp/backup 复制
答案3
/home/USERNAME/.Private/
简单的方法是在转到文件夹中找到您的真实主文件夹.ecryptfs
。在这里您可以看到恢复主文件夹所需的设置文件。(如果没有,则可能是出了问题)您必须先有一个密码。这与您用于登录 PC 的密码不同。在终端中输入:
ecryptfs-unwrap-passphrase /home/USERNAME/.Private/.ecryptfs/wrapped-passphrase
然后输入你的登录密码。它会显示一个重要的mumble乱码!现在我把它叫做secret1
。
然后在那里找到文件 Private.sig。如果你找不到该文件(为什么?),你可以运行以下命令:
ecryptfs-add-passphrase --fnek
当它询问你时,输入secret1
。考虑将 Private.sig 文件或此命令输出的第二行中的混杂字母视为secret2
。我稍后会使用它。
然后运行:
mount -t ecryptfs /home/USERNAME/.private/.Private /mnt
输入secret1
密码。按回车键回答所有问题,但以下问题除外:
回答“启用文件名加密”用 y 回答“文件名加密密钥 (FNEK)”用 secret2
我们到了。现在转到 /mnt 并查看您的文件。如果您仍然看到 momble 混乱的世界,那么您可能忘记了一些东西或者……,我不知道
答案4
标准方法
在图形桌面上,单击:“访问您的私人数据”
或者:
从命令行运行:
ecryptfs-mount-private
安装方法
cd home # Go to the folder which contains hidden .ecryptfs folder.
USER=$USER # Change it, if your username is different than the current.
SIG1=$(head -n1 .ecryptfs/$USER/.ecryptfs/Private.sig) # Load your 1st signature from the file.
SIG2=$(tail -n1 .ecryptfs/$USER/.ecryptfs/Private.sig) # Load your 2nd signature from the file.
echo Your pass:; PASS=$(ecryptfs-unwrap-passphrase .ecryptfs/wrapped-passphrase | sed s/Passphrase:\ //) # Enter your passphrase, repeat if necessary.
echo $PASS $SIG1 $SIG2 # Verify presence of all 3 hashes.
echo $PASS | sudo ecryptfs-add-passphrase --fnek # Add pass to user session keyring for sig specified in mount option.
sudo mount -t ecryptfs -o key=passphrase,ecryptfs_cipher=aes,ecryptfs_key_bytes=16,ecryptfs_passthrough=no,ecryptfs_enable_filename_crypto=yes,ecryptfs_sig=$SIG1,ecryptfs_fnek_sig=$SIG2,passwd=$(echo $PASS) $USER/.Private /mnt
Attempting to mount with the following options:
ecryptfs_unlink_sigs
ecryptfs_fnek_sig=12735429868516ff
ecryptfs_key_bytes=16
ecryptfs_cipher=aes
ecryptfs_sig=7bdbefd9e2d40429
或者您可以检查以下脚本:
故障排除
您可以使用工具恢复“真实”密码ecryptfs-unwrap-passphrase
,例如
ecryptfs-unwrap-passphrase wrapped-passphrase
该工具将要求输入“密码”,在这种情况下,它与“登录密码”相同,实际上是旧的登录密码。
看Daemon 挑战 2:我们有获胜者!或者回复:如何最好地破解包装的密码?一些暴力攻击的建议。
也可以看看: