Вопрос или проблема
Я пытался обновить свою подсистему Linux в Windows, но она постоянно вылетает из-за сбоя подключения. Я могу выполнить ping до серверов и даже открыть их из своего браузера, поэтому предполагаю, что ни подключение, ни потенциальная блокировка порта 80 не являются причиной этого. Я пытался это сделать и с других сетей, так что это точно не может быть файрволом. На данном этапе я предполагаю, что это антивирус, но хочу избежать его отключения только для установки. Не обязательно потому, что я считаю это небезопасным, а главным образом потому, что уверен, что администратор как-то это узнает, а объяснения я действительно хочу избежать. Есть хорошие предложения?
Кстати, я попробовал это не только с локальными серверами. Основные серверы также приводят к той же проблеме, поэтому изменение адреса не кажется очень полезным в этой ситуации.
Ign:1 http://us.security.ubuntu.com/ubuntu jammy-security InRelease
Ign:2 http://us.archive.ubuntu.com/ubuntu jammy InRelease
Ign:3 http://us.archive.ubuntu.com/ubuntu jammy-updates InRelease
Ign:4 http://us.archive.ubuntu.com/ubuntu jammy-backports InRelease
Err:1 http://us.security.ubuntu.com/ubuntu jammy-security InRelease
Не удалось разрешить 'us.security.ubuntu.com'
Err:2 http://us.archive.ubuntu.com/ubuntu jammy InRelease
Сбой подключения [IP: 91.189.91.38 80]
Err:3 http://us.archive.ubuntu.com/ubuntu jammy-updates InRelease
Сбой подключения [IP: 91.189.91.39 80]
Err:4 http://us.archive.ubuntu.com/ubuntu jammy-backports InRelease
Сбой подключения [IP: 91.189.91.38 80]
доменное имя us.security.ubuntu.com не разрешается, возможно, сервер не работает или проблема с DNS
Я проверил это с помощью dnswatch
https://www.dnswatch.info/dns/dnslookup?la=en&host=us.security.ubuntu.com&type=A&submit=Resolve
для us.archive.ubuntu.com ответ нормальный, проверьте результат:
https://www.dnswatch.info/dns/dnslookup?la=en&host=us.archive.ubuntu.com&type=A&submit=Resolve
попробуйте изменить зеркало через GUI
Откройте приложение “Программы и обновления”, затем нажмите на выпадающий список “Загрузить из”…
Лично прокрутите список и выберите свое предпочтительное зеркало, или просто нажмите кнопку “Выбрать лучший сервер”, чтобы Ubuntu сделала это за вас.
следуйте также этой статье
попробуйте очистить кэш apt
sudo apt clean && sudo apt autoclean
; <<>> DiG 9.16.1-Ubuntu <<>> us.security.ubuntu.com +all
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 53995
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;us.security.ubuntu.com. IN A
;; Query time: 10 msec
;; SERVER: 172.24.208.1#53(172.24.208.1)
;; WHEN: Mon Jun 27 05:11:04 CEST 2022
;; MSG SIZE rcvd: 51
Похоже, что нигде не разрешается
Для сравнения тот, который работает:
; <<>> DiG 9.16.1-Ubuntu <<>> us.archive.ubuntu.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 47494
;; flags: qr rd ad; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 0
;; WARNING: recursion requested but not available
;; QUESTION SECTION:
;us.archive.ubuntu.com. IN A
;; ANSWER SECTION:
us.archive.ubuntu.com. 0 IN A 91.189.91.38
us.archive.ubuntu.com. 0 IN A 91.189.91.39
;; Query time: 90 msec
;; SERVER: 172.24.208.1#53(172.24.208.1)
;; WHEN: Mon Jun 27 05:16:04 CEST 2022
;; MSG SIZE rcvd: 92
Я бы пока закомментировал нерабочее зеркало в вашем sources.list.
Ответ или решение
Если у вас возникли проблемы с обновлением Ubuntu 22.04 через apt-get из-за невозможности получения обновлений, давайте рассмотрим вероятные причины и их решения.
Теория
Когда вы используете команду apt-get update
, система пытается получить актуальную информацию о доступных пакетах с серверов Ubuntu. Для этого требуется стабильное сетевое соединение и корректные DNS-настройки. Однако в вашем случае мы видим несколько ошибок:
- Ign (Ignore): Это означает, что сервер возвращает статус, который позволяет игнорировать проблему, обычно связанное с временными трудностями до получения основного ответа.
- Err (Error): Указывает на более серьезные проблемы, связанные с невозможностью установить соединение или с проблемами разрешения DNS.
Основные причины, по которым это может происходить:
- Неправильная конфигурация DNS.
- Проблемы с конкретными зеркалами на серверах Ubuntu.
- Антивирусное ПО или сетевые ограничения на уровне операционной системы.
Пример
На основании кода ошибки, представленного вами, видим следующее:
Err:1 http://us.security.ubuntu.com/ubuntu jammy-security InRelease
Could not resolve 'us.security.ubuntu.com'
Err:2 http://us.archive.ubuntu.com/ubuntu jammy InRelease
Connection failed [IP: 91.189.91.38 80]
Это говорит о проблемах с разрешением имени хоста и о неудавшейся попытке подключения к IP-адресу сервера. Расшифровка DiG запроса показывает неудачную попытку разрешения DNS для домена us.security.ubuntu.com
.
Применение
-
Проверка конфигурации DNS:
- Убедитесь, что ваша система использует корректные DNS-сервера. Вы можете изменить DNS-серверы на общедоступные, такие как Google DNS (8.8.8.8 и 8.8.4.4) или Cloudflare (1.1.1.1).
echo "nameserver 8.8.8.8" | sudo tee /etc/resolv.conf > /dev/null echo "nameserver 1.1.1.1" | sudo tee -a /etc/resolv.conf > /dev/null
-
Изменение зеркала репозитория:
- Воспользуйтесь утилитой “Software & Updates” в графическом интерфейсе, чтобы изменить зеркало, с которого система скачивает обновления. Выберите "Select Best Server", чтобы авторитетная утилита определила наиболее быстрый сервер автоматическим методом.
-
Отключение неработающих зеркал:
- Если известно, что определенные зеркала не работают, временно закомментируйте их в файле
/etc/apt/sources.list
:
sudo nano /etc/apt/sources.list
Найдите строки, содержащие
us.security.ubuntu.com
и закомментируйте их, добавив#
в начале строки. - Если известно, что определенные зеркала не работают, временно закомментируйте их в файле
-
Очистка кеша APT:
- Попробуйте очистить кеш APT, чтобы устранить возможно поврежденные или устаревшие кэши.
sudo apt clean && sudo apt autoclean
-
Проверка сетевых ограничений:
- Даже если вы не хотите отключать антивирус, проверьте его журнал активности или правила сети на предмет того, блокируется ли доступ к определенным портам или адресам. Возможно, ваш администратор должен настроить исключение для этих доменов.
-
Мониторинг с помощью
ping
иtraceroute
:- Убедитесь, что вы можете пинговать указанные IP-адреса и просмотром что происходит с пакетами данных, запуская
traceroute
для выявления точки отказа.
ping us.archive.ubuntu.com traceroute us.archive.ubuntu.com
- Убедитесь, что вы можете пинговать указанные IP-адреса и просмотром что происходит с пакетами данных, запуская
Заключение
Решение проблемы с невозможностью получения обновлений в Ubuntu 22.04 требует внимание к сетевым и системным настройкам. Следуя вышеуказанным шагам, вы должны быть в состоянии исправить этот сбой. Однако, если проблема сохраняется, рекомендуется проверить системные журналы, в частности /var/log/syslog
, и рассмотреть возможность использования другой системы DNS для обнаружения возможных сбоев.