16.04 apt pdate error: arm64 Packages not found

While trying to update on my Ubuntu 16.04 system I get the following errors:

E: Failed to fetch http://de.archive.ubuntu.com/ubuntu/dists/xenial/main/binary-arm64/Packages  404  Not Found [IP: 141.30.62.24 80]
E: Failed to fetch http://de.archive.ubuntu.com/ubuntu/dists/xenial-updates/main/binary-arm64/Packages  404  Not Found [IP: 141.30.62.24 80]
E: Failed to fetch http://security.ubuntu.com/ubuntu/dists/xenial-security/main/binary-arm64/Packages  404  Not Found [IP: 2001:67c:1360:8001::17 80]
E: Failed to fetch http://de.archive.ubuntu.com/ubuntu/dists/xenial-backports/main/binary-arm64/Packages  404  Not Found [IP: 141.30.62.24 80]
E: Some index files failed to download. They have been ignored, or old ones used instead.

I tried the solutions suggested here: 16.04 Upgrade: Failed to fetch Empty files can't be valid archives

but none of them worked for me. I've had this problem for a while now. My architecture is

amd64

Foreign archs are

i386
arm64

I cannot simply remove the ARM architecture because it is needed for the NVidia SDK I'm developing with.

Any help would be appreciated!


Solution 1:

Ok so I figured out both what's the problem (thanks to you guys) and how to solve it:

The problem was that the NVidia Driveworks SKD seems to mess with apt, as in that apt tries to look for updates on the ARM architecture as well and there is no such path in the predefined package path (thanks, @guiverc). Since I can't remove the architecture because I need it for development, I changed the /etc/apt/sources.list file by adding [arch=amd64,i386] where necessary. Example:

deb [arch=amd64,i386] http://archive.ubuntu.com/ubuntu xenial universe main restricted multiverse

Apt is then only looking for updates on those two architectures. This solved the problem.

Solution 2:

You say your architecture is amd64, so I suggest you to find in the file /etc/apt/sources.list and all the files inside /etc/apt/sources.list.d that are not downloading properly and add [arch=amd64].

For example, change

deb http://de.archive.ubuntu.com/ubuntu/ xenial main

URL into

deb [arch=amd64] http://de.archive.ubuntu.com/ubuntu/ xenial main

Before editing, make a backup of these files. Once edited, try to update again your system.

Be careful. I never had to do this but if you save backups, it can't hurt.