Восстановить данные с жесткого диска с установленным в нем Ubuntu [duplicate]

27 ноября 2015 г. Обновление:

Вторая версия сценария по-прежнему оставила меня недовольной раздуванием исходного кода и тем фактом, что мне пришлось использовать несколько разных инструментов. Поэтому я попытался переписать сценарий только в AWK.

Новый скрипт использует чистый AWK и гораздо лучше соответствует требованиям. По сути, он перезаписывает /etc/apt/sources.list каждый раз, когда он запускается.

После запуска скрипта требуется обновление, поэтому запустите sudo apt-get update после успешного завершения сценария.

Файл должен иметь разрешимые разрешения с chmod +x add-update.awk и сохраняться в любом каталогов, содержащихся в переменной $PATH. В частности, рекомендуется сохранить сценарий в папке $HOME/bin (который также должен быть добавлен к переменной $PATH).

Резервная копия исходного файла /etc/apt/sources.list не требуется, но настоятельно рекомендуется. Для резервного копирования файла выполните

sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak

27 ноября 2015 г. Обновить

sudo ./add-update.awk -v ACTION=[enable|disable|help] -v SOURCE=[updates|backports|security|proposed]

Источник на github [!d10 ]

Демонстрация:

sergrep:$ cat /etc/apt/sources.list                                                                              
deb http://it.archive.ubuntu.com/ubuntu wily main universe
deb http://us.archive.ubuntu.com/ubuntu wily-backports main

deb-src http://it.archive.ubuntu.com/ubuntu wily main universe
deb-src http://us.archive.ubuntu.com/ubuntu wily-backports main
# removed

sergrep:$ sudo ./add-update.awk -v ACTION="enable" -v SOURCE="security"   
[sudo] password for xieerqi: 
/etc/apt/sources.list
<<< Script finished processing

sergrep:$ cat /etc/apt/sources.list                                                                              
deb http://it.archive.ubuntu.com/ubuntu wily main universe
deb http://it.archive.ubuntu.com/ubuntu wily-security  main universe
deb http://us.archive.ubuntu.com/ubuntu wily-backports main
deb http://us.archive.ubuntu.com/ubuntu wily-security  main
deb-src http://it.archive.ubuntu.com/ubuntu wily main universe
deb-src http://it.archive.ubuntu.com/ubuntu wily-security  main universe
deb-src http://us.archive.ubuntu.com/ubuntu wily-backports main
deb-src http://us.archive.ubuntu.com/ubuntu wily-security  main

Демонстрация:

#!/usr/bin/awk -f
#
###########################################################
# Author: Serg Kolo
# Date: Nov 27,2015
# Purpose: A script that enables/disables 4 ubuntu sources
# (namely updates, backports, proposed, and security )
# much in a way like software-properties-gtk does
# Written for:  http://paste.ubuntu.com/13434218/
###########################################################
#
# Permission to use, copy, modify, and distribute this software is hereby granted
# without fee, provided that  the copyright notice above and this permission statement
# appear in all copies.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
# DEALINGS IN THE SOFTWARE.

function printUsage() {
    print "Usage: sudo ./add-update.awk -v ACTION=[enable|disable|help] -v SOURCE=[updates|backports|security|proposed]";
    exit
}

function checkSourceEnabled()
{
    if ( $3 ~ SOURCE) {
        print SOURCE" is enabled; exiting"
        VAL = 1
    }
    else {
        VAL = 0
    }
    return VAL
}

function disableSource()
{
    if ( $0 ~ SOURCE ) $0="# removed";
    j++;
    newLines[j]=$0;
}

function listStuff () {
    for(k=4; k<=NF; k++) if ( $k~/#/  ) {break} else {
            COMPONENTS=COMPONENTS" "$k
        };
    gsub(/\-.*/,"",$3);
    STRING=$1" "$2" "$3APPEND" "COMPONENTS;
    COMPONENTS=""
               return STRING;
}

