Я недавно нашел старый диск с файлами в моей ecryptfs-зашифрованной домашней папке, которую я хочу восстановить. Однако я не могу загрузиться в систему, поскольку она не делает начальных загрузок нет. Я должен подключить старый диск к своему новому компьютеру и восстановить файлы с CLI.
Как я могу получить доступ к своим старым файлам?
Там существует много сообщений, но не их покрыл все шаги, которые требовались, чтобы я восстановил файлы со своей старой домашней папки. В моем случае я присоединил старый диск к 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-зашифрованную домашнюю папку и вернули доступ ко всем Вашим файлам.Приятного отдыха!