周正

周正的博客

他的个人主页  他的博客

【转贴】ubuntu恢复ecryptfs私人文件夹

周正  2010年12月07日 星期二 14:44 | 5911次浏览 | 3条评论

因为某些原因,决定重装一下系统。。因为分区的时候/home一直是独立分出来的,以前都是直接装的,/home分区会被保留下来。不过 ubuntu8.10后为了防止物理安全(重装,挂硬盘等)。安装时会加密我的主目录,简单的说就是把整个主目录都加密了,如果电脑丢失或者重新安装系统时,没有关键密码此主目录则永远无法恢复,哎,可怜我的数据都被加密成乱码了。。

帖地址:http://vl99.com/net/linux/ubuntu-ecryptfs-restore-file/

因为某些原因,决定重装一下系统。。因为分区的时候/home一直是独立分出来的,以前都是直接装的,/home分区会被保留下来。不过 ubuntu8.10后为了防止物理安全(重装,挂硬盘等)。安装时会加密我的主目录,简单的说就是把整个主目录都加密了,如果电脑丢失或者重新安装系统 时,没有关键密码此主目录则永远无法恢复,哎,可怜我的数据都被加密成乱码了。。

如何恢复ecryptfs私人文件夹

首先,说一下恢复时需要用到的东西,如果少一个就忘记这文章吧.

  1. 以前用户的登录密码!
  2. /home/.ecryptfs/你的主目录名/.Private(主要的文件是备份在这里,不过是加密的)
  3. /home/.ecryptfs/被加密的目录名/.ecryptfs/wrapped-passphrase文件 (这个是用来解密的。。)

准备工作         (括号中的文字不要输入!)

安装ecryptfs:

sudo aptitude install ecryptfs-utils (保证下面 的命令能运行就是了。如果已经安装,此步略。)

cd /home/.ecryptfs/以前用户目录名/.ecryptfs/   (进到以前用户解密文件夹,里面有wrapped-passphrase文件的)

sudo ecryptfs-unwrap-passphrase wrapped-passphrase
Passphrase: 输入以前被加密的用户的登录密码
d748f151928cfb5bdd11fea9e2fa9ae2       (就会得到一个像这样的密钥字符串,先保存起来)

sudo ecryptfs-add-passphrase  --fnek                     (得出两个解密的密钥)
Passphrase: d748f151928cfb5bdd11fea9e2fa9ae2       ( 输入先前保存的密钥字符串)
Inserted auth tok with sig [6ceb75c6208b3c78] into the user session keyring
Inserted auth tok with sig [01bda2c2fc25d863] into the user session keyring
(记住方括号中的两串字符串,后面要用到。其中第二串是解密文件名用的)

准备工作都做好开始恢复
在现在的主目录下新建一个目录restore

sudo mount -t ecryptfs /home/.ecryptfs/以前用户加密的主目录名称/.Private  ~/restore     (挂载加密文件到恢复目录里)
Passphrase:d748f151928cfb5bdd11fea9e2fa9ae2         ( 输入先前保存的密钥字符串)
Select cipher:
1) aes: blocksize = 16; min keysize = 16; max keysize = 32 (not loaded)
2) blowfish: blocksize = 16; min keysize = 16; max keysize = 32 (not loaded)
3) des3_ede: blocksize = 8; min keysize = 24; max keysize = 24 (not loaded)
4) twofish: blocksize = 16; min keysize = 16; max keysize = 32 (not loaded)
5) cast6: blocksize = 16; min keysize = 16; max keysize = 32 (not loaded)
6) cast5: blocksize = 8; min keysize = 5; max keysize = 16 (not loaded)
Selection [aes]:直接回车
Select key bytes:
1) 16
2) 32
3) 24
Selection [16]:直接回车
Enable plaintext passthrough (y/n) [n]:直接回车 (如果你发现你恢复过来的文件名正常了,但打不开,这里可以选Y)
Enable filename encryption (y/n) [n]: y   (这一步很关键,因为加密主目录时文件名称是默认加密的,一定要回答y)
Filname Encryption Key (FNEK) Signature [6ceb75c6208b3c78]: 01bda2c2fc25d863   (将前面提到的那两串字符串中的第二串输入)
Attempting to mount with the following options:
ecryptfs_unlink_sigs
ecryptfs_fnek_sig=01bda2c2fc25d863
ecryptfs_key_bytes=16
ecryptfs_cipher=aes
ecryptfs_sig=6ceb75c6208b3c78
WARNING: Based on the contents of [/root/.ecryptfs/sig-cache.txt],
it looks like you have never mounted with this key
before. This could mean that you have typed your
passphrase wrong.
Would you like to proceed with the mount (yes/no)? yes  (你从未用这个密码挂载过,是否继续?)
Would you like to append sig [86a764759a1f7625] to
[/root/.ecryptfs/sig-cache.txt]
in order to avoid this warning in the future (yes/no)? no  (是否将此次挂载信息记录下来以免下次报警?)
Not adding sig to user sig cache file; continuing with mount.
到此,去访问主目录中的restore文件夹,应该不会出现问题了。把要恢复的文件拷贝出来,不然下次开机想再进去又要来一次。

哎,总算数据都回来了。以后重装ubuntu要多注意点备份的问题

评论

我的评论:

发表评论

请 登录 后发表评论。还没有在Zeuux哲思注册吗?现在 注册 !
Edgar

回复 Edgar  2017年06月20日 星期二 17:44

谢谢,帮助很多

0条回复

王雪瑞

回复 王雪瑞  2010年12月10日 星期五 17:12

学习了!

PS:aptitude拼错了,改一下就更完美了...

1条回复

暂时没有评论

Zeuux © 2024

京ICP备05028076号