誤って .ecryptfs フォルダと .private フォルダを削除してしまいました。もうログインできません。ゲストとしてのみです。これらのフォルダを削除する前に、システムを復元するにはどうすればよいですか?
答え1
ランダムに生成されたマウント パスフレーズを記録しましたか? [0-9a-f] の 16 文字または 32 文字になります。その長いランダムなパスフレーズがあれば、比較的簡単に復元できます。それがない場合は、復元の可能性はありません。
ランダムに生成されたマウント パスフレーズがある場合は、.ecryptfs ディレクトリを再作成します。
mkdir $HOME/.ecryptfs
ecryptfs-add-passphrase --fnek
[enter your long, random mount passphrase]
keyctl list @u
[add the two key fingerprints to $HOME/.ecryptfs/Private.sig]
ecryptfs-wrap-passphrase $HOME/.ecryptfs/wrapped-passphrase
echo $HOME > $HOME/.ecryptfs/Private.mnt
答え2
ドライブを復元できる唯一の方法は、暗号化時に提供された 16、32、または 64 文字の文字列であるマウント パスフレーズを取得することです。その文字列を保存していない場合、データは失われます。ウォークスルーを簡単にするために、 という新しいファイルを作成し/home/USER/mountkey
、そこに上記のパスフレーズを保存したと仮定します。以下の bash スニペットで、USER
をユーザー名に置き換えます。
パスフレーズをお持ちの場合は、次の手順に従います。
mkdir /home/USER/.ecryptfs
touch /home/USER/.ecryptfs/Private.sig
ecryptfs-add-passphrase --fnek
パスフレーズを入力するよう求められます。入力すると、2 つの署名キーが提供されます。2 つのキーを の 2 つの別々の行に保存します/home/USER/.ecryptfs/Private.sig
(これらのキーを忘れた場合は、 を実行して取得できますkeyctl list @u
)。
次に、以下を実行します。
cat /home/USER/mountkey <(echo "ORIGINAL_PASSWORD") | ecryptfs-wrap-passphrase /home/USER/.ecryptfs/wrapped-passphrase
上記で、ORIGINAL_PASSWORD は、ハード ドライブを暗号化するために最初に使用したパスワードです。ログイン パスワードと同じパスワードを使用した可能性は高いですが、必ずしもそうとは限りません。ORIGINAL_PASSWORD は、冒頭で述べた 16、32、または 64 文字の英数字の文字列であるパスフレーズとも異なります。
ここで、ホーム ドライブをマウントする場所を指定し、自動マウントを有効にする必要があります。
/home/USER/ > /home/USER/.ecryptfs/Private.mnt
touch /home/USER/.ecryptfs/auto-mount
touch /home/USER/.ecryptfs/auto-umount