
.NET에서 깨진 GPG 항목을 수정하는 방법을 찾기 위해 머리를 긁적입니다 apt
.
Nodejs를 설치하려고 하면 다음과 같습니다.
curl -sL https://deb.nodesource.com/setup_7.x | sudo -E bash -
sudo apt-get install -y nodejs
이 오류가 발생합니다.
## You seem to be using Debian version stretch.
## This maps to Debian "jessie"... Adjusting for you...
## Confirming "jessie" is supported...
+ curl -sLf -o /dev/null 'https://deb.nodesource.com/node_7.x/dists/jessie/Release'
## Adding the NodeSource signing key to your keyring...
+ curl -s https://deb.nodesource.com/gpgkey/nodesource.gpg.key | apt-key add -
gpg: [don't know]: invalid packet (ctb=00)
gpg: keydb_get_keyblock failed: Valeur non trouvée
gpg: [don't know]: invalid packet (ctb=00)
gpg: /tmp/apt-key-gpghome.ix2LFsfXOw/pubring.gpg: copy to '/tmp/apt-key-gpghome.ix2LFsfXOw/pubring.gpg.tmp' failed: Paquet incorrect
gpg: error writing keyring '/tmp/apt-key-gpghome.ix2LFsfXOw/pubring.gpg': Paquet incorrect
gpg: [don't know]: invalid packet (ctb=00)
gpg: error reading '-': Paquet incorrect
gpg: import from '-' failed: Paquet incorrect
Error executing command, exiting
저는 커널 10.5와 함께 Debian Stretch rc2를 사용합니다. 문제인지 아닌지는 모르겠습니다. Ryzen 프로세서에서 실행 중이기 때문에 안정적인 버전의 Debian을 사용할 수 없습니다.
VSCode를 설치하려고 하면 또 다른 오류가 발생합니다.
W: Erreur de GPG : http://packages.microsoft.com/repos/vscode stable InRelease : Les signatures suivantes n'ont pas pu être vérifiées car la clé publique n'est pas disponible : NO_PUBKEY EB3E94ADBE1229CF
W: The repository 'http://packages.microsoft.com/repos/vscode stable InRelease' is not signed.
N: Data from such a repository can't be authenticated and is therefore potentially dangerous to use.
N: See apt-secure(8) manpage for repository creation and user configuration details.
어떤 아이디어?
[편집] 이것은 내 source.list입니다.
deb http://ftp.univ-pau.fr/linux/mirrors/debian/ stretch main non-free contrib
deb-src http://ftp.univ-pau.fr/linux/mirrors/debian/ stretch main non-free contrib
deb http://security.debian.org/debian-security/ stretch/updates main contrib non-free
deb-src http://security.debian.org/debian-security/ stretch/updates main contrib non-free
# stretch-updates, previously known as 'volatile'
deb http://ftp.univ-pau.fr/linux/mirrors/debian/ stretch-updates main contrib non-free
deb-src http://ftp.univ-pau.fr/linux/mirrors/debian/ stretch-updates main contrib non-free
# stretch-backports, previously on backports.debian.org
deb http://ftp.univ-pau.fr/linux/mirrors/debian/ stretch-backports main contrib non-free
deb-src http://ftp.univ-pau.fr/linux/mirrors/debian/ stretch-backports main contrib non-free
# deb [arch=amd64] https://download.docker.com/linux/debian/ stretch stable
# deb-src [arch=amd64] https://download.docker.com/linux/debian/ stretch stable
deb http://www.deb-multimedia.org/ stretch main non-free
deb [arch=amd64] http://packages.microsoft.com/repos/vscode stable main
답변1
나는 이것이 오래된 질문이고 OBE(Overcome By Events)일 수 있다는 것을 이해합니다... 그러나...
우연히 동시에 발생한 몇 가지 문제가 있는 것 같습니다.
문제 1: Nodejs 저장소 GPG 공개 키
키를 다운로드하는 데 아무런 문제가 없었기 때문에 특정 날짜에 리포지토리에 연결 문제나 다른 결함이 있었을 수도 있습니다.
저장소 공개 키를 읽는 테스트는 다음과 같습니다.
$ curl -s https://deb.nodesource.com/gpgkey/nodesource.gpg.key |gpg --list-packets
# off=0 ctb=99 tag=6 hlen=3 plen=525
:public key packet:
version 4, algo 1, created 1402676406, expires 0
pkey[0]: [4096 bits]
pkey[1]: [17 bits]
keyid: 1655A0AB68576280
# off=528 ctb=b4 tag=13 hlen=2 plen=31
:user ID packet: "NodeSource <[email protected]>"
# off=561 ctb=89 tag=2 hlen=3 plen=568
:signature packet: algo 1, keyid 1655A0AB68576280
version 4, created 1402676406, md5len 0, sigclass 0x13
digest algo 2, begin of digest 74 e6
hashed subpkt 2 len 4 (sig created 2014-06-13)
hashed subpkt 27 len 1 (key flags: 03)
hashed subpkt 11 len 5 (pref-sym-algos: 9 8 7 3 2)
hashed subpkt 21 len 5 (pref-hash-algos: 8 2 9 10 11)
hashed subpkt 22 len 3 (pref-zip-algos: 2 3 1)
hashed subpkt 30 len 1 (features: 01)
hashed subpkt 23 len 1 (keyserver preferences: 80)
subpkt 16 len 8 (issuer key ID 1655A0AB68576280)
data: [4095 bits]
# off=1132 ctb=b9 tag=14 hlen=3 plen=525
:public sub key packet:
version 4, algo 1, created 1402676406, expires 0
pkey[0]: [4096 bits]
pkey[1]: [17 bits]
keyid: 6C5CDECAAA01DA2C
# off=1660 ctb=89 tag=2 hlen=3 plen=543
:signature packet: algo 1, keyid 1655A0AB68576280
version 4, created 1402676406, md5len 0, sigclass 0x18
digest algo 2, begin of digest 83 d0
hashed subpkt 2 len 4 (sig created 2014-06-13)
hashed subpkt 27 len 1 (key flags: 0C)
subpkt 16 len 8 (issuer key ID 1655A0AB68576280)
data: [4096 bits]
문제 2: Microsoft 저장소 GPG 공개 키
여기서 문제는 Microsoft 공개 키가 Microsoft repo 서버의 별도 디렉터리에 있다는 것입니다.
다음에서 키 파일을 찾았습니다.
https://packages.microsoft.com/keys/microsoft.asc
다음은 Microsoft의 저장소 공개 키를 읽는 테스트입니다.
$ curl -s https://packages.microsoft.com/keys/microsoft.asc |gpg --list-packets
# off=0 ctb=99 tag=6 hlen=3 plen=269
:public key packet:
version 4, algo 1, created 1446074508, expires 0
pkey[0]: [2048 bits]
pkey[1]: [17 bits]
keyid: EB3E94ADBE1229CF
# off=272 ctb=b4 tag=13 hlen=2 plen=55
:user ID packet: "Microsoft (Release signing) <[email protected]>"
# off=329 ctb=89 tag=2 hlen=3 plen=309
:signature packet: algo 1, keyid EB3E94ADBE1229CF
version 4, created 1446074508, md5len 0, sigclass 0x13
digest algo 2, begin of digest 1a 9b
hashed subpkt 2 len 4 (sig created 2015-10-28)
hashed subpkt 27 len 1 (key flags: 03)
hashed subpkt 11 len 5 (pref-sym-algos: 9 8 7 3 2)
hashed subpkt 21 len 3 (pref-hash-algos: 2 8 3)
hashed subpkt 22 len 2 (pref-zip-algos: 2 1)
hashed subpkt 30 len 1 (features: 01)
hashed subpkt 23 len 1 (keyserver preferences: 80)
subpkt 16 len 8 (issuer key ID EB3E94ADBE1229CF)
data: [2047 bits]
문제 3: 저장소 URL에 슬래시가 누락되었습니다.
/etc/apt/sources.list
Microsoft 저장소의 줄에 슬래시가 누락되었습니다 .
이 줄은:
deb [arch=amd64] http://packages.microsoft.com/repos/vscode stable main
해야한다:
deb [arch=amd64] http://packages.microsoft.com/repos/vscode/ stable main
완벽한 솔루션
- 다시 설치해 보세요
nodejs
- 누락된 슬래시를 추가하세요.
/etc/apt/sources.list
- Microsoft의 저장소 서명 키를 다운로드하고 추가하세요.
curl -s https://packages.microsoft.com/keys/microsoft.asc |apt-key add -