function replaceFile()
{
    command="mv  /tmp/sources.list "ARGV[1]
            system(command);
}

############
#  MAIN
#############
BEGIN {

# argument checking sequence
# must remain written in if-else
# structure rather than case,
# to consider users who may not be able
# to install gawk due to broken sources.list
# which is what this script should be aimed at

# actions checked first so that 
# help message can be printed 
 if ( ACTION ==  "enable" ||
      ACTION == "disable" ||
      ACTION == "default"  ) {

    print "<<< ACTION ARG OK" 
  }
  else if (ACTION == "help" ){
    printUsage()
    exit
  }


  if ( SOURCE == "update" || 
       SOURCE == "security" || 
       SOURCE == "backports" || 
       SOURCE == "proposed" ) { 
       print "<<< SOURCE ARG OK"

  }

   else if ( ACTION != "default"  || ACTION != "help" ) {  
        print "<<< E: SOURCE ARG INCORRECT"; 
        printUsage(); 
        exit 1   }

    # static filename to operate on
    ARGV[ARGC++]="/etc/apt/sources.list";

    if (ACTION == "enable" ) {
        APPEND="-"SOURCE;
    } else{
        APPEND="";
    }

} # END OF BEGIN

$0~/^deb*/ && $0!~/partner/ && $0!~/extra/ {

    if ( ACTION == "enable" ) {
        j++;
        ARRAY[j]=$0
        ENABLED=checkSourceEnabled();

        if ( ENABLED ) {
            exit 1
        }
        else {
            j++;
            ARRAY[j]=listStuff();
        }

    }
    else if ( ACTION == "disable" ){
        disableSource() ;
    }
    else if ( ACTION == "default" && SOURCE == "default" ) {
        j++;
        defaultsArray[j]=$0;
        j++;
        defaultsArray[j]=listStuff();
    }
}

END {
    print "<<< Script finished processing" ;
    if ( ACTION =="enable" && ENABLED == 0 ){
     for(i=1;i<=j;i++)
        print ARRAY[i] |  "sort -u > /tmp/sources.list ";
     replaceFile();
     }
     else if ( ACTION == "disable" ) {
       for ( i=1;i<=j;i++  ) print newLines[i] | "sort -u > /tmp/sources.list"
       replaceFile();
     }
     else if (ACTION == "default" ){
        for ( i=1;i<=j;i++  ) print defaultsArray[i] | "sort -i -u > /tmp/sources.list"
        replaceFile();
     }
}

# END OF MAIN

-

Предыдущие версии

Источник на github

Версия №2 на github (также скрипт bash)

39
задан 13 April 2017 в 15:24

36 ответов

Я настоятельно рекомендую вам использовать утилиту ecryptfs-recover-private в этих случаях.

Доступно полное объяснение того, как ее использовать ecryptfs-recover-private .

31
ответ дан 18 July 2018 в 00:42

Я настоятельно рекомендую вам использовать утилиту ecryptfs-recover-private в этих случаях.

Доступно полное объяснение того, как ее использовать ecryptfs-recover-private .

32
ответ дан 24 July 2018 в 17:16

Я настоятельно рекомендую вам использовать утилиту ecryptfs-recover-private в этих случаях.

Здесь доступно полное объяснение того, как ее использовать здесь .

32
ответ дан 31 July 2018 в 20:17

Я настоятельно рекомендую вам использовать утилиту ecryptfs-recover-private в этих случаях.

Здесь доступно полное объяснение того, как ее использовать здесь .

32
ответ дан 2 August 2018 в 13:21

Я настоятельно рекомендую вам использовать утилиту ecryptfs-recover-private в этих случаях.

Здесь доступно полное объяснение того, как ее использовать здесь .

32
ответ дан 3 August 2018 в 17:37

Я настоятельно рекомендую вам использовать утилиту ecryptfs-recover-private в этих случаях.

Здесь доступно полное объяснение того, как ее использовать здесь .

