본문 바로가기

목록이 없습니다.

[Ubuntu] GPG Error "NO_PUBKEY"

Server/Ubuntu

    상황 설명

    우분투 서버에서 nodejs 설치를 하는데 기본적으로 Ubuntu는 nodejs 패키지를 다운로드 받을 때 구버전을 받아온다.

    최신 버전을 받아오기 위해서 apt source list에 최신 버전 패키지 레파지토리 위치를 추가해줘야한다.

    우분투에서 최신 버전 nodejs 받는 방법은 링크로 대신한다.

     

    우분투(Ubuntu)에서 nodejs 최신버전 다운로드 받는 방법

     

    그런데 source list를 추가하고 apt update를 하면 source list가 적용이 되야하는데 에러가 발생하면서 이 포스팅 제목에 써있는 "NO_PUBKEY" 가 발생한다. 그 이유는 public key를 사용할 수 없다고 에러 메세지에 나오는데 해당 서버에 해당 Public key가 없어서 그런 것 같다..

     

    해결 방법

    다음과 같이 Public key를 서버에 추가하고 update를 다시 하면 해결할 수 있다.

    sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys <PUBKEY>
    sudo apt-get update


    예를들면 아래와 같다.

    sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 8BAF9A6F
    sudo apt-get update

     

     


    (2023.12.01) 추가

    key 추가 시 위의 명령어를 입력했을 때 결과가 오류를 받아오는 경우가 있다.

    ubuntu keyserver receive failed

    이 경우 아래와 같이 keyserver 앞에는 hkp:// 를 붙여주고 뒤에는 80 포트를 붙이면 된다.

    $ sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys  B53DC80D13EDEF05

     

     

    참고

    https://askubuntu.com/questions/13065/how-do-i-fix-the-gpg-error-no-pubkey