別のMacbookに移動しました。 SSDが高価でディスクサイズが非常に小さいため、またこのインストールでクリーンに開始したかったため、ユーザーフォルダーを転送できませんでした。外部ケースの古いディスクを接続しましたが、2つの秘密鍵をエクスポートするのを忘れました。外部ディスクまたはTimeMachineから復元したいのですが。
GPG Toolsの秘密鍵はどこにあるので、エクスポートしたり、GPG Toolsフォルダー全体をコピーしたりできますか?
デフォルトでは、GnuPGキーリングは(非表示の)フォルダー~/.gnupg
に保存されます。つまり、ホームディレクトリの.gnupg
フォルダです。フォルダ全体を新しいマシンにコピーするだけです。後でGnuPGが正しく機能しない場合、または権限が壊れていることを示すエラーメッセージが表示される場合は、ターミナルアプリケーションで次のコマンドを実行して(ユーザー名が同じであっても、内部IDが異なる可能性があります)、後で所有権を取得してください(ユーザーパスワードを照会します):
Sudo chown -R $USER:staff ~/.gnupg
または、を使用して秘密鍵をエクスポートすることもできます。
gpg --export-secret-keys [key-id] >secret-keys.gpg
コマンド。古いディスクからキーを回復したいので、それをあなたのコンピュータに接続してください。古いディスクのGnuPGキーリングで作業するには、--homedir
オプションを使用します。これにより次のようになります。
gpg --homedir /Volumes/[old-disks-name]/Users/[username]/.gnupg --list-secret-keys
利用可能な秘密鍵を一覧表示するには、
gpg --homedir /Volumes/[old-disks-name]/Users/[username]/.gnupg --export-secret-keys [key-id] > secret-keys.gpg
それらをエクスポートします。中間ファイルに保存する代わりに、それらを新しいGnuPGキーリングに直接インポートすることもできます(GnuPG呼び出しで欠落している--homedir
パラメーターを確認してください後パイプ):
gpg --homedir /Volumes/[old-disks-name]/Users/[username]/.gnupg --export-secret-keys [key-id] | gpg --import
Time Machineバックアップはマウントできますが、その場で変更することはできません。つまり、chownは失敗し、gpgで--homedir
オプションを使用するには、次のストリームを取得する必要があります。
gpg: failed to create temporary file '/Volumes/<Backup Drive>/Backups.backupdb/<Compute Name>/Latest/Macintosh HD/Users/<name>/.gnupg/': Permission denied
gpg: can't connect to the agent: Permission denied
Chownは、次のようなメッセージのストリームで失敗します。
$ Sudo chown -R user:staff .gnupg
chown: .gnupg/tofu.db: Operation not permitted
chown: .gnupg/trustdb.gpg: Operation not permitted
chown: .gnupg: Operation not permitted
Time Machineバックアップから.gnupgフォルダーをコピーし、chownし、上記のように秘密鍵を表示/抽出します。
$ mkdir ~/gpg_recovery
$ cp -r /Volumes/<Backup Drive>/Backups.backupdb/<Compute Name>/Latest/Macintosh HD/Users/<name>/.gnupg ~/gpg_recovery/
$ cd ~/gpg_recovery/
$ Sudo chown -R $USER:staff .gnupg
Password:
$ gpg --homedir ~/gpg_recovery/.gnupg --list-secret-keys
$ gpg --homedir ~/gpg_recovery/.gnupg --export-secret-keys | gpg --import
gpg: key xxxxxxxxxxxxxxxx: public key "xxxxxxxxxxxxxxxxxxxxxxx" imported
gpg: key xxxxxxxxxxxxxxxx: secret key imported
gpg: Total number processed: 1
gpg: imported: 1
gpg: secret keys read: 1
gpg: secret keys imported: 1