Сервер Ubuntu 16.04.3 не может обновить / загрузить / установить [dубликат]

Ссылки устарели. Я бы попробовал это. Это официальная цветовая палитра для Ubuntu.

Я также узнал, что 69 69 69 - атмосфера убунту темно-серая, а 174 167 159 - светло-серый

ubuntu,
74
задан 22 July 2013 в 17:55

18 ответов

обзор

На ваш вопрос две части:

исправление временных сообщений об устранении проблем управления пакетами

Временное решение

] Вероятно, эта проблема также:

исправление временных сообщений о разрешении из-за изменения вашей сети аналогичным образом заблокировало это именование - например, новый маршрутизатор / модем, реконфигурирование переключатель с новой конфигурацией.

Давайте посмотрим на возможные проблемы разрешения DNS.

Сначала временно добавьте в вашу систему известный DNS-сервер.

echo "nameserver 8.8.8.8" | sudo tee /etc/resolv.conf > /dev/null

Затем запустите sudo apt-get update .

Если это исправляет ваши временные разрешающие сообщения, либо подождите 24 часа, чтобы узнать, исправляет ли ваш интернет-провайдер эту проблему (или просто обратитесь к вашему интернет-провайдеру) - или вы можете навсегда добавить DNS-сервер в свою систему :

echo "nameserver 8.8.8.8" | sudo tee /etc/resolvconf/resolv.conf.d/base > /dev/null

8.8.8.8 - собственный DNS-сервер Google.

source

Другим примером DNS-сервера, который вы можете использовать, является временное разрешение - например:

echo "nameserver 208.67.222.222" | sudo tee /etc/resolvconf/resolv.conf.d/base > /dev/null

проблемы с пакетным управлением

В дополнение к проблемам временного разрешения - у вас есть несколько проблем управления пакетами, которые необходимо исправить - я предполагаю, что вы недавно попробовали обновить одну версию Ubuntu до следующей рекомендованной версии - в вашем case from Natty (11.04) to Oneiric (11.10)

Откройте терминал и введите

sudo nano /etc/apt/sources.list

Посмотрите на строки, у которых в списке есть другое имя рассылки, чем вы ожидали - в вашем случае - вы обновлены до oneiric, но у вас есть другое название выпуска natty

Например, найдите строки, которые выглядят как deb http:/archive.canonical.com/ natty backports

Добавьте # в начало строки, чтобы прокомментировать это, например

#deb http:/archive.canonical.com/ natty backports

Сохранить и повторно запустить:

sudo apt-get update && sudo apt-get upgrade

Вы должны не имеют больше ошибок в присвоении имен.

На момент написания этого, возможно, общий sou rce включают lucid, maverick, natty, oneiric, precise, quantal, raring, saucy, trusty, utopic и vivid.

109
ответ дан 18 July 2018 в 04:21

обзор

На ваш вопрос две части:

исправление временных сообщений об устранении проблем управления пакетами

Временное решение

] Вероятно, эта проблема также:

исправление временных сообщений о разрешении из-за изменения вашей сети аналогичным образом заблокировало это именование - например, новый маршрутизатор / модем, реконфигурирование переключатель с новой конфигурацией.

Давайте посмотрим на возможные проблемы разрешения DNS.

Сначала временно добавьте в вашу систему известный DNS-сервер.

echo "nameserver 8.8.8.8" | sudo tee /etc/resolv.conf > /dev/null

Затем запустите sudo apt-get update .

Если это исправляет ваши временные разрешающие сообщения, либо подождите 24 часа, чтобы узнать, исправляет ли ваш интернет-провайдер эту проблему (или просто обратитесь к вашему интернет-провайдеру) - или вы можете навсегда добавить DNS-сервер в свою систему :

echo "nameserver 8.8.8.8" | sudo tee /etc/resolvconf/resolv.conf.d/base > /dev/null

8.8.8.8 - собственный DNS-сервер Google.

source

Другим примером DNS-сервера, который вы можете использовать, является временное разрешение - например:

echo "nameserver 208.67.222.222" | sudo tee /etc/resolvconf/resolv.conf.d/base > /dev/null

проблемы с пакетным управлением

В дополнение к проблемам временного разрешения - у вас есть несколько проблем управления пакетами, которые необходимо исправить - я предполагаю, что вы недавно попробовали обновить одну версию Ubuntu до следующей рекомендованной версии - в вашем case from Natty (11.04) to Oneiric (11.10)

Откройте терминал и введите

sudo nano /etc/apt/sources.list