32
ответ дан 5 August 2018 в 02:47

Я настоятельно рекомендую вам использовать утилиту ecryptfs-recover-private в этих случаях.

Здесь доступно полное объяснение того, как ее использовать здесь .

32
ответ дан 6 August 2018 в 19:36

Я настоятельно рекомендую вам использовать утилиту ecryptfs-recover-private в этих случаях.

Здесь доступно полное объяснение того, как ее использовать здесь .

32
ответ дан 8 August 2018 в 23:55

Я настоятельно рекомендую вам использовать утилиту ecryptfs-recover-private в этих случаях.

Здесь доступно полное объяснение того, как ее использовать здесь .

32
ответ дан 14 August 2018 в 14:13
  • 1
    Просто намек на себя, потому что в первый раз мне нужно запустить эту команду, и каждый раз, когда мне приходится реконструировать, как это работает: правильный синтаксис, чтобы пропустить поиск по всему дереву и взломать старый домашний каталог, есть: sudo ecryptfs-recover-private --rw .ecryptfs/<YOUR_USER>/.Private. Не нужно эксгумировать длинную кодовую фразу размером 32 байта, всего несколько попыток угадать пароль этого старого компьютера. – Avio 14 August 2016 в 21:02
  • 2
    Имея некоторые похожие, но разные проблемы на новом посту ( askubuntu.com/questions/1035424/… ), вы думаете, что можете поделиться своим опытом с этим? Благодаря! – Matifou 13 May 2018 в 02:00

Попробуйте:

sudo ecryptfs-recover-private /media/<username>/<disk-guid>/home/.ecryptfs/<username>/.Private

вывод, если вы знаете кодовую фразу для входа:

INFO: Found [/media/<username>/<disk.guid>/home/.ecryptfs/<username>/.Private]. Try to recover this directory? [Y/n]: INFO: Found your wrapped-passphrase Do you know your LOGIN passphrase? [Y/n] INFO: Enter your LOGIN passphrase... Passphrase: Inserted auth tok with sig [c67c3e3ace421e76] into the user session keyring INFO: Success! Private data mounted at [/tmp/ecryptfs.xblDkqNZ].

Последняя строка показывает, где установлены дешифрованные данные

Кредиты Сантьяго Г. Марин в разделе комментариев этого сообщения

1
ответ дан 18 July 2018 в 00:42

Наконец-то мне удалось смонтировать мой зашифрованный дом, сначала добавив кодовую фразу через

sudo ecryptfs-add-passphrase --fnek

, который получает мне следующую информацию:

Inserted auth tok with sig [aaaaaaaaaaaaaaaa] into the user session keyring Inserted auth tok with sig [bbbbbbbbbbbbbbbb] into the user session keyring

Там, я помню bbbbbbbbbbbbbbbbb и продолжайте установку соответствующего каталога .Private:

sudo mount -t ecryptfs /mnt/oldhome/.ecryptfs/me/.Private /mnt/oldme

Появляется много вопросов, на которые я отвечаю по умолчанию, за исключением

Enable filename encryption (y/n) [n]: y

и

Filename Encryption Key (FNEK) Signature [aaaaaaaaaaaaaaaa]: bbbbbbbbbbbbbbbb

С bbbbbbbbbbbbbbbbb, конечно, являясь сигнатурой, которую я ранее помнил. Легко, да?

16
ответ дан 18 July 2018 в 00:42

У меня была такая же ошибка ERROR: Failed to mount private data at [/tmp/ecryptfs....] после того, как я переименовал предыдущее (оригинальное) имя пользователя POSIX в old_user, а затем создал нового пользователя с именем оригинала (предыдущее имя пользователя).

Чтобы иметь возможность монтировать зашифрованный домашний каталог от old_user, мне пришлось переделать ссылки symbolik для .encryptfs и .Private в своей папке (поскольку они были привязаны к /home/original_name/).

После этого следующая команда

