Проблема с gpg при использовании apt

wget -r может работать только в том случае, если все ссылки на PDF-файлы каким-либо образом доступны по заданному URL-адресу.

Что вы можете сделать, так это «посмотреть» на исходный HTML-код конкретного сайта http://eduplace.com/math/mw/practice/1/lp_1_u1sel.html , чтобы увидеть, как все pdf ссылки построены. Затем напишите небольшой сценарий, чтобы сделать это автоматически, например:

wget http://eduplace.com/math/mw/practice/1/lp_1_u1sel.html
CHAPT=$(grep chapter  lp_1_u1sel.html | sed 's/.*value="\([^"]*\)".*/\1/')
FEAT=$(grep feature  lp_1_u1sel.html | sed 's/.*value="\([^"]*\)".*/\1/')
for c in $CHAPT; do
    for f in $FEAT; do
        wget -O mw-practice-1-$c-$f.pdf https://www.eduplace.com/math/mw/practice/1/$c/$f.pdf
    done
done

2
08.04.2017, 13:02
1 ответ

Я понимаю, что это старый вопрос, и он может быть преодолен событиями (ВТО )... Однако...

Кажется, есть несколько проблем, которые случайно возникли одновременно.

Проблема 1:Открытые ключи GPG репозитория Nodejs

У меня не было проблем с загрузкой ключей, поэтому, возможно, у репозитория были проблемы с подключением или какой-то другой сбой в тот конкретный день.

Вот мой тест чтения открытых ключей репо:

$ 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 <gpg@nodesource.com>"
# 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:Открытые ключи GPG репозитория Microsoft

Проблема здесь в том, что открытые ключи Microsoft расположены в отдельном каталоге на сервере хранилища Microsoft.

Я нашел ключевой файл в:

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) <gpgsecurity@microsoft.com>"
# 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

Полное решение

  1. Re -попробуйте установитьnodejs
  2. Добавьте недостающую косую черту в/etc/apt/sources.list
  3. Загрузите и добавьте ключи подписи репозитория Microsoft:

curl -s https://packages.microsoft.com/keys/microsoft.asc |apt-key add -

0
27.01.2020, 22:40

Теги

Похожие вопросы