Только что наткнулся на эту закрытую тему: Ошибка GPG при запуске apt-get
Та же проблема, Ubuntu 12.04 за брандмауэром и прокси.
Я не думаю, что вопрос является дубликатом данной темы. Так что я снова открываю этот вопрос в этой теме.
Мой вывод:
root@musik-Aspire-7741:~# apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 58B98E87
Executing: gpg --ignore-time-conflict --no-options --no-default-keyring --secret- keyring /tmp/tmp.tWVMhyIMYh --trustdb-name /etc/apt/trustdb.gpg --keyring /etc/apt/trusted.gpg --primary-keyring /etc/apt/trusted.gpg --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 58B98E87
gpg: Key 58B98E87 of hkp Server keyserver.ubuntu.com request
?: keyserver.ubuntu.com: Connection refused
gpgkeys: HTTP fetch error 7: couldn't connect: Connection refused
gpg: No valid OpenPGP data found.
gpg: Total number processed: 0
Вывод: gpg не работает с hkp://keyserver.ubuntu.com:80
через http.
Я потратил на это почти два дня, чтобы установить последнюю версию MongoDB. Но я столкнулся с той же проблемой, как показано ниже:
$ apt-key adv --keyserver keyserver.ubuntu.com --recv 7F0CEB10
Executing: gpg --ignore-time-conflict --no-options --no-default-keyring --secret-keyring /tmp/tmp.pvb8fwe4Rs --trustdb-name /etc/apt/trustdb.gpg --keyring /etc/apt/trusted.gpg --primary-keyring /etc/apt/trusted.gpg --keyring /etc/apt/trusted.gpg.d//nsa-keyring.gpg --keyserver keyserver.ubuntu.com --recv 7F0CEB10
gpg: requesting key 7F0CEB10 from hkp server keyserver.ubuntu.com
gpg: keyserver timed out
gpg: keyserver receive failed: keyserver error
Наконец-то я установил mongoDB с помощью шагов, общих для «ellore».
apt.conf
. export http
и https
. Добавлено «-E» в командной строке:
sudo -E apt-key adv --keyserver keyserver.ubuntu.com --recv 7F0CEB10
Тогда я получил следующий ответ:
gpg: requesting key 7F0CEB10 from hkp server keyserver.ubuntu.com
gpg: key 7F0CEB10: "Richard Kreuter <richard@10gen.com>" not changed
gpg: Total number processed: 1
gpg: unchanged: 1
И у меня есть успешно установлен MongoDB 3.0.7, как показано ниже,
$ mongo --version
MongoDB shell version: 3.0.7
Если вы находитесь за прокси-сервером, то вы должны установить переменную окружения http_proxy
в Bash. Лучший способ сделать это - открыть корневую оболочку с помощью sudo bash
.
После этого:
export http_proxy="http://xxx.yyy.zzz.www:abcd"
Затем добавьте репо.
За прокси должна быть установлена переменная окружения http_proxy
. Это может быть сделано любым из двух способов.
1. Создайте файл apt.conf
в каталоге / etc / apt, если он отсутствует, и добавьте в него следующую строку. Acquire::http::Proxy "http://user:password@server:port";
2. Просто установите переменную окружения, используя следующую команду от терминала.
export http_proxy=http://user:password@server:port
Наконец, небольшая настройка, добавьте параметр -E к команде для переменных среды, которые будут использоваться следующим образом
sudo -E apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 58B98E87