/usr/bin/ecryptfs-recover-private /home/old_user/.Private

Если вышеописанное не удается из-за ключевой проблемы (см. dmesg или syslog), например

Could not find key with description: [XXX] process_request_key_err: No key Could not find valid key in user session keyring for sig specified in mount option: [XXX]

, попробуйте добавить passphrase вручную: Вариант 1 в /usr/bin/ecryptfs-manager (он может показать вам, что ключ уже есть, это нормально.), а затем выполните ecryptfs-recover-private /home/old_user/.Private еще раз.

0
ответ дан 18 July 2018 в 00:42

Попробуйте:

sudo ecryptfs-recover-private /media/<username>/<disk-guid>/home/.ecryptfs/<username>/.Private

вывод, если вы знаете кодовую фразу для входа:

INFO: Found [/media/<username>/<disk.guid>/home/.ecryptfs/<username>/.Private]. Try to recover this directory? [Y/n]: INFO: Found your wrapped-passphrase Do you know your LOGIN passphrase? [Y/n] INFO: Enter your LOGIN passphrase... Passphrase: Inserted auth tok with sig [c67c3e3ace421e76] into the user session keyring INFO: Success! Private data mounted at [/tmp/ecryptfs.xblDkqNZ].

Последняя строка показывает, где установлены дешифрованные данные

Кредиты Сантьяго Г. Марин в разделе комментариев этого сообщения

1
ответ дан 24 July 2018 в 17:16

Наконец-то мне удалось смонтировать мой зашифрованный дом, сначала добавив кодовую фразу через

sudo ecryptfs-add-passphrase --fnek

, который получает мне следующую информацию:

Inserted auth tok with sig [aaaaaaaaaaaaaaaa] into the user session keyring Inserted auth tok with sig [bbbbbbbbbbbbbbbb] into the user session keyring

Там, я помню bbbbbbbbbbbbbbbbb и продолжайте установку соответствующего каталога .Private:

sudo mount -t ecryptfs /mnt/oldhome/.ecryptfs/me/.Private /mnt/oldme

Появляется много вопросов, на которые я отвечаю по умолчанию, за исключением

Enable filename encryption (y/n) [n]: y

и

Filename Encryption Key (FNEK) Signature [aaaaaaaaaaaaaaaa]: bbbbbbbbbbbbbbbb

С bbbbbbbbbbbbbbbbb, конечно, являясь сигнатурой, которую я ранее помнил. Легко, да?

16
ответ дан 24 July 2018 в 17:16
  • 1
    Привет @rausch! Просто вопрос о разъяснении: когда вы запускаете первую команду (ecryptfs-add-passphrase), вы указываете кодовую фразу из старого или нового дома / системы? А по passprhase вы имеете в виду код, полученный с помощью ecryptfs-unwrap-passphrase или просто для входа? Благодаря!! – Matifou 11 July 2016 в 01:05
  • 2
    a) Старая система и a) код. Работал как шарм! – Piskvor 23 December 2016 в 21:28
  • 3
    @rausch Я заметил, что рядом с моим файлом wrapped-passphrase был файл Private.sig, который соответствовал тому, что sig вы получили от ecryptfs-add-passphrase --fnek. Поэтому вы можете использовать это, чтобы убедиться, что вы набираете все правильно. Благодаря! – Eric Twilegar 9 February 2017 в 06:52

У меня была такая же ошибка ERROR: Failed to mount private data at [/tmp/ecryptfs....] после того, как я переименовал предыдущее (оригинальное) имя пользователя POSIX в old_user, а затем создал нового пользователя с именем оригинала (предыдущее имя пользователя).

Чтобы иметь возможность монтировать зашифрованный домашний каталог от old_user, мне пришлось переделать ссылки symbolik для .encryptfs и .Private в своей папке (поскольку они были привязаны к /home/original_name/).

После этого следующая команда

/usr/bin/ecryptfs-recover-private /home/old_user/.Private

