Я пытаюсь загрузить экземпляр Ubuntu, к которому я почти не касался почти год, но у меня возникают проблемы при попытке запустить sudo apt-get update, чтобы установить отсутствующие драйверы, необходимые для получения драйверов необходимо включить login.
(В настоящий момент Unity сбой при входе в систему после запуска безопасного режима и обычного запуска из-за отсутствия драйверов для вновь установленной карты Nvidia и не может обнаружить беспроводную карту, как из которых, я считаю, должно быть разрешено путем запуска sudo apt-get update или подобных команд.)
Однако, когда я пытаюсь выполнить любую команду apt-get, я получаю кучу Temporary failure resolving 'update.repo.host', включая каноническую repos us.archive.ubuntu.com и security.ubuntu.com.
Я попробовал следующее из корневой оболочки в безопасном режиме, чтобы разрешить:
Проверено, что мои сетевые устройства были обнаружены Ubunturoot@host:~# lspci -vnn | grep Net -A2
04:00.0 Ethernet controller [0200] : Intel Corporation I211 Gigabit Network Connection [8086:1539] (rev 03)
Subsystem: ASUSTeK Computer Inc. I211 Gigabit Network Connection [1043:85f0]
Flags: bus master, fast devsel, latency 0, IRQ 24
Memory at f7600000 (32-bit, non-prefetchable) [size=128K]
--
07:00.0 Network controller [0280] : Broadcom Corporation BCM4360 802.11ac Wireless Network Adapter [14e4:43a0] (rev 03)
Subsystem: Broadcom Corporation BCM4360 802.11ac Wireless Network Adapter [14e4:0619]
Flags: bus master, fast devsel, latency 0, IRQ 40
Memory at f7400000 (64-bit, non-prefetchable) [size=32K]
Двойной проверено, что его подхватили ifconfig -a (Примечание: я знаю, что 16.04 изменили сетевые имена по умолчанию, такие как eth0, и что добавление символической ссылки в /dev/null в /etc/systemd/network не изменение схема именования) root@host:~# ifconfig -a
enp4s0 Link encap:Ethernet HWaddr 60:45:cb:9c:4c:aa
inet addr:192.168.42.131 Bcast:192.168.42.255 Mask:255.255.255.0
inet6 addr: fe80::6245:cbff:fe9c:4caa/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:594 errors:0 dropped:0 overruns:0 carrier:0
TX packets:16 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:41246 (41.2 KB) TX bytes:1284 (1.2 KB)
Memory:f7600000-f761ffff
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:65536 Metric:1
RX packets:376 errors:0 dropped:0 overruns:0 frame:0
TX packets:376 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1
RX bytes:30312 (30.3 KB) TX bytes:30312 (30.3 KB)
Двойной флажок /etc/network/interfaces, затем побежал ifdown enp4s0 && ifup enp4s0 (который после завершения возвращает нереалистичное время продления ~ 10 часов или около того) root@host:~# cat /etc/network/interfaces
auto enp4s0
iface enp4s0 inet dhcp
dns-nameservers 8.8.8.8 8.8.4.4 1.1.1.1
auto lo
iface lo inet loopback
root@host:~# ifdown enp4s0 && ifup enp4s0
Killed old client process
Internet Systems Consortium DHCP Client 4.3.3
...
Listening on LPF/enp4s0/60:45:cb:9c:4c:aa
Sending on LPF/enp4s0/60:45:cb:9c:4c:aa
Sending on Socket/fallback
DHCPRELEASE on enp4s0 to 192.168.42.1 port 67 (xid=0x4b9a51de)
Internet Systems Consortium DHCP Client 4.3.3
...
Listening on LPF/enp4s0/60:45:cb:9c:4c:aa
Sending on LPF/enp4s0/60:45:cb:9c:4c:aa
Sending on Socket/fallback
DHCPDISCOVER on enp4s0 to 255.255.255.255 port 67 interval 3 (xid=0x4b9a51de)
DHCPDISCOVER on enp4s0 to 255.255.255.255 port 67 interval 8 (xid=0x4b9a51de)
DHCPDISCOVER on enp4s0 to 255.255.255.255 port 67 interval 16 (xid=0x4b9a51de)
DHCPREQUEST of 192.168.42.131 on enp4s0 to 255.255.255.255 port 67 (xid=0x4b9a51de)
DHCPOFFER of 192.168.42.131 from 192.168.42.1
DHCPPACK of 192.168.42.131 from of 192.168.42.1
bound to 192.168.42.131 -- renewal in 39359 seconds.
root@host:~# lspci -vnn | grep Net -A2
04:00.0 Ethernet controller [0200] : Intel Corporation I211 Gigabit Network Connection [8086:1539] (rev 03)
Subsystem: ASUSTeK Computer Inc. I211 Gigabit Network Connection [1043:85f0]
Flags: bus master, fast devsel, latency 0, IRQ 24
Memory at f7600000 (32-bit, non-prefetchable) [size=128K]
--
07:00.0 Network controller [0280] : Broadcom Corporation BCM4360 802.11ac Wireless Network Adapter [14e4:43a0] (rev 03)
Subsystem: Broadcom Corporation BCM4360 802.11ac Wireless Network Adapter [14e4:0619]
Flags: bus master, fast devsel, latency 0, IRQ 40
Memory at f7400000 (64-bit, non-prefetchable) [size=32K]
Проверено, что мои сетевые устройства были обнаружены Ubuntu
Дважды проверено, что его подхватили ifconfig -a (Примечание: я знаю, что 16.04 изменили сетевые имена по умолчанию, такие как eth0, и что добавление символической ссылки на /dev/null в /etc/systemd/network не изменило схему именования )root@host:~# ifconfig -a
enp4s0 Link encap:Ethernet HWaddr 60:45:cb:9c:4c:aa
inet addr:192.168.42.131 Bcast:192.168.42.255 Mask:255.255.255.0
inet6 addr: fe80::6245:cbff:fe9c:4caa/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:594 errors:0 dropped:0 overruns:0 carrier:0
TX packets:16 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:41246 (41.2 KB) TX bytes:1284 (1.2 KB)
Memory:f7600000-f761ffff
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:65536 Metric:1
RX packets:376 errors:0 dropped:0 overruns:0 frame:0
TX packets:376 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1
RX bytes:30312 (30.3 KB) TX bytes:30312 (30.3 KB)
Двойной проверено, что он подхватил ifconfig -a (Примечание: я знаю, что 16.04 изменили сетевые имена по умолчанию, такие как eth0, и добавили символическую ссылку на /dev/null в /etc/systemd/network не изменил схему именования)
[FAILED] Failed to start Raise network interfaces.
See 'systemctl status networking.service' for details
Система подключена к модему через Ethernet-кабель (т. е. он использует канонически интерфейс eth0 для подключения к Интернету).
root@host:~# systemctl status networking.service
· networking.service - Raise network interfaces
Loaded: loaded (/lib/systemd/system.networking.service; enabled; vendor preset: enabled)
Drop-In: /run/systemd/generator/networking.service.d
└─50-insserv.conf-$network.conf
Active: inactive (dead)
Docs: man:interfaces(5)
На ваш вопрос две части:
Вероятно, эта проблема: либо
Давайте посмотрим на возможные проблемы разрешения 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 сервер.
Еще один пример DNS-сервера, который вы можете использовать, - OpenDNS - например:
echo "nameserver 208.67.222.222" | sudo tee /etc/resolvconf/resolv.conf.d/base > /dev/null
В дополнение к проблемам временного разрешения - у вас есть несколько проблем управления пакетами, которые необходимо исправить - m, предположив, что вы недавно попытались перейти с одной версии Ubuntu на следующую рекомендованную версию - в вашем случае от Natty (11.04) до 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
У вас не должно быть больше ошибок в присвоении имен.
На момент написания этого сообщения возможно комманда на именах релиза включают lucid
, maverick
, natty
, oneiric
, precise
, quantal
, raring
, saucy
, trusty
, utopic
и vivid
.
Обратите внимание, что этот ответ был написан для старых версий 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
.)
traceroute -n 8.8.8.8
и посмотрите, где он остановится: если вы находитесь в своем доме / офисе, проверьте сетевое оборудование. Если вы можете связаться со своим интернет-провайдером, обратитесь к ним. /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. ping 8.8.8.8 -c3
пинг только 3
раз, тогда вам не нужно Ctrl + C. Вы можете использовать любое число в параметре, например -c5
, -c1
, -c100
и т. Д.
– Arda
6 November 2014 в 00:58
/etc/resolv.conf
, который имеет значение, - это тот, на котором вы находитесь. Но в современных системах он просто указывает на локальную машину, и если у вас проблемы с DNS, вы должны работать с D-Bus и NetworkManager.
– Gilles
8 March 2018 в 11:41
Для тех, кто использует EC2, не забудьте проверить, что ваши параметры группы безопасности позволяют исходящие подключения к веб-сайтам, которые вы обновляете. Вы можете установить все исходящие исходящие настройки трафика и посмотреть, работает ли он.
Вы можете прокомментировать нерешенное репо из файла sources.list, найденного в каталоге dir / etc / apt /
. После изменения sources.list очистите repo apt-get как
apt-get clean
Затем обновить
apt-get update
Ошибка исчезнет
Принятое решение не работает для меня. Во-первых, только 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, но это тоже не помогло.
У меня возникли подобные ошибки при запуске команд apt-get
. Оказывается, на консоли была открыта панель обновления программного обеспечения. Это, казалось, блокировало командную строку apt-get
, но я не уверен.
Это проблема DNS. Проверьте файл /etc/resolv.conf
.
, например, в моем случае, когда у меня была эта проблема & amp; проверил этот файл, файл был пуст! но он должен содержать ваш dns-nameserver
mine:
nameserver 192.168.10.x
192.168.10.x is my gateway ip address
Иногда, когда вы находитесь за прокси-сервером, даже необходимо, чтобы вы сгенерировали файл 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>";