Ubuntu:如何解密主目录,交换(基本上所有的东西),无需重新安装?

我刚刚在Ubuntu Server 10.04中遇到了encryption主目录的问题。

虽然我知道一个解决方法,我想只是从一切完全删除encryption。

任何提示如何做到这一点,没有完整的备份和重新安装?

本指南是非常重要的手术,只有在命令行有信心的时候才可以遵守 – 一些错误可能导致丢失所有的数据。

您必须从您的主目录中的其他位置复制所有文件,然后在closuresencryption后将其复制,但不必重新安装。 假设你在/media/disk-1有一个外部驱动器。 你可以备份

 $ cp -a /home/user /media/disk-1/ 

-arecursion并且多一点。 请确保备份所有用户,因为我们稍后将删除encryption的副本。

然后,您需要卸载ecryptfs挂载,删除所有encryption文件,停止自动挂载,并将所有文件复制回来。 如果您使用GUIlogin,这将会造成严重的后果,所以我要么退出并login其中一个控制台(按Ctrl-Alt-F1访问一个),要么启动一个Live CD / USB棒做到这一点。 无论哪种方式非常确定你的备份安全。

如果您使用的是Live CD,则需要装入磁盘,以下命令中的path将相应更改。

所以,卸载ecryptfs挂载。 (如果您正在制作一张Live CD,则不需要执行此步骤)。

 $ ecryptfs-umount-private 

接下来通过删除所有旧的encryption文件在磁盘上腾出空间。 在做这件事之前,确保你的背部安全。 如果你有超过一半的磁盘空间,你可以离开这一步,直到你确定新版本正在工作。 但是,如果你只有一点你的磁盘空间,那么在复制文件之前,你需要做到这一点。

 $ sudo rm -rf /home/.ecryptfs 

接下来我们需要停止自动安装。 所以编辑文件

 /etc/pam.d/common-auth /etc/pam.d/common-password /etc/pam.d/common-session /etc/pam.d/common-session-noninteractive 

并通过在该行的开始处加上# pam_ecryptfs提到pam_ecryptfs的行。 因此,例如,现在common-session将包含

 #session optional pam_ecryptfs.so unwrap 

现在,您可以将所有文件复制回来

 $ cp -a /media/disk-1/user /home 

然后重新启动,你应该没有encryption的文件夹,并能够启用自动login。 如果您之前没有删除/home/.ecryptfs ,那么一旦您确信所有内容都按预期工作,就应该这样做。

你面临的问题是文件系统被encryption。 当你解密磁盘的区域时,你一次只能做一个文件。 所以不可能在没有备份文件和恢复的情况下“closures”encryption。

在阅读时,我想出了另一种可能适用于您的策略,具体取决于您的问题。 如果问题是您(作为root用户)需要在用户文件未login时访问这些文件,那么您可以在注销时停止加载的文件的卸载。

ecryptfs使用/home/.ecryptfs/user/.ecryptfs/文件来控制操作。 你会看到如果包含文件auto-mountauto-umount 。 他们都是零大小。 我很确定,如果你

 $ sudo rm /home/.ecryptfs/*/.ecryptfs/auto-umount 

然后,用户的目录将不会在注销时被卸载并保持可访问状态。 但是,磁盘格式仍然会被encryption,因此您不必担心旧磁盘落入不法之手(只要您安全地删除/home/.ecryptfs/*/.ecryptfs/* /tmp /home/.ecryptfs/*/.ecryptfs/* /tmp /home/.ecryptfs/*/.ecryptfs/* )(和/tmp/var/和swap …)