gpg: Fatal: libgcrypt слишком стар (нужно 1.7.0, есть 1.6.5)

После обновления до yakkety я не могу безопасно обновить или обновить систему. Выходные данные обновления apt (и aptitude, synaptic и т. Д.) Всегда одинаковы:

Ошибка GPG: http://01.archive.ubuntu.com/ubuntu yakkety-updates InRelease: неизвестная ошибка при выполнении apt-key

исполнение apt-key update дай мне:

gpg: Fatal: libgcrypt слишком стар (нужно 1.7.0, есть 1.6.5)

Довольно странно... Я пытался вручную установить libgcrypt20, и все равно вывод такой же...

поэтому я проверил с dpkg -p libgcrypt20 это дает мне:

dpkg-query: пакет 'libgcrypt20' недоступен

Но согласно synaptic установлена ​​версия 1.7.2-2ubuntu1...

Я уже пробовала ldconfig,

Я не могу обновить в небезопасном режиме, потому что я нахожусь в недемократической стране, и я боюсь за свою систему.

Thks. с.

1 ответ

Я обнаружил ошибку, очень похожую на эту. В моем случае у меня была установлена ​​другая версия libgcrypt в /usr/local/lib

user@computer:~$ gpg --version
gpg: Fatal: libgcrypt is too old (need 1.7.0, have 1.6.4)
user@computer:~$ sudo ldd /usr/bin/gpg
    linux-vdso.so.1 =>  (0x00007fff5b3b8000)
    libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 (0x00007f4f1f95d000)
    libbz2.so.1.0 => /lib/x86_64-linux-gnu/libbz2.so.1.0 (0x00007f4f1f74d000)
    libsqlite3.so.0 => /usr/lib/x86_64-linux-gnu/libsqlite3.so.0 (0x00007f4f1f44b000)
    libgcrypt.so.20 => /usr/local/lib/libgcrypt.so.20 (0x00007f4f1f169000)
    libreadline.so.7 => /lib/x86_64-linux-gnu/libreadline.so.7 (0x00007f4f1ef1f000)
    libassuan.so.0 => /usr/local/lib/libassuan.so.0 (0x00007f4f1ed0a000)
    libgpg-error.so.0 => /usr/local/lib/libgpg-error.so.0 (0x00007f4f1eaf6000)
    libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f4f1e72f000)
    libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f4f1e426000)
    libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f4f1e208000)
    libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f4f1e004000)
    libtinfo.so.5 => /lib/x86_64-linux-gnu/libtinfo.so.5 (0x00007f4f1ddd9000)
    /lib64/ld-linux-x86-64.so.2 (0x0000564feff78000)
user@computer:~$ ls /usr/local/lib
libassuan.la        libgcrypt.so         libgpg-error.so.0       libksba.so.8.11.4
libassuan.so        libgcrypt.so.20      libgpg-error.so.0.17.0  libnpth.la
libassuan.so.0      libgcrypt.so.20.0.4  libksba.la              libnpth.so
libassuan.so.0.7.2  libgpg-error.la      libksba.so              libnpth.so.0
libgcrypt.la        libgpg-error.so      libksba.so.8            libnpth.so.0.0.5

Я решил эту проблему, удалив версию gnupg, ранее установленную вручную.

./configure
make
make uninstall

Запуск следующего, казалось, работал для меня. Благодаря комментариям сверху.

Узнайте, где прячется gpg

$ which gpg
> /usr/local/bin/gpg

Fix'r Up

Укажите на пути от which gpg и беги ldconfig в теме.

$ sudo ldconfig /usr/local/bin/gpg

Примечание: ldconfig ничего не вернул, потом просто начал работать.

проверить

$ gpg --version
> gpg (GnuPG) 2.2.17
> libgcrypt 1.8.4
> ...
Другие вопросы по тегам