Pacman ничего не скачивает - Always 404

13

Я хочу установить программное обеспечение на мой Raspberry Pi под управлением Arch Linux, но получаю сообщение об ошибке 404.

Я провел некоторое исследование и обнаружил, что мне нужно сделать pacman -Syyи pacman -Syu...

Когда я бегу pacman -Syyсо всеми включенными зеркалами, я получаю:

# pacman -Syy
:: Synchronizing package databases...
error: failed retrieving file 'core.db' from mirror.aarnet.edu.au : The requested URL returned error: 404 Not Found
error: failed retrieving file 'core.db' from ftp.iinet.net.au : The requested URL returned error: 404 Not Found
error: failed retrieving file 'core.db' from mirror.internode.on.net : The requested URL returned error: 404 Not Found
error: failed retrieving file 'core.db' from mirror.optus.net : The requested URL returned error: 404 Not Found
error: failed retrieving file 'core.db' from mirror.rackcentral.com.au : The requested URL returned error: 404 Not Found
error: failed retrieving file 'core.db' from syd.mirror.rackspace.com : The requested URL returned error: 404 Not Found
error: failed retrieving file 'core.db' from ftp.swin.edu.au : The requested URL returned error: 404 Not Found
error: failed retrieving file 'core.db' from archlinux.mirror.uber.com.au : The requested URL returned error: 404 Not Found
error: failed retrieving file 'core.db' from mirror1.htu.tugraz.at : The requested URL returned error: 404 Not Found
error: failed retrieving file 'core.db' from mirrors.ispros.com.bd : The requested URL returned error: 404 Not Found
error: failed retrieving file 'core.db' from ftp.byfly.by : The requested URL returned error: 404 Not Found
error: failed retrieving file 'core.db' from mirror.datacenter.by : The requested URL returned error: 404 Not Found
error: failed retrieving file 'core.db' from archlinux.cu.be : The requested URL returned error: 404 Not Found
error: failed retrieving file 'core.db' from archlinux.mirror.kangaroot.net : The requested URL returned error: 404 Not Found
error: failed retrieving file 'core.db' from archlinux.c3sl.ufpr.br : The requested URL returned error: 404 Not Found
error: failed retrieving file 'core.db' from www.las.ic.unicamp.br : The requested URL returned error: 404 Not Found`

Я проверил, это говорит это для всего core.dbфайла, на всех зеркалах, и для extra.db, community.dbи aur.db.

Я могу пинговать различные серверы, поэтому у меня есть интернет. Кроме того, я делаю это через SSH в домашней сети.

РЕДАКТИРОВАТЬ: я не использую прокси-сервер.

Если это помогает, я могу использовать, rankmirrorsкоторый загружает список зеркал и раскомментирует некоторые из них для использования, я предполагаю, что это основано на скорости.

Джеймс Талберт
источник
Вы используете какой-либо прокси?
Даниэль Б
Нет, только маршрутизатор, без прокси-сервера, если только мой провайдер не использует его, но лично я - нет.
Джеймс Тэлберт
Можете ли вы открыть веб-страницы в Lynx или ссылки? (Я спрашиваю, потому что pacman и links / lynx используют HTTP, а SSH и ping нет.)
Trav
У меня их нет. Если я наберу либо lynx, либо ссылки в bash, я получу команду not found. Я полагаю, что я использовал бы, pacman -S lynxчтобы получить это, но pacmanне работает.
Джеймс Талберт

Ответы:

5

Попробуйте использовать curl(это часть ядра, поэтому его следует установить), чтобы загрузить файл core.db, используя команду ниже. Это поможет исключить, связана ли ваша проблема с pacmanи / или ее конфигурацией, или ваша проблема связана с вашим подключением к Интернету.

curl -O http://mirror.aarnet.edu.au/pub/archlinux/core/os/x86_64/core.db

Если core.db успешно загружается, откройте его в текстовом редакторе ( nano core.dbили даже less core.db). Если содержимое выглядит аналогично приведенному ниже HTML (в частности, 404 Not Foundгде-то в содержании), то, вероятно, это ваша конфигурация pacman. Я бы скачал последний установочный компакт-диск Arch и переустановил pacman.

<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>404 Not Found</title>
</head><body>
<h1>Not Found</h1>
<p>The requested URL /pub/archlinux/core/os/x86_64/core.db was not foun$
<hr>
<address>Apache/2.2.15 (Red Hat) Server at 127.0.0.1 Port 8080</address>
</body></html>

Если не удается загрузить core.db, это ваше интернет-соединение. Опубликуйте все сообщения об ошибках, которые вы получите, и мы поможем вам устранить неполадки.

Также запустите эту команду

cat /etc/pacman.d/mirrorlist | grep aarnet.edu.au

и убедитесь, что вывод соответствует этому

Server = http://mirror.aarnet.edu.au/pub/archlinux/$repo/os/$arch

Если это не так, загрузите последний список зеркал и раскомментируйте свои зеркала. Вы можете сделать это быстро с помощью этой команды (вам все равно нужно будет открыть ее в текстовом редакторе и раскомментировать строки Server = ...строк).

sudo mv /etc/pacman.d/mirrorlist /etc/pacman.d/mirrorlist~ && curl -o /etc/pacman.d/mirrorlist https://www.archlinux.org/mirrorlist/?country=AU

Если после этого pacman -Syyвсе равно не получается, то, по моему мнению, ваша установка pacman полностью нарушена. Следуйте инструкциям на Arch Wiki, чтобы переустановить pacman .

Дрю Чапин
источник
Это выглядит так:^B▒^▒/^^G▒▒gp^▒;▒Wi?^▒▒*c^?▒?^▒▒▒>^?/^R▒=▒^▒▒Oj^A▒c▒^_▒▒^▒▒▒▒b▒^G▒^▒▒^_b▒▒▒3N
Джеймс Талберт
На самом деле, это длинный файл, но есть ограничение на число символов. Это все выглядит как выше , хотя.
Джеймс Тэлберт
Затем он успешно загрузил файл core.db, и вы убедились, что это не ваше интернет-соединение. Я обновил свой ответ, чтобы включить еще несколько шагов.
Дрю Чапин
3

Для справки: если вы не являетесь пользователем ARM, у вас может быть 32-разрядная версия Arch Linux, но поддержка i686 прекращена.

$ pacman -Syu --debug

Если вы видите i686 в URL репозитория, вам следует перейти на Arch Linux 32 . В основном вы можете использовать его зеркальный список вместо официального.

SzieberthAdam
источник
Вопрос гласит, что это на Raspberry Pi, они работают на ARM.
Джеймс Тэлберт
Спасибо, я пропустил это. Тем не менее, Google связывает этот вопрос с помощью нативного поиска pacman и 404, так что я думаю, что все же стоит оставить его здесь. Я редактирую ответ для уточнения.
SzieberthAdam
2

Используйте зеркальный отражатель

sudo pacman -S reflector 

Установите его и введите:

sudo reflector -l 5 --sort rate --save /etc/pacman.d/mirrorlist
искатель арки
источник
1

Я столкнулся с этой проблемой сегодня с моим новым Raspberry Pi 4.
В моем случае pacman-mirror генерирует URL-адреса, заканчивающиеся на

.../$arch/$repo

но на самом деле это должно быть

.../$repo/$arch

следовательно ошибка 404 во время загрузки.

Карл-Фредрик
источник
или, может быть (как в моем случае) сначала нужно обновить pacman- mirror из-за изменения структуры. Ссылка: ftp.osuosl.org/pub/manjaro-arm/repo/stable/core/aarch64 и выполнить поиск по запросу «mirror-list» затем установите его с sudo pacman -U http://ftp-osl.osuosl.org/pub/manjaro-arm/repo/stable/aarch64/core/pacman-mirrorlist-20200225-1-any.pkg.tar.xz(там может быть более новая версия, если эта ссылка не работает)
Fahl-Design
0

Если вы запускаете Arch внутри VMWare или Virtualbox, проверьте настройки брандмауэра и антивируса основной системы.

Может быть полезно включить общий доступ к подключению к Интернету для систем с такими ограничениями: http://blog.timmattison.com/archives/2011/07/12/how-to-fix-vmware-connectivity-problems-after-install-avast -интернет-безопасность/

Колодин
источник
0

Я столкнулся с этой самой проблемой; я обнаружил, что используемый им сервер имен (OpenNIC) не разрешает URL-адреса в зеркальном списке.

Я отредактировал /etc/resolv.conf, добавил еще один DNS-сервер, который правильно разрешил URL-адреса, и pacman успешно обновился:

GNU nano 2.5.3                          File: /etc/resolv.conf

nameserver 127.0.0.1
nameserver 104.238.153.178
nameserver //add new DNS server here//

Если ваш resolv.conf говорит:

# Generated by resolvconf

Вам нужно изменить /etc/resolvconf.conf, чтобы сделать эти изменения постоянными:

GNU nano 2.5.3                         File: /etc/resolvconf.conf

name_servers=//add new DNS server here//

Мне еще предстоит найти /etc/resolvconfconf.conf или /etc/resolvconfconfconf.conf, поэтому, если проблема заключается в разрешении URL-адресов, об этом должны позаботиться вышеупомянутые шаги. Удачи! :-)

Тимоти Фрай
источник