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
> ...