当我的一个 RAID 1 驱动器出现故障时,在 BIOS 中通过一键安装替换驱动器后,我最终重新格式化了我的驱动器。然后 Linux 拒绝识别新的 RAID 格式化驱动器,我设法让 Windows 运行 testdisk 来恢复我放在新硬盘上的一些文件。 (虽然文件大小看起来很小,但我希望恢复一些东西,我希望 Linux mint 加密可以压缩文件。)
我的问题是我很难让 ecryptfs 解密文件。
sudo ecryptfs-recover-private /dev/sdb1
我明白了
INFO: Searching for encrypted private directories (this might take a while)...
find: ‘/run/user/1000/gvfs’: Permission denied
在我这样做之后
sudo umount /run/user/1000/gvfs
(我真的不明白这是做什么的,但摆脱它给了我)
我明白了
sudo ecryptfs-recover-private /dev/sdb1
INFO: Searching for encrypted private directories (this might take a while)...
INFO: Hint: click 'Places' and select your hard disk, then run this again.
ERROR: No private directories found; make sure that your root filesystem is mounted.
/dev/sdb1 似乎已挂载我可以通过 GUI 与它交互
我认为这是一个可能的解决方案
mkdir crypted decrypted
mv recup_dir.*/*.eCryptfs crypted
sudo mount -t ecryptfs -o ecryptfs_passthrough=n,key=passphrase,ecryptfs_enable_filename_crypto=n,ecryptfs_key_bytes=16,ecryptfs_cipher=aes crypted decrypte
Note that you need to know the key size (here 16) and the algo (aes in this example).
不幸的是,我不像 GUI 那样熟悉终端命令,但我认识到上面的示例在主位置创建了两个目录。我需要在 sdb1 上创建这两个目录,因为我重新安装 Linux 的硬盘是一个只有 320GB 的旧硬盘,我有 350GB 的家庭照片和电影,我正在尝试恢复。所以我担心加密和解密的文件不能全部放在主分区的驱动器上。我在 sbd1(我恢复文件的驱动器)上确实有 1.6 TB 的可用空间。我可以使用 GUI 轻松地在 sbd1 上加密和解密这两个目录,但我真的不知道如何使用终端与 sbd1 进行交互。如何编写移动命令以将所有 .eCryptfs 移动到 sdb1 上新创建的加密文件夹中?
我的第二个问题是“你需要知道密钥大小(此处为 16)和算法(本例中为 aes)”。密钥大小是多少?这是加密密码中的字母数吗?
答案1
首先,是分区“文件”,它不能通过直接访问或只能通过它的安装点(另一个目录)来/dev/sdb1
浏览。cd /dev/sdb1
ls /dev/sdb1
您可以通过检查自身来检查它是否安装以及安装在何处mount
,在终端中这将起作用:
mount | grep "/dev/sdb1"
仅供参考,ecryptfs-recover-private
这只是一个 shell 脚本,如果您愿意,您可以自己查看它,甚至可以在终端中一次运行一行并观察不同的错误。看起来它没有找到任何名为 的目录.Private
,因为它使用此命令到处搜索它们:
find / -type d -name ".Private"
所以我猜/dev/sdb1
并没有真正安装。或者如果是,则没有指定的文件夹,.Private
这对于查找加密的主目录来说是一个问题。
我会这样做:
使用以下方式之一挂载分区:
在这样的终端中(我喜欢安装只读/
ro
用于恢复,以防万一):mkdir -p /media/drive mount -v -o ro /dev/sdb1 /media/drive
或者大多数文件管理器只需单击一两次即可安装驱动器,但可能会安装到其他目录,可能位于
/mnt
或中的某个目录/media
。或者我喜欢使用 Disks /gnome-disk-utility
。
确定安装好后,运行即可
sudo ecryptfs-recover-private
就可以了,如果有一个.Private
如果某处。您不必自己担心密钥大小、算法或任何密钥(脚本看起来已将这些作为默认值:)
ecryptfs_cipher=aes,ecryptfs_key_bytes=16
。- 浏览现在安装的文件(可能需要根文件浏览器)并查找文件
home
夹和任何.ecryptfs
文件.Private
夹,也许它们已经消失/损坏。
- 浏览现在安装的文件(可能需要根文件浏览器)并查找文件