Если вышеописанное не удается из-за ключевой проблемы (см. dmesg или syslog), например

Could not find key with description: [XXX] process_request_key_err: No key Could not find valid key in user session keyring for sig specified in mount option: [XXX]

, попробуйте добавить passphrase вручную: Вариант 1 в /usr/bin/ecryptfs-manager (он может показать вам, что ключ уже есть, это нормально.), а затем выполните ecryptfs-recover-private /home/old_user/.Private еще раз.

0
ответ дан 24 July 2018 в 17:16

Попробуйте:

sudo ecryptfs-recover-private /media/<username>/<disk-guid>/home/.ecryptfs/<username>/.Private

вывод, если вы знаете кодовую фразу для входа:

INFO: Found [/media/<username>/<disk.guid>/home/.ecryptfs/<username>/.Private].
Try to recover this directory? [Y/n]: 
INFO: Found your wrapped-passphrase
Do you know your LOGIN passphrase? [Y/n] 
INFO: Enter your LOGIN passphrase...
Passphrase: 
Inserted auth tok with sig [c67c3e3ace421e76] into the user session keyring
INFO: Success!  Private data mounted at [/tmp/ecryptfs.xblDkqNZ].

Последняя строка показывает, где дешифрованные данные установлены

Кредиты Сантьяго Г. Марин в разделе комментариев из этого сообщения

1
ответ дан 31 July 2018 в 20:17

Наконец, мне удалось смонтировать мой зашифрованный дом, сначала добавив кодовую фразу через

sudo ecryptfs-add-passphrase --fnek

, которая получает мне следующую информацию:

Inserted auth tok with sig [aaaaaaaaaaaaaaaa] into the user session keyring
Inserted auth tok with sig [bbbbbbbbbbbbbbbb] into the user session keyring

Там, я помню bbbbbbbbbbbbbbbbb и продолжайте установку соответствующего каталога .Private:

sudo mount -t ecryptfs /mnt/oldhome/.ecryptfs/me/.Private /mnt/oldme

Появляется много вопросов, на которые я отвечаю по умолчанию, за исключением

Enable filename encryption (y/n) [n]: y

и

Filename Encryption Key (FNEK) Signature [aaaaaaaaaaaaaaaa]: bbbbbbbbbbbbbbbb

С bbbbbbbbbbbbbbbbb, конечно, являясь сигнатурой, которую я ранее помнил. Легко, да?

16
ответ дан 31 July 2018 в 20:17

У меня была та же ошибка ERROR: Failed to mount private data at [/tmp/ecryptfs....] после того, как я переименовал предыдущее (оригинальное) имя пользователя POSIX в old_user, а затем создал нового пользователя с оригинальным (предыдущим именем пользователя).

Чтобы смонтировать зашифрованный домашний каталог из old_user, мне пришлось переделать ссылки symbolik для .encryptfs и .Private в своей папке (поскольку они были привязаны к /home/original_name/).

После этого следующая команда

/usr/bin/ecryptfs-recover-private /home/old_user/.Private

Если вышеизложенное не удается из-за ключевой проблемы (см. dmesg или syslog), например

Could not find key with description: [XXX]
process_request_key_err: No key Could not find valid key in user session keyring for sig specified in mount option: [XXX]

, попробуйте добавить passphrase вручную: Вариант 1 в /usr/bin/ecryptfs-manager (он может показать вам, что ключ уже есть, это нормально.), а затем выполните ecryptfs-recover-private /home/old_user/.Private еще раз.

0
ответ дан 31 July 2018 в 20:17

Попробуйте:

sudo ecryptfs-recover-private /media/<username>/<disk-guid>/home/.ecryptfs/<username>/.Private

вывод, если вы знаете кодовую фразу для входа:

