如何从加密的主目录恢复数据?


19

我有一个大问题。从10.10升级到11.04时,我的所有数据都丢失在主目录中。我只有家庭加密目录中的数据。我能做什么?谢谢马丁


嗨!打开一个终端,键入ls -a ~,然后将其仅复制粘贴到您的问题中。(请使用<pre> HTML标签!)
antivirtel

1
首先,在确定出问题所在之前,不要使用该磁盘。如果您需要从LiveCD中读取文件,则可以使用LiveCD以只读方式浏览和挂载分区。
Lekensteyn 2011年

@B。Roland:缩进四个空格而不是使用<pre>标签。
Lekensteyn 2011年

为什么会更好?每行您必须添加4个空间,<pre>非常简单...
antivirtel 2011年

Answers:


17

我解决了问题。

将所有加密的数据备份到* .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),最后以根特权登录目录Private。

许多成功的马丁


7

这是使用此博客使用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步

输入您的登录密码,以显示无法登录的挂载密码


对于现场CD / USB

启动到实时CD / USB,选择“尝试我”选项。进入桌面后,单击电源齿轮指示灯>系统设置>用户帐户。如果要求输入密码,只需按键盘上的Enter键。(没有密码

创建一个新用户,使用与要恢复其目录的用户完全相同的名称。单击帐户类型,选择管理员。创建完成后,单击“禁用帐户”并启用该帐户。密码无关紧要,可以使用123456或任何接受的密码。

如果使用11.04 live cd / usb,请打开终端并运行以下命令:.on 11.10或更高版本,无需

gconftool-2 -s -t bool  /apps/indicator-session/suppress_logout_menuitem false

现在注销并在登录屏幕上选择新用户,登录。登录后,打开Nautilus,然后将分区安装在加密目录所在的位置。然后打开一个终端并运行它

sudo ecryptfs-recover-private

出现提示时,可能需要一些时间才能找到找到的目录,然后选择y

当提示您输入“ LOGIN passphrase”(登录密码)时,请使用要恢复其加密文件的用户的密码

这是一个例子。

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复制为“正常”


5

简短的方法是在“ /home/USERNAME/.Private/ 转到.ecryptfs文件夹”中找到您的真实主文件夹。在这里,您可以看到恢复主文件夹所需的设置文件。(如果不是,则可能是出了点问题)您必须先输入密码。这与您用来登录PC的计算机不同。在终端中输入:

ecryptfs-unwrap-passphrase /home/USERNAME/.Private/.ecryptfs/wrapped-passphrase

然后输入您的登录密码。它会向您显示一个重要的妈妈乱语!现在我称之为secret1

然后在此处找到文件Private.sig。如果找不到该文件(为什么?),可以运行以下命令:

ecryptfs-add-passphrase --fnek

当它询问您时,输入secret1。考虑来自Private.sig文件第二行或此命令输出第二行的妈妈杂乱字母secret2。我稍后再使用。

然后运行:

mount -t ecryptfs /home/USERNAME/.private/.Private /mnt

输入secret1密码。通过按Enter键回答所有问题:

用y回答“启用文件名加密”用secret2回答“文件名加密密钥(FNEK)”

我们到了。现在转到/ mnt并查看您的文件。如果您仍然看到妈妈般的混乱世界,那么您可能会忘记某些东西,或者……,我不知道


我认为这会有所帮助。但时间太长
twister_void 2011年

您的用户名和内容向后,因此我将其修复了,您可以再给一次答案吗?我很困惑什么的应该是.private,什么应该是.Private
豪尔赫·卡斯特罗

2

标准方法

在图形桌面上,单击:“访问您的私人数据”

要么:

从命令行运行:

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

该工具将要求输入“ passphrase”,在这种情况下,该密码与实际上是旧的登录密码的“ login passphrase”相同。

请参阅守护程序挑战2:我们有赢家!回复:如何最好地破解包装密码?有关一些蛮力攻击的建议。

也可以看看:

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.