
我在外部硬碟上有加密主目錄的備份。
當我使用 ecryptfs-recover-private /mnt/externalhdd/home/user/.Private/ 掛載外部硬碟的加密檔案系統時,它會在 /tmp/... 中為其建立一個掛載點。
但不是安裝了外部硬碟的 ecryptfs,而是安裝了我的主 ecryptfs(!)。
答案1
ecryptfs-recover-private 錯誤處理嚴重缺乏。我的版本有一個錯誤,即使您提供了錯誤的安裝密碼,它也會回傳成功。當您嘗試掛載幾乎任何目錄時,無論它是否實際包含 ecryptfs 數據,它也會成功。
您的問題是您正在嘗試做顯而易見的事情並掛載 home/username/.Private。那是不行的!相反,您需要安裝home/.ecryptfs/使用者名稱/.Private。
嘗試這個:
ecryptfs-recover-private /mnt/externalhdd/home/.ecryptfs/user/.Private/
請依照指示操作,並使用舊帳戶的登入密碼或安裝密碼(如果有)。
安裝完成後,您應該能夠存取舊帳戶的內容。
答案2
看起來ecryptfs-recover-private 從實時cd/dvd/usb 運行時效果最好,它會在文件系統中搜索您的加密主目錄並將其安裝在/tmp/... 看起來它正在找到您的主/常規加密首先進入 home 並且不安裝外部備份,或者可能找不到外部備份的密碼或類似的東西...它應該能夠獲取目標目錄並安裝它,就像您嘗試過的那樣,如果您不要指定一個目錄,它應該搜尋加密的私人目錄,並「互動式地詢問您是否是您想要恢復的資料夾」(來自達斯汀·柯克蘭(Dustin Kirkland)關於它的部落格文章,他是作者) ,所以嘗試運行它而不指定外部目錄並查看是否找到它?建議也以 root 身分運行。
但如果它仍然無法正常工作,那麼您可以嘗試從即時 CD/DVD/USB 啟動,儘管我懷疑它可能仍然會找到兩個加密的資料夾...
或者,如果這不起作用,您可以按照達斯汀在 ecryptfs-recover-private 可用之前的舊指示進行操作,但他已經“劃掉”了它們,從
http://blog.dustinkirkland.com/2009/03/mounting-your-encrypted-home-from.html
它們涉及大量的綁定安裝和 chroot,這是他舊方向的複製貼上:
ubuntu@ubuntu$ sudo mount /dev/sda1 /mnt
ubuntu@ubuntu$ sudo mount -o bind /dev /mnt/dev
ubuntu@ubuntu$ sudo mount -o bind /dev/shm /mnt/dev/shm
ubuntu@ubuntu$ sudo mount -o bind /proc /mnt/proc
ubuntu@ubuntu$ sudo mount -o bind /sys /mnt/sys
ubuntu@ubuntu$ sudo chroot /mnt
root@ubuntu$ su - kirkland
kirkland@ubuntu$ ecryptfs-mount-private
Enter your login passphrase:
Warning: Using default salt value (undefined in ~/.ecryptfsrc)
Inserted auth tok with sig [xxx] into the user session keyring
kirkland@ubuntu$ cd $HOME
kirkland@ubuntu$ ls -alF
...
kirkland@ubuntu$ cat .profile
...
上述過程假設您的 ~/.ecryptfs/wrapped-passphrase 檔案在此系統上可用。如果您使用兩因素身份驗證並將其儲存在其他位置,則可能需要執行額外的安裝和符號連結才能使該檔案可用。
或者,如果您嘗試恢復數據,並且已正確記錄安裝密碼,則可以使用
kirkland@ubuntu$ ecryptfs-add-passphrase --fnek
在 ecryptfs-mount-private 位元之前,手動輸入您的密碼(而不是從 ~/.ecryptfs/wrapped-passphrase 中提取它)。
筆記:
- /dev/sda1 是為我的 $HOME/.Private 提供服務的設備
- kirkland 是我的用戶名,你的用戶名可能會有所不同;-)
- 綁定掛載 /sys 和 /proc 至關重要——ecryptfs 需要存取那裡共享的核心訊息
- 「su - 」中的破折號很重要——不要忘記!
(柯克蘭舊指示結束)
然後,如果那裡的所有內容仍然不起作用,您可以隨時嘗試手動掛載您的私有目錄,使用mount -t ecryptfs [SRC DIR] [DST DIR] -o [OPTIONS]
並查看man ecryptfs
有關各種掛載選項的信息,您可能需要知道諸如密碼類型和密鑰字節以及是否為no_sig_cache 之類的資訊或 filename_crypt 已啟用,或者如果您只是在沒有選項的情況下嘗試它,它可能只會要求您輸入安裝密碼?我認為實際的掛載密碼可能是隨機創建的,並使用您的用戶密碼進行包裝,然後感到疼痛(在您家中的某個地方?在.Private中?),這就是為什麼他們有像ecryptfs-mount -private 和ecryptfs-recover- 這樣的工具私人的。