INFO: Found [/media/<username>/<disk.guid>/home/.ecryptfs/<username>/.Private].
Try to recover this directory? [Y/n]: 
INFO: Found your wrapped-passphrase
Do you know your LOGIN passphrase? [Y/n] 
INFO: Enter your LOGIN passphrase...
Passphrase: 
Inserted auth tok with sig [c67c3e3ace421e76] into the user session keyring
INFO: Success!  Private data mounted at [/tmp/ecryptfs.xblDkqNZ].

Последняя строка показывает, где дешифрованные данные установлены

Кредиты Сантьяго Г. Марин в разделе комментариев из этого сообщения

1
ответ дан 2 August 2018 в 13:21

Наконец, мне удалось смонтировать мой зашифрованный дом, сначала добавив кодовую фразу через

sudo ecryptfs-add-passphrase --fnek

, которая получает мне следующую информацию:

Inserted auth tok with sig [aaaaaaaaaaaaaaaa] into the user session keyring
Inserted auth tok with sig [bbbbbbbbbbbbbbbb] into the user session keyring

Там, я помню bbbbbbbbbbbbbbbbb и продолжайте установку соответствующего каталога .Private:

sudo mount -t ecryptfs /mnt/oldhome/.ecryptfs/me/.Private /mnt/oldme

Появляется много вопросов, на которые я отвечаю по умолчанию, за исключением

Enable filename encryption (y/n) [n]: y

и

Filename Encryption Key (FNEK) Signature [aaaaaaaaaaaaaaaa]: bbbbbbbbbbbbbbbb

С bbbbbbbbbbbbbbbbb, конечно, являясь сигнатурой, которую я ранее помнил. Легко, да?

16
ответ дан 2 August 2018 в 13:21

У меня была та же ошибка ERROR: Failed to mount private data at [/tmp/ecryptfs....] после того, как я переименовал предыдущее (оригинальное) имя пользователя POSIX в old_user, а затем создал нового пользователя с оригинальным (предыдущим именем пользователя).

Чтобы смонтировать зашифрованный домашний каталог из old_user, мне пришлось переделать ссылки symbolik для .encryptfs и .Private в своей папке (поскольку они были привязаны к /home/original_name/).

После этого следующая команда

/usr/bin/ecryptfs-recover-private /home/old_user/.Private

Если вышеизложенное не удается из-за ключевой проблемы (см. dmesg или syslog), например

Could not find key with description: [XXX]
process_request_key_err: No key Could not find valid key in user session keyring for sig specified in mount option: [XXX]

, попробуйте добавить passphrase вручную: Вариант 1 в /usr/bin/ecryptfs-manager (он может показать вам, что ключ уже есть, это нормально.), а затем выполните ecryptfs-recover-private /home/old_user/.Private еще раз.

0
ответ дан 2 August 2018 в 13:21

Попробуйте:

sudo ecryptfs-recover-private /media/<username>/<disk-guid>/home/.ecryptfs/<username>/.Private

вывод, если вы знаете кодовую фразу для входа:

INFO: Found [/media/<username>/<disk.guid>/home/.ecryptfs/<username>/.Private].
Try to recover this directory? [Y/n]: 
INFO: Found your wrapped-passphrase
Do you know your LOGIN passphrase? [Y/n] 
INFO: Enter your LOGIN passphrase...
Passphrase: 
Inserted auth tok with sig [c67c3e3ace421e76] into the user session keyring
INFO: Success!  Private data mounted at [/tmp/ecryptfs.xblDkqNZ].

Последняя строка показывает, где дешифрованные данные установлены

Кредиты Сантьяго Г. Марин в разделе комментариев из этого сообщения

1
ответ дан 3 August 2018 в 17:37

Наконец, мне удалось смонтировать мой зашифрованный дом, сначала добавив кодовую фразу через

sudo ecryptfs-add-passphrase --fnek

, которая получает мне следующую информацию:

Inserted auth tok with sig [aaaaaaaaaaaaaaaa] into the user session keyring
Inserted auth tok with sig [bbbbbbbbbbbbbbbb] into the user session keyring

