Pacman doesn't download anything - Always 404

Try using curl (it's part of the core, so should be installed) to download the core.db file using the command below. This will help rule out whether your problem is related to pacman and/or its configuration, or whether your problem is related to your Internet connection.

curl -O

If core.db successfully downloads, open it in a text editor (nano core.db or even less core.db). If the contents look similar to this HTML below (specifically saying 404 Not Found somewhere in the contents), then it's probably your pacman configuration. I would download the latest Arch Installation CD and re-install pacman from that.

<title>404 Not Found</title>
<h1>Not Found</h1>
<p>The requested URL /pub/archlinux/core/os/x86_64/core.db was not foun$
<address>Apache/2.2.15 (Red Hat) Server at Port 8080</address>

If core.db fails to download, then it's your Internet connection. Post any error messages you receive and we can help you further troubleshoot.

Also, run this command command

cat /etc/pacman.d/mirrorlist | grep

and verify the output matches this

Server =$repo/os/$arch

If it does not, download the latest mirror list and uncomment your mirrors. You can do this quickly using this command (you'll still need to open it in a text editor and uncomment the lines Server = ... lines).

sudo mv /etc/pacman.d/mirrorlist /etc/pacman.d/mirrorlist~ && curl -o /etc/pacman.d/mirrorlist

If after doing this, pacman -Syy still fails, then it's my opinion your installation of pacman is completely broken. Follow the instructions on the Arch Wiki to re-install pacman.

Use mirror reflector

sudo pacman -S reflector 

Install it and type:

sudo reflector -l 5 --sort rate --save /etc/pacman.d/mirrorlist

For the record, if you are not an ARM user, you may have a 32 bit Arch Linux, but the i686 support ended.

$ pacman -Syu --debug

If you see i686 in the repo URLs, then you should switch to Arch Linux 32. Basically you can use its mirrorlist instead of the official one.