Посмотрите на строки, у которых в списке есть другое имя рассылки, чем вы ожидали - в вашем случае - вы обновлены до oneiric, но у вас есть другое название выпуска natty

Например, найдите строки, которые выглядят как deb http:/archive.canonical.com/ natty backports

Добавьте # в начало строки, чтобы прокомментировать это, например

#deb http:/archive.canonical.com/ natty backports

Сохранить и повторно запустить:

sudo apt-get update && sudo apt-get upgrade

Вы должны не имеют больше ошибок в присвоении имен.

На момент написания этого, возможно, общий sou rce включают lucid, maverick, natty, oneiric, precise, quantal, raring, saucy, trusty, utopic и vivid.

109
ответ дан 24 July 2018 в 18:03

Обратите внимание, что этот ответ был написан для старых версий Ubuntu. В текущих версиях используется локальный сервер имен, управляемый D-Bus, для которого применяется диагностическая часть этого ответа, но не решение. Если /etc/resolv.conf содержит nameserver 127.0.1.1 или в целом nameserver 127.X.Y.Z, не изменяйте его.

«Временное разрешение отказа ...» означает, что ваш DNS, т. Е. Перевод с имен хостов на IP-адреса, не работает. Вы недавно переконфигурировали вашу машину? Если это не так, это может быть временная ошибка у вашего интернет-провайдера.

Есть ли ping -n 8.8.8.8 строки, такие как 64 bytes from 8.8.8.8: …? (Нажмите Ctrl + C, чтобы остановить ping.)

Если это не так, у вас есть проблема с IP-подключением. Запустите traceroute -n 8.8.8.8 и посмотрите, где он остановится: если вы находитесь в своем доме / офисе, проверьте сетевое оборудование. Если вы можете связаться со своим интернет-провайдером, пожаловаться на них. Если это так, у вас есть проблема с DNS. Проверьте содержимое /etc/resolv.conf; должна быть строка типа nameserver 1.2.3.4 (возможно, более одного из них). Если строки существуют, в вашем интернет-провайдере, вероятно, есть временная проблема, и вы можете обойти это, добавив nameserver 8.8.8.8 к этому файлу (это объявляет дополнительный DNS-сервер, который предоставляется бесплатно Google) , Если первое число после nameserver равно 127, на вашем компьютере есть DNS-ретранслятор (это хорошо), и вы должны настроить это DNS-ретрансляцию, а не изменять /etc/resolv.conf. В современных версиях Ubuntu по умолчанию используется DNS-ретранслятор, это Dnsmasq, и он управляется D-Bus.
8
ответ дан 18 July 2018 в 04:21

Для тех, кто использует EC2, не забудьте проверить, что ваши параметры группы безопасности позволяют исходящие подключения к веб-сайтам, которые вы обновляете. Вы можете установить все параметры исходящего трафика и посмотреть, работает ли он.

0
ответ дан 18 July 2018 в 04:21

У меня была эта ошибка. После подсказки от поддержки Linode я прокомментировал все строки IPv6 в / etc / hosts, а затем apt-get update начал работать.

0
ответ дан 18 July 2018 в 04:21

Вы можете прокомментировать нерешенное репо из файла sources.list, найденного в каталоге dir / etc / apt /

. После изменения sources.list очистите repo apt-get как

apt-get clean

Затем обновите

apt-get update

Ошибка исчезнет

8
ответ дан 18 July 2018 в 04:21

Принятое решение не работает для меня. Во-первых, только apt-get update предупреждает меня о Temporary failure resolving 'foo.com', но когда я пытаюсь работать с nslookup foo.com или ping foo.com, он отлично работает!

Мое невероятное грязное взлома / исправление для решения этой ошибки , необходимо добавить разрешенные домены вручную в /etc/hosts с помощью этого короткого скрипта:

resolveAptHosts() { mapfile -t hosts < <( sed -n -r '/^#/d; s;deb(-src)? (http://|ftp://)?([^/ ]+).*;\3;p'\ /etc/apt/sources.list | sort | uniq ) # delete all hosts from /etc/hosts, e.g., from an earlier call sudo sed -i -r '/^[0-9]{1,3}(\.[0-9]{1,3}){3}[ \t]+('"$( printf '|%s'\ "${hosts[@]//./\\.}" | sed 's/^|//' )"')[ \t]*$/d' /etc/hosts for host in ${hosts[@]}; do ip=$( nslookup "$host" | sed -n -r 's|Address:[ \t]*([0-9.]+).*|\1|p' | tail -1 ) sudo bash -c "echo $ip $host >> /etc/hosts" done }

Теперь обновление должно работать:

resolveAptHosts && sudo apt-get update

Если кто-нибудь знает, почему это обходное решение работает и как решить эту ошибку на самом деле, я буду вечно благодарен. Я также попытался использовать sudo apt-get update -o Acquire::ForceIPv4=true, чтобы исключить проблемы с разрешением IPv6, но это тоже не помогло.

0
ответ дан 18 July 2018 в 04:21

У меня возникли подобные ошибки при запуске команд apt-get. Оказывается, на консоли была открыта панель обновления программного обеспечения. Это, казалось, блокировало командную строку apt-get, но я не уверен.

0
ответ дан 18 July 2018 в 04:21

Это проблема DNS. Проверьте файл /etc/resolv.conf.

, например, в моем случае, когда у меня была эта проблема & amp; проверил этот файл, файл был пуст! но он должен содержать ваш dns-nameserver

mine:

nameserver 192.168.10.x

192.168.10.x is my gateway ip address

0
ответ дан 18 July 2018 в 04:21

Иногда, когда вы находитесь за прокси-сервером, даже необходимо, чтобы вы сгенерировали файл apt.conf в /etc/apt/ и заполнили его конкретными записями, например:

Acquire::http::proxy "http://<yourproxyserver>:<Port>"; Acquire::https::proxy "http://<yourproxyserver>:<Port>"; Acquire::ftp::proxy "http://<yourproxyserver>:<Port>";

Если требуется аутентификация, файл конфигурации выглядит так:

Acquire::http::proxy "http://<domain\user>:<password>@<yourproxyserver>:<Port>"; Acquire::https::proxy "http://<domain\user>:<password>@<yourproxyserver>:<Port>"; Acquire::ftp::proxy "http://<domain\user>:<password>@<yourproxyserver>:<Port>";
3
ответ дан 18 July 2018 в 04:21

Обратите внимание, что этот ответ был написан для старых версий Ubuntu. В текущих версиях используется локальный сервер имен, управляемый D-Bus, для которого применяется диагностическая часть этого ответа, но не решение. Если /etc/resolv.conf содержит nameserver 127.0.1.1 или в целом nameserver 127.X.Y.Z, не изменяйте его.

«Временное разрешение отказа ...» означает, что ваш DNS, т. Е. Перевод с имен хостов на IP-адреса, не работает. Вы недавно переконфигурировали вашу машину? Если это не так, это может быть временная ошибка у вашего интернет-провайдера.

Есть ли ping -n 8.8.8.8 строки, такие как 64 bytes from 8.8.8.8: …? (Нажмите Ctrl + C, чтобы остановить ping.)

Если это не так, у вас есть проблема с IP-подключением. Запустите traceroute -n 8.8.8.8 и посмотрите, где он остановится: если вы находитесь в своем доме / офисе, проверьте сетевое оборудование. Если вы можете связаться со своим интернет-провайдером, пожаловаться на них. Если это так, у вас есть проблема с DNS. Проверьте содержимое /etc/resolv.conf; должна быть строка типа nameserver 1.2.3.4 (возможно, более одного из них). Если строки существуют, в вашем интернет-провайдере, вероятно, есть временная проблема, и вы можете обойти это, добавив nameserver 8.8.8.8 к этому файлу (это объявляет дополнительный DNS-сервер, который предоставляется бесплатно Google) , Если первое число после nameserver равно 127, на вашем компьютере есть DNS-ретранслятор (это хорошо), и вы должны настроить это DNS-ретрансляцию, а не изменять /etc/resolv.conf. В современных версиях Ubuntu по умолчанию используется DNS-ретранслятор, это Dnsmasq, и он управляется D-Bus.
8
ответ дан 24 July 2018 в 18:03
  • 1
    Примечание: ping 8.8.8.8 -c3 пинг только 3 раз, тогда вам не нужно Ctrl + C. Вы можете использовать любое число в параметре, например -c5, -c1, -c100 и т. Д. – Arda 6 November 2014 в 00:58
  • 2
    nameserver необходимо разместить с машиной имени хоста? – albert 7 March 2018 в 21:47
  • 3
    @albert /etc/resolv.conf, который имеет значение, - это тот, на котором вы находитесь. Но в современных системах он просто указывает на локальную машину, и если у вас проблемы с DNS, вы должны работать с D-Bus и NetworkManager. – Gilles 8 March 2018 в 11:41

Для тех, кто использует EC2, не забудьте проверить, что ваши параметры группы безопасности позволяют исходящие подключения к веб-сайтам, которые вы обновляете. Вы можете установить все параметры исходящего трафика и посмотреть, работает ли он.

0
ответ дан 24 July 2018 в 18:03

У меня была эта ошибка. После подсказки от поддержки Linode я прокомментировал все строки IPv6 в / etc / hosts, а затем apt-get update начал работать.

0
ответ дан 24 July 2018 в 18:03

Вы можете прокомментировать нерешенное репо из файла sources.list, найденного в каталоге dir / etc / apt /

. После изменения sources.list очистите repo apt-get как

apt-get clean

Затем обновите

apt-get update

Ошибка исчезнет

8
ответ дан 24 July 2018 в 18:03
  • 1
    Это постоянное решение проблемы временного DNS. Если вы забудете изменить его, программное обеспечение из этого репозитория больше не будет обновлено или доступно для установки. – Chai T. Rex 27 January 2018 в 17:04

Принятое решение не работает для меня. Во-первых, только apt-get update предупреждает меня о Temporary failure resolving 'foo.com', но когда я пытаюсь работать с nslookup foo.com или ping foo.com, он отлично работает!

Мое невероятное грязное взлома / исправление для решения этой ошибки , необходимо добавить разрешенные домены вручную в /etc/hosts с помощью этого короткого скрипта:

resolveAptHosts() { mapfile -t hosts < <( sed -n -r '/^#/d; s;deb(-src)? (http://|ftp://)?([^/ ]+).*;\3;p'\ /etc/apt/sources.list | sort | uniq ) # delete all hosts from /etc/hosts, e.g., from an earlier call sudo sed -i -r '/^[0-9]{1,3}(\.[0-9]{1,3}){3}[ \t]+('"$( printf '|%s'\ "${hosts[@]//./\\.}" | sed 's/^|//' )"')[ \t]*$/d' /etc/hosts for host in ${hosts[@]}; do ip=$( nslookup "$host" | sed -n -r 's|Address:[ \t]*([0-9.]+).*|\1|p' | tail -1 ) sudo bash -c "echo $ip $host >> /etc/hosts" done }

Теперь обновление должно работать:

resolveAptHosts && sudo apt-get update

Если кто-нибудь знает, почему это обходное решение работает и как решить эту ошибку на самом деле, я буду вечно благодарен. Я также попытался использовать sudo apt-get update -o Acquire::ForceIPv4=true, чтобы исключить проблемы с разрешением IPv6, но это тоже не помогло.

0
ответ дан 24 July 2018 в 18:03

У меня возникли подобные ошибки при запуске команд apt-get. Оказывается, на консоли была открыта панель обновления программного обеспечения. Это, казалось, блокировало командную строку apt-get, но я не уверен.

0
ответ дан 24 July 2018 в 18:03

Это проблема DNS. Проверьте файл /etc/resolv.conf.

, например, в моем случае, когда у меня была эта проблема & amp; проверил этот файл, файл был пуст! но он должен содержать ваш dns-nameserver

mine:

nameserver 192.168.10.x

192.168.10.x is my gateway ip address

0
ответ дан 24 July 2018 в 18:03
  • 1
    Добро пожаловать в AskUbuntu! Если вы хотите помочь, сделайте более подробный ответ. Я имею в виду, охватывают наиболее возможные сценарии и способы перехода или ссылки на соответствующий учебник. – Danatela 22 July 2013 в 13:19
  • 2
    Не могли бы вы уточнить, что нужно проверить в /etc/resolv.conf? – papukaija 22 July 2013 в 14:01

Иногда, когда вы находитесь за прокси-сервером, даже необходимо, чтобы вы сгенерировали файл apt.conf в /etc/apt/ и заполнили его конкретными записями, например:

Acquire::http::proxy "http://<yourproxyserver>:<Port>"; Acquire::https::proxy "http://<yourproxyserver>:<Port>"; Acquire::ftp::proxy "http://<yourproxyserver>:<Port>";

Если требуется аутентификация, файл конфигурации выглядит так:

Acquire::http::proxy "http://<domain\user>:<password>@<yourproxyserver>:<Port>"; Acquire::https::proxy "http://<domain\user>:<password>@<yourproxyserver>:<Port>"; Acquire::ftp::proxy "http://<domain\user>:<password>@<yourproxyserver>:<Port>";
3
ответ дан 24 July 2018 в 18:03

Другие вопросы по тегам:

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