IT TIP

CRAN Ubuntu 저장소에서 R 설치 : 공개 키 오류 없음

itqueen 2020. 11. 22. 21:03
반응형

CRAN Ubuntu 저장소에서 R 설치 : 공개 키 오류 없음


저는 R 버전 2.13을 사용 중이며 R> = 2.14에 의존하는 일부 패키지를 사용하기 위해 최신 버전으로 업데이트하고 싶습니다.

여기에 설명 된대로 내 sources.list 파일에 대한 줄이 있습니다 . 그런 다음 터미널로 이동하여 다음을 입력합니다.

sudo apt-get update

나에게 가장 가까운 CRAN 미러에서 R을 업데이트하려고 할 때 다음 오류가 발생합니다.

패키지 목록 읽는 중 ... 완료

W : GPG 오류 : http://lib.stat.cmu.edu oneiric / 릴리스 : 공개 키를 사용할 수 없기 때문에 다음 서명을 확인할 수 없습니다. NO_PUBKEY 51716619E084DAB9

이 오류를 디버깅하는 방법을 아십니까?


@Ben Bolker가 댓글을 달 았던 것처럼 (죄송하지만 정답이 아직 게시되지 않았습니다) 데비안 패키지 저장소 의 설명 에 다음과 같은 섹션 secure apt이 있습니다.

보안 아파트

CRAN의 데비안 백 포트 아카이브는 키 ID 381BA480으로 "Johannes Ranke (CRAN Debian 아카이브)"키로 서명됩니다. 이것을 가져올 수 있습니다

gpg --keyserver subkeys.pgp.net --recv-key 381BA480 또는 다른 키 서버를 사용하여

gpg --keyserver pgp.mit.edu --recv-key 381BA480 이것이 작동하지 않으면 방화벽 차단 포트 11371 때문일 수 있습니다. 또는 http://keyserver.noreply.org 에서 0x381BA480을 검색 할 수 있습니다. / 또는 http://pgp.mit.edu/ 키 블록을 일반 텍스트 파일 (예 : jranke_cran.asc)로 복사합니다.

gpg를 사용하여 키를받는 것이 작동했다면 텍스트 파일로 내 보내야합니다.

gpg -a --export 381BA480> jranke_cran.asc 두 경우 모두 다음을 실행하여 apt 시스템에 키를 알려야합니다.

apt-key는 jranke_cran.asc를 루트로 추가합니다.

아직이 작업을 수행하지 않은 경우 문제가 해결 될 수 있습니다.


나를 위해 일한 가장 간단한 솔루션은 이 스레드의 Emre Sahin에서 왔습니다 .

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys E084DAB9 

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys KEYID

KEYID를 오류 메시지에 표시된 번호로 바꿉니다.


Philipp Burckhardt 덕분에 문제가 해결되었습니다 .

여기 를 보거나 간단하게 시도해보세요.

gpg --keyserver pgpkeys.mit.edu --recv-key 51716619E084DAB9  
gpg -a --export 51716619E084DAB9 | sudo apt-key add -

동일한 문제가 발생했으며 방화벽으로 인해 찾은 유일한 해결책은 유용한 Y PPA 관리자를 사용하는 것입니다. 아래의 두 단계는 Ubuntu 15.04에서 작동했습니다.

1) 먼저 Y PPA 관리자를 설치합니다.

sudo add-apt-repository ppa:webupd8team/y-ppa-manager
sudo apt-get update
sudo apt-get install y-ppa-manager

2) 그런 다음 Y PPA 관리자를 실행하여 누락 된 키를 가져옵니다.

y-ppa-manager

"고급"을 클릭하십시오.

다음으로 "누락 된 GPG 키 가져 오기 시도"를 클릭합니다.

마지막으로 다시 업데이트하여 작동하는지 확인하십시오.

sudo apt-get update

위에 게시 된 다른 사람과 마찬가지로이 한 줄짜리 줄은 데비안 6에서 잘 작동하는 것 같습니다.

sudo apt-key adv --keyserver hkp://pgp.mit.edu:80 --recv-keys 381BA480

Executing: gpg --ignore-time-conflict --no-options
--no-default-keyring --secret-keyring /etc/apt/secring.gpg --trustdb-name /etc/apt/trustdb.gpg --keyring /etc/apt/trusted.gpg --primary-keyring /etc/apt/trusted.gpg --keyserver hkp://pgp.mit.edu:80 --recv-keys 381BA480 
gpg: requesting key 381BA480 from hkp server pgp.mit.edu 
gpg: key 381BA480: public key "Johannes Ranke (CRAN Debian archive) <jranke@uni-bremen.de>" imported 
gpg: no ultimately trusted keys found 
gpg: Total number processed: 1 
gpg:      imported: 1

다음은 따르기 쉬운 단계별 답변입니다.

  1. 키 (경고 메시지의 마지막 8 자리)를 가져옵니다.

    gpg --keyserver pgp.mit.edu --recv-key E084DAB9
    

    출력은 다음과 같아야합니다.

    gpg: requesting key E084DAB9 from hkp server pgp.mit.edu
    gpg: key E084DAB9: public key "Michael Rutter <marutter@gmail.com>" imported
    gpg: Total number processed: 1
    gpg:               imported: 1  (RSA: 1)
    
  2. 키 추가 (슈퍼 유저 액세스 필요) :

    gpg -a --export E084DAB9 | sudo apt-key add -
    
  3. 저장소를 업데이트하십시오.

    sudo apt-get update
    

이제 누락 된 키에 대한 경고가 없어야합니다.


이것은 내 문제를 해결했습니다.

$ wget -q -O - https://archive.kali.org/archive-key.asc | apt-key add

참고 URL : https://stackoverflow.com/questions/10255082/installing-r-from-cran-ubuntu-repository-no-public-key-error

반응형