Я витратив години на цю проблему, не розуміючи, чому ці прості команди не працюють. Я виявив, що в ... / home / .ecryptfs та ... / home / .ecryptfs /username/.ecryptfs є оманливі посилання.
EDIT : наступне рішення потрібно підтвердити. Повторне посилання може бути не обов’язковим, але параметри, які ecryptfs-recover-private
мають бути, можуть бути джерелом проблеми.
Моє рішення полягало в тому, щоб відновити відносний шлях до файлу .Private та .ecryptfs в /home/.ecryptfs/
Розробити:
У моєму випадку домашній користувач, якого я хотів прочитати, був в / mnt / sda5 / home, а користувач - хлопець
$ cd /mnt/sda5/home
$ ls -lag .ecryptfs/guy/
drwxr-xr-x 4 guy 4096 .
drwxr-xr-x 3 root 4096 ..
drwx------ 16 guy 4096 .Private
drwx------ 2 guy 4096 .ecryptfs
$ ls -lag .ecryptfs/guy/.ecryptfs/
drwx------ 2 guy 4096 Jan 1 00:12 .
drwxr-xr-x 4 guy 4096 Jan 1 00:11 ..
-rw------- 1 guy 13 Jan 1 00:11 Private.mnt
-rw------- 1 guy 34 Jan 1 00:11 Private.sig
-rw-r--r-- 1 guy 0 Jan 1 00:11 auto-mount
-rw-r--r-- 1 guy 0 Jan 1 00:11 auto-umount
-rw------- 1 guy 58 Jan 1 00:12 wrapped-passphrase
#This were the data are stored
Якщо ви перераховуєте файли в домашньому каталозі, у вас є такі посилання (перед моїм виправленням)
$ ls -lag guy/
lrwxrwxrwx 1 root 28 Jan 2 15:52 .Private -> /home/guy/.Private
lrwxrwxrwx 1 root 29 Jan 2 15:49 .ecryptfs -> /home/guy/.ecryptfs
тож файли посилаються на поточний / домашній та користувальницький, а не на ті, які ви намагаєтесь прочитати, збиваючи з пантелику вас та монтажні команди.
Після виправлення я здійснив:
$ ls -lag guy/
dr-x------ 2 guy 4096 Jan 2 15:52 .
drwxr-xr-x 6 root 4096 Jan 1 00:11 ..
lrwxrwxrwx 1 root 28 Jan 2 15:52 .Private -> ../.ecryptfs/guy/.Private
lrwxrwxrwx 1 root 29 Jan 2 15:49 .ecryptfs -> ../.ecryptfs/guy/.ecryptfs
lrwxrwxrwx 1 guy 56 Jan 1 00:11 Access-Your-Private-Data.desktop -> /usr/share/ecryptfs-utils/ecryptfs-mount-private.desktop
lrwxrwxrwx 1 guy 52 Jan 1 00:11 README.txt -> /usr/share/ecryptfs-utils/ecryptfs-mount-private.txt
Моє рішення полягало в тому, щоб відновити відносний шлях до файлу .Private та .ecryptfs
$ cd /mnt/sda5/home
$ cd guy
$ sudo unlink .Private
$ sudo unlink .ecryptfs
$ sudo ln -sr ../.ecryptfs/guy/.Private
$ sudo ln -sr ../.ecryptfs/guy/.ecryptfs
Після того, як ви зможете вручну підключити домашній каталог вручну або за допомогою
cd /mnt/sda5/home
sudo ecryptfs-recover-private .ecryptfs/guy/.ecryptfs/.Private
(вам знадобиться ваш пароль MOUNT - серія з 32 символів-)
ecryptfs-add-passphrase --fnek
. Я виявив, що я повинен використовувати 2-й замість цього.