Там, я помню bbbbbbbbbbbbbbbbb и продолжайте установку соответствующего каталога .Private:

sudo mount -t ecryptfs /mnt/oldhome/.ecryptfs/me/.Private /mnt/oldme

Появляется много вопросов, на которые я отвечаю по умолчанию, за исключением

Enable filename encryption (y/n) [n]: y

и

Filename Encryption Key (FNEK) Signature [aaaaaaaaaaaaaaaa]: bbbbbbbbbbbbbbbb

С bbbbbbbbbbbbbbbbb, конечно, являясь сигнатурой, которую я ранее помнил. Легко, да?

16
ответ дан 3 August 2018 в 17:37

У меня была та же ошибка ERROR: Failed to mount private data at [/tmp/ecryptfs....] после того, как я переименовал предыдущее (оригинальное) имя пользователя POSIX в old_user, а затем создал нового пользователя с оригинальным (предыдущим именем пользователя).

Чтобы смонтировать зашифрованный домашний каталог из old_user, мне пришлось переделать ссылки symbolik для .encryptfs и .Private в своей папке (поскольку они были привязаны к /home/original_name/).

После этого следующая команда

/usr/bin/ecryptfs-recover-private /home/old_user/.Private

Если вышеизложенное не удается из-за ключевой проблемы (см. dmesg или syslog), например

Could not find key with description: [XXX]
process_request_key_err: No key Could not find valid key in user session keyring for sig specified in mount option: [XXX]

, попробуйте добавить passphrase вручную: Вариант 1 в /usr/bin/ecryptfs-manager (он может показать вам, что ключ уже есть, это нормально.), а затем выполните ecryptfs-recover-private /home/old_user/.Private еще раз.

0
ответ дан 3 August 2018 в 17:37

Попробуйте:

sudo ecryptfs-recover-private /media/<username>/<disk-guid>/home/.ecryptfs/<username>/.Private

вывод, если вы знаете кодовую фразу для входа:

INFO: Found [/media/<username>/<disk.guid>/home/.ecryptfs/<username>/.Private].
Try to recover this directory? [Y/n]: 
INFO: Found your wrapped-passphrase
Do you know your LOGIN passphrase? [Y/n] 
INFO: Enter your LOGIN passphrase...
Passphrase: 
Inserted auth tok with sig [c67c3e3ace421e76] into the user session keyring
INFO: Success!  Private data mounted at [/tmp/ecryptfs.xblDkqNZ].

Последняя строка показывает, где дешифрованные данные установлены

Кредиты Сантьяго Г. Марин в разделе комментариев из этого сообщения

1
ответ дан 5 August 2018 в 02:47

Наконец, мне удалось смонтировать мой зашифрованный дом, сначала добавив кодовую фразу через

sudo ecryptfs-add-passphrase --fnek

, которая получает мне следующую информацию:

Inserted auth tok with sig [aaaaaaaaaaaaaaaa] into the user session keyring
Inserted auth tok with sig [bbbbbbbbbbbbbbbb] into the user session keyring

Там, я помню bbbbbbbbbbbbbbbbb и продолжайте установку соответствующего каталога .Private:

sudo mount -t ecryptfs /mnt/oldhome/.ecryptfs/me/.Private /mnt/oldme

Появляется много вопросов, на которые я отвечаю по умолчанию, за исключением

Enable filename encryption (y/n) [n]: y

и

Filename Encryption Key (FNEK) Signature [aaaaaaaaaaaaaaaa]: bbbbbbbbbbbbbbbb

С bbbbbbbbbbbbbbbbb, конечно, являясь сигнатурой, которую я ранее помнил. Легко, да?

16
ответ дан 5 August 2018 в 02:47

У меня была та же ошибка ERROR: Failed to mount private data at [/tmp/ecryptfs....] после того, как я переименовал предыдущее (оригинальное) имя пользователя POSIX в old_user, а затем создал нового пользователя с оригинальным (предыдущим именем пользователя).

