⚝
One Hat Cyber Team
⚝
Your IP:
216.73.216.144
Server IP:
157.245.143.252
Server:
Linux www 6.11.0-9-generic #9-Ubuntu SMP PREEMPT_DYNAMIC Mon Oct 14 13:19:59 UTC 2024 x86_64
Server Software:
nginx/1.26.0
PHP Version:
8.3.11
Buat File
|
Buat Folder
Eksekusi
Dir :
~
/
bin
/
View File Name :
migrate-pubring-from-classic-gpg
#!/bin/bash # script to migrate fully from pubring.gpg to pubring.kbx # Author: Daniel Kahn Gillmor
# Date: 2016-04-01 # License: GPLv3+ # This was written for the Debian project set -e GPG="${GPG:-gpg}" # select the default GnuPG home directory to work from: GHD=${GNUPGHOME:-${HOME:-$(getent passwd "$(id -u)" | cut -f6 -d:)}/.gnupg} # Check that this is gnupg 2.1 or 2.2: VERSION=$("$GPG" --version | head -n1 | cut -f3 -d\ | cut -f1,2 -d.) if [ "$VERSION" != 2.1 ] && [ "$VERSION" != 2.2 ] && [ "$VERSION" != "2.4" ] ; then printf '%s is version %s not version 2.1, 2.2, or 2.4, this script might be wrong\n' "$GPG" "$VERSION" >&2 exit 1 fi usage() { printf 'Usage: %s [GPGHOMEDIR|--default] \tMigrate public keyring in GPGHOMEDIR from "classic" to "modern" GnuPG \tusing %s version %s. \t--default migrates the GnuPG home directory at "%s" ' "$0" "$GPG" "$VERSION" "$GHD" } if [ -z "$1" ]; then usage >&2 exit 1 else case "$1" in --help|--usage|-h) usage exit ;; --default) ;; *) GHD="$1" ;; esac fi GPG=("$GPG" --homedir "$GHD" --batch) # ensure that there is a pubring.gpg to migrate: if ! [ -f "$GHD/pubring.gpg" ]; then printf 'There is no %s/pubring.gpg, no need to migrate\n' "$GHD" >&2 exit fi if ! [ -s "$GHD/pubring.gpg" ]; then mv -- "$GHD/pubring.gpg" "$GHD/pubring.gpg.empty" printf '%s/pubring.gpg was empty (and has been moved out of the way), no need to migrate\n' "$GHD" >&2 exit fi BACKUP="$(mktemp -d "$GHD/migrate-from-classic-backup.$(date +%F).XXXXXX")" printf 'Migrating from:\n%s\n[Backing up to %s]\n' "$(ls -l "$GHD/pubring.gpg")" "$BACKUP" >&2 "${GPG[@]}" --export-ownertrust > "$BACKUP/ownertrust.txt" mv "$GHD/pubring.gpg" "$BACKUP/" revert() { printf >&2 'Restoring pubring.gpg...\n' cp "$BACKUP/pubring.gpg" "$GHD/pubring.gpg" } trap revert EXIT if ! "${GPG[@]}" --status-file "$BACKUP/import-status" --import-options import-local-sigs,keep-ownertrust,repair-pks-subkey-bug --import < "$BACKUP/pubring.gpg" ; then cat >&2 <
&2 <
&2