--keyring을 사용하여 gpg를 통해 공개 키를 내보낼 수 없습니다.

--keyring을 사용하여 gpg를 통해 공개 키를 내보낼 수 없습니다.

해당 --keyring옵션을 사용하면 다음을 사용하여 공개 키를 내보낼 수 없습니다 gpg.

$ gpg -vv --armor --keyring pubring.gpg --export
gpg: writing to stdout
gpg: WARNING: nothing exported

하지만 다음과 같은 경우에 작동합니다 --homedir.

$ gpg --armor --homedir . --export 
-----BEGIN PGP PUBLIC KEY BLOCK-----
Version: GnuPG v2.0.14 (GNU/Linux)
...

그 이유는 무엇입니까? 해결책이 있나요?

답변1

gpg 매뉴얼 페이지에서:

--keyring file
             Add file to the current list of  keyrings.   If  file  begins
             with  a  tilde  and  a slash, these are replaced by the $HOME
             directory. If the filename does not contain a  slash,  it  is
             assumed  to  be  in  the  GnuPG home directory ("~/.gnupg" if
             --homedir or $GNUPGHOME is not used).

주어진 파일 이름 에는 슬래시가 있어야 합니다( 및 --keyring등의 다른 옵션도 포함 ). 그렇지 않으면 gpg는 GnuPG 홈 디렉터리에서 슬래시를 찾습니다.--secret-keyring--trustdb-name

다음을 사용하고 싶을 것입니다:

gpg -vv --armor --keyring ./pubring.gpg --export

관련 정보