Чтобы смонтировать зашифрованный домашний каталог из old_user, мне пришлось переделать ссылки symbolik для .encryptfs и .Private в своей папке (поскольку они были привязаны к /home/original_name/).

После этого следующая команда

/usr/bin/ecryptfs-recover-private /home/old_user/.Private

Если вышеизложенное не удается из-за ключевой проблемы (см. dmesg или syslog), например

Could not find key with description: [XXX]
process_request_key_err: No key Could not find valid key in user session keyring for sig specified in mount option: [XXX]

, попробуйте добавить passphrase вручную: Вариант 1 в /usr/bin/ecryptfs-manager (он может показать вам, что ключ уже есть, это нормально.), а затем выполните ecryptfs-recover-private /home/old_user/.Private еще раз.

0
ответ дан 5 August 2018 в 02:47

Попробуйте:

sudo ecryptfs-recover-private /media/<username>/<disk-guid>/home/.ecryptfs/<username>/.Private

вывод, если вы знаете кодовую фразу для входа:

INFO: Found [/media/<username>/<disk.guid>/home/.ecryptfs/<username>/.Private].
Try to recover this directory? [Y/n]: 
INFO: Found your wrapped-passphrase
Do you know your LOGIN passphrase? [Y/n] 
INFO: Enter your LOGIN passphrase...
Passphrase: 
Inserted auth tok with sig [c67c3e3ace421e76] into the user session keyring
INFO: Success!  Private data mounted at [/tmp/ecryptfs.xblDkqNZ].

Последняя строка показывает, где дешифрованные данные установлены

Кредиты Сантьяго Г. Марин в разделе комментариев из этого сообщения

1
ответ дан 6 August 2018 в 19:36

Наконец, мне удалось смонтировать мой зашифрованный дом, сначала добавив кодовую фразу через

sudo ecryptfs-add-passphrase --fnek

, которая получает мне следующую информацию:

Inserted auth tok with sig [aaaaaaaaaaaaaaaa] into the user session keyring
Inserted auth tok with sig [bbbbbbbbbbbbbbbb] into the user session keyring

Там, я помню bbbbbbbbbbbbbbbbb и продолжайте установку соответствующего каталога .Private:

sudo mount -t ecryptfs /mnt/oldhome/.ecryptfs/me/.Private /mnt/oldme

Появляется много вопросов, на которые я отвечаю по умолчанию, за исключением

Enable filename encryption (y/n) [n]: y

и

Filename Encryption Key (FNEK) Signature [aaaaaaaaaaaaaaaa]: bbbbbbbbbbbbbbbb

С bbbbbbbbbbbbbbbbb, конечно, являясь сигнатурой, которую я ранее помнил. Легко, да?

16
ответ дан 6 August 2018 в 19:36

У меня была та же ошибка ERROR: Failed to mount private data at [/tmp/ecryptfs....] после того, как я переименовал предыдущее (оригинальное) имя пользователя POSIX в old_user, а затем создал нового пользователя с оригинальным (предыдущим именем пользователя).

Чтобы смонтировать зашифрованный домашний каталог из old_user, мне пришлось переделать ссылки symbolik для .encryptfs и .Private в своей папке (поскольку они были привязаны к /home/original_name/).

После этого следующая команда

/usr/bin/ecryptfs-recover-private /home/old_user/.Private

Если вышеизложенное не удается из-за ключевой проблемы (см. dmesg или syslog), например

Could not find key with description: [XXX]
process_request_key_err: No key Could not find valid key in user session keyring for sig specified in mount option: [XXX]

, попробуйте добавить passphrase вручную: Вариант 1 в /usr/bin/ecryptfs-manager (он может показать вам, что ключ уже есть, это нормально.), а затем выполните ecryptfs-recover-private /home/old_user/.Private еще раз.

0
ответ дан 6 August 2018 в 19:36

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

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