do-release-upgrade -d Ubuntu 13.10 -> ошибка 14.04
Сервер Ubuntu 13.10 64, после одного обновления с 13.04 -> 13.10, затем попытка 13.10 -> 14.04. У меня был временный сбой сети при загрузке списков пакетов для 14.04 один раз, который остановил процесс, пытаясь перезапустить процесс, результаты в следующем
root@server:~# do-release-upgrade -d
Checking for a new Ubuntu release
Get:1 Upgrade tool signature [198 B]
Get:2 Upgrade tool [1,148 kB]
Fetched 1,148 kB in 0s (0 B/s)
authenticate 'trusty.tar.gz' against 'trusty.tar.gz.gpg'
gpg exited 2
Debug information:
gpg: fatal: can't open fd 6 for status output: Bad file descriptor
secmem usage: 0/0 bytes in 0/0 blocks of pool 0/0
Authentication failed
Authenticating the upgrade failed. There may be a problem with the network or with the server.
Как я могу перезапустить процесс do-release-upgrade?
Apt-get был полностью обновлен, модернизирован, модернизирован.
Обновить:
root@server:~# lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 13.10
Release: 13.10
Codename: saucy
4 ответа
Этот ответ почти не по теме, но то, что мне было интересно.
Каждый раз, когда я обновляю Debian или некоторые его производные, такие как Ubuntu или Mint, я просто делаю
sed -i -e 's/olddistroname/newdistroname/g' /etc/apt/sources.list
apt-get update && apt-get dist-upgrade
reboot
А потом я наслаждаюсь своим новым, только что выпущенным дистрибутивом.
Это работает для меня с незапамятных времен. Все это do-release-upgrade
шумиха делает меня очень смущенной, злой, старой бородой.
Итак, мой подвопрос: в чем выгода этих do-release-upgrade
команды стиля, если они даже не работают? Что не так с проверенным, работающим способом? (apt-get против aptitude - это еще один бой, который я просто пытаюсь переварить)
В моем случае та же ошибка была вызвана (как предложено в выводе ошибки) из-за недоступности репозиториев для моего выпуска (13.04). Это, в свою очередь, связано с тем, что 13.04 просто больше не поддерживается. (Вы легко заметите это по провалу apt-get update
Кажется, в таком случае нельзя do-release-upgrade
но на самом деле нужно добавить несколько репозиториев, которые предоставляют новые пакеты (например, просто заменить старые на новое имя выпуска в /etc/apt/sources.list), а затем apt-get update && apt-get dist-upgrade
как предложено Janne. (Таким образом, подписи пакетов также проверяются, конечно.)
Запустите эти команды в терминале:
sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 40976EAF437D05B5
sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 3B4FE6ACC0B21F32
Это загружает недостающие ключи GPG (как указано в исходном сообщении об ошибке) с сервера ключей Ubuntu GPG.
Сначала сделай sudo dpkg --configure -a
чтобы очистить все, что вы сломали, а затем sudo apt-get update
чтобы обновить источники, попробуйте еще раз. Иметь ввиду sudo do-release-upgrade -d
следует использовать с осторожностью и, конечно, не следует использовать в производственных условиях.
РЕДАКТИРОВАТЬ:
Согласно документации по обновлению, вы можете напрямую обновить Ubuntu 14.04 ("Trusty Tahr") с Ubuntu 13.10 ("Saucy Salamander") без -d
вариант. Вы должны быть в состоянии решить эту проблему, выполнив sudo do-release-upgrade