Как я могу монтировать/восстанавливать свой ecryptfs-зашифрованный домой?

Я недавно нашел старый диск с файлами в моей ecryptfs-зашифрованной домашней папке, которую я хочу восстановить. Однако я не могу загрузиться в систему, поскольку она не делает начальных загрузок нет. Я должен подключить старый диск к своему новому компьютеру и восстановить файлы с CLI.

Как я могу получить доступ к своим старым файлам?

1
задан 7 August 2019 в 13:14

1 ответ

Там существует много сообщений, но не их покрыл все шаги, которые требовались, чтобы я восстановил файлы со своей старой домашней папки. В моем случае я присоединил старый диск к VM, это должно однако работать тот же путь над реальной машиной также.

(При установке исходной системы я использовал схему разделения значения по умолчанию, куда домашняя папка помещается на отдельный партон. Таким образом, это будет покрыто. Если это не Ваш случай, можно просто пропустить второе монтирование sdb4.)

С этим ступает, я смог восстановить свои файлы: (Мое старое имя для входа в систему daniel помните, что Ваш будет отличаться),

1) Станьте корнем sudo -s

2) Подключите диск к компьютеру VM, таким образом, Вы видите, что партоны используют:

$ lsblk
NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sda      8:0    0   127G  0 disk
├─sda1   8:1    0   512M  0 part /boot/efi
└─sda2   8:2    0 126.5G  0 part /               <-- This is the root parition from my LIVE/current system
sdb      8:16   0 465.8G  0 disk
├─sdb1   8:17   0   512M  0 part
├─sdb2   8:18   0  31.3G  0 part
├─sdb3   8:19   0 131.9G  0 part                 <-- This is my old /-partition
└─sdb4   8:20   0 151.4G  0 part                 <-- This is my old /home-partition

3) Смонтируйте старую файловую систему к /mnt и подготовьте все к a chroot:

$ mount /dev/sdb3 /mnt/          <-- mount your original root
$ mount /dev/sdb4 /mnt/home      <-- mount your original home
$ mount --rbind /dev /mnt/dev    <-- prepare the chroot with the defaut sysfs-stuff
$ mount --rbind /proc /mnt/proc
$ mount --rbind /sys /mnt/sys

4) chroot в старую машину:

$ chroot /mnt
$ ls -lah /home/
total 32K
drwxr-xr-x  5 root   root   4.0K Nov 11  2016 .
drwxr-xr-x 51 root   root   4.0K Aug  7 10:06 ..
dr-x------  5 daniel daniel 4.0K Aug  7 09:51 daniel
drwxr-xr-x  3 root   root   4.0K Apr 26  2014 .ecryptfs     <-- here is my ecryptfs stuff
drwx------  2 root   root    16K Apr 26  2014 lost+found

5) Проверьте, что у нас есть a wrapped-passphrase файл. Этот файл требуется, чтобы входить в систему в с Вами исходный пароль входа в систему. Существует другая вещь, названная паролем, который я воображаю, необработанный ключ, используемый для шифрования файлов. В то время как установка ecryptfs компьютер говорит Вам записывать свой пароль, хорошо я не сделал так, мне был нужен тот файл.

ls -l /home/daniel/.ecryptfs/
total 20
-rw-r--r-- 1 daniel daniel 8192 Aug  7 10:43 auto-mount
-rw-r--r-- 1 daniel daniel    0 Apr 26  2014 auto-umount
-rw------- 1 daniel daniel   13 Apr 26  2014 Private.mnt
-rw------- 1 daniel daniel   34 Apr 26  2014 Private.sig
-rw------- 1 daniel daniel   58 Jul  8  2016 wrapped-passphrase   <-- This file is important, make sure it exists and is not empty

6) Теперь с помощью файла перенесенного пароля, мы можем восстановить наш пароль с помощью нашего пароля входа в систему:

$ ecryptfs-unwrap-passphrase /home/daniel/.ecryptfs/wrapped-passphrase
Passphrase:
[ENTER YOUR LOGIN-PASSWORD]
<32 char alphanumerical all lowercase passpharse>

Теперь запишите свой пароль. Вам, вероятно, не будет нужен он, но в случае, если Вы делаете, у Вас теперь есть он.

7) Теперь мы должны добавить наш пароль к брелоку для ключей ядра, таким образом, ядро может дешифровать наши файлы с помощью этого passphase:

$ ecryptfs-insert-wrapped-passphrase-into-keyring /home/daniel/.ecryptfs/wrapped-passphrase
Passphrase:
[ENTER YOUR LOGIN-PASSWORD]
Inserted auth tok with sig [254199733df62f80] into the user session keyring

8) Теперь, мы хотим смонтировать наши старые файлы. Чтобы сделать это, мы должны стать исходным пользователем, использующим sudo:

$ sudo -u daniel bash
Signature not found in user keyring
Perhaps try the interactive 'ecryptfs-mount-private' <-- Just ignore this message, it cause the home has not yet been decrypted

$ whoami
daniel      <-- make sure you are the original user!

9) Теперь мы можем смонтировать наш корневой каталог:

$ ecryptfs-mount-private
Enter your login passphrase:
[ENTER YOUR LOGIN-PASSWORD]
Inserted auth tok with sig [254199733df62f80] into the user session keyring

$ cd
$ ls
<All your old files should be there>

Поздравляю! Вы просто смонтировали свою ecryptfs-зашифрованную домашнюю папку и вернули доступ ко всем Вашим файлам.Приятного отдыха!

3
ответ дан 3 December 2019 в 07:20

Другие вопросы по тегам:

Похожие вопросы: