356

Getting below error message while issuing :

sudo apt-get update

Get:1 http://us.archive.ubuntu.com/ubuntu xenial InRelease [95.8 kB] Ign:2 http://repo.mongodb.org/apt/debian wheezy/mongodb-org/3.2 InRelease
Ign:3 http://dl.google.com/linux/chrome/deb stable InRelease
Hit:4 http://ppa.launchpad.net/canonical-x/vulkan/ubuntu xenial InRelease
Hit:5 http://repo.mongodb.org/apt/debian wheezy/mongodb-org/3.2 Release
Hit:6 http://us.archive.ubuntu.com/ubuntu xenial-security InRelease
Ign:7 http://dl.google.com/linux/talkplugin/deb stable InRelease
Hit:8 http://us.archive.ubuntu.com/ubuntu xenial-updates InRelease
Ign:9 http://linux.dropbox.com/ubuntu wily InRelease
Hit:10 http://ppa.launchpad.net/numix/ppa/ubuntu xenial InRelease
Get:12 http://dl.google.com/linux/chrome/deb stable Release [782 B]
Hit:13 http://dl.google.com/linux/talkplugin/deb stable Release
Ign:14 https://apt.dockerproject.org/repo ubuntu-wily InRelease
Hit:15 https://apt.dockerproject.org/repo ubuntu-wily Release
Get:16 http://dl.google.com/linux/chrome/deb stable Release.gpg [181 B]
Hit:17 http://linux.dropbox.com/ubuntu wily Release
Get:20 http://dl.google.com/linux/chrome/deb stable/main amd64 Packages [1,191 B] Fetched 98.0 kB in 0s (118 kB/s)
Reading package lists... Done N: Skipping acquire of configured file 'main/binary-i386/Packages' as repository 'http://dl.google.com/linux/chrome/deb stable InRelease' doesn't support architecture 'i386'

This cuts across various releases of ubuntu

Also seeing a similar glitch after enabling Ubuntu pro on my 22.04 ... now shows

sudo apt-get update
... 
Reading package lists... Done
N: Skipping acquire of configured file 'main/binary-i386/Packages' as repository 'https://esm.ubuntu.com/realtime/ubuntu jammy InRelease' doesn't support architecture 'i386'

9 Answers9

569

I tracked down offending repo (any for Google chrome in this dir)

cd /etc/apt/sources.list.d
grep chrome * | grep -v amd64

or more generally

grep -r google  /etc/apt | grep -v amd64 

Now do same as below for each repo file which matches above

cat /etc/apt/sources.list.d/google-chrome-unstable.list

THIS FILE IS AUTOMATICALLY CONFIGURED

You may comment out this entry, but any other modifications may be lost.

deb http://dl.google.com/linux/chrome/deb/ stable main

SOLUTION : limit to just 64 bit by introducing the [arch=amd64]

deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main

similar solution to fixing bug when upgrading to Ubuntu pro

cat /etc/apt/sources.list.d/ubuntu-realtime-kernel.list  
#  original bad ... comment out next line
deb https://esm.ubuntu.com/realtime/ubuntu jammy main
#  fixed by adding [arch=amd64] to above line as per
deb [arch=amd64] https://esm.ubuntu.com/realtime/ubuntu jammy main

NOTE : If you are trying to apply this solution for another package which as a .list file containing a line similar to this :

deb [signed-by=/usr/share/keyrings/cloudflare-main.gpg] https://pkg.cloudflare.com/cloudflared jammy main

The solution is to add the architecture flag inside the square brackets, separated from the other arguments with a space. Here is an example :

deb [arch=amd64 signed-by=/usr/share/keyrings/cloudflare-main.gpg] https://pkg.cloudflare.com/cloudflared jammy main

ROOT CAUSE : Google dropped support for 32-bit Chrome on Linux triggering an error when updating apt in 64-bit systems (with multi arch enabled) ... details here : http://www.omgubuntu.co.uk/2016/03/fix-failed-to-fetch-google-chrome-apt-error-ubuntu

To confirm you are using 64 bit ubuntu with multiarch enabled issue

dpkg --print-foreign-architectures

if it says

i386

then you have added 32 bit support, this will list your native arch ... issue

dpkg --print-architecture 

if you are native 64 you will see this output so do SOLUTION shown above

amd64

issue below to show packages using 32 bit

dpkg --get-selections | grep 386 

Here is the command to remove multi architecture ( only if you have no 32 bit applications )

sudo dpkg --remove-architecture i386
51

Note that the above answers give accurate solutions for the ONE-LINE-STYLE format .list files; however, the verbose DEB822-STYLE FORMAT needs to use the full Architectures option instead of the abbreviated arch option to restrict the repo's packages to your desired architecture.

For example:

# /etc/apt/sources.list.d/apache-arrow.sources

Types: deb deb-src URIs: https://apache.jfrog.io/artifactory/arrow/ubuntu/ Suites: focal Components: main Signed-By: /usr/share/keyrings/apache-arrow-apt-source.gpg Architectures: amd64

Details on this option and others can be found with man sources.list

bain
  • 12,200
David Bodow
  • 611
  • 5
  • 4
43

(this solution is for Ubuntu Bionic Beaver)
First, shame on Google for letting this issue linger so long!!

Here's how to fix it:
As already mentioned above, editing files in /etc/apt/sources.list.d seems to work... but only temporarily. The next day, the problem is back.

Here's why:

The file /etc/cron.daily/google-earth-pro runs daily and overwrites what you have in /etc/apt/sources.list.d/google-earth-pro.list.

To fix it once and for all, edit /etc/cron.daily/google-earth-pro.
Find this line:

REPOCONFIG="deb http://dl.google.com/linux/earth/deb/ stable main"

...and change it to:

REPOCONFIG="deb [arch=amd64] http://dl.google.com/linux/earth/deb/ stable main"
zx485
  • 2,865
Eric Mintz
  • 2,536
27

Changing

deb http://dl.google.com/linux/chrome/deb/ stable main

to

deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main

in each of

  • /etc/apt/sources.list.d/google-musicmanager.list
  • /etc/apt/sources.list.d/google-musicmanager.list.save
  • /etc/apt/sources.list.d/google-musicmanager.list.distUpgrade

seems to fix the issue for Google Music Manager for Play Music too. Not sure if it will revert these changes at some point as the files are automatically configured.

David Foerster
  • 36,890
  • 56
  • 97
  • 151
Mr Angry
  • 371
8

Although Google has fixed this issue for Chrome, it still appears for e.g. Google Earth.

Adding [arch=amd64] fixes the issue, but it needs to be added over and over again.

After making the file immutable as proposed by a webupd8 article and running into issues because of that, my current solution is to add a cronjob to apply the fix automatically once every hour:

~$ sudo crontab -e

0 * * * * sed -i 's/^deb http/deb [arch=amd64] http/' /etc/apt/sources.list.d/google-earth.list

(Replace google-earth.list if necessary).

pLumo
  • 27,991
4

Though this question has been marked solved, I was unable to solve this issue with any of the above answers. I used an another method. Go to 'software & updates' > ubuntu software > download from > select best server. Now wait for some time for the system to find it out. Once this gets done, try your command again. This worked for me.

4

I add my 2 cent. Sorry If I have a Debian 10 and not an Ubuntu, but my answer is in-topic.

I had the same problem due to mariadb repo. It was added to sources.list as

deb [arch=amd64,i386,ppc64el] http://ftp.nluug.nl/db/mariadb/repo/10.3/debian buster main

I simply removed i386 and ppc64el

deb [arch=amd64] http://ftp.nluug.nl/db/mariadb/repo/10.3/debian buster main
realtebo
  • 399
2

Even if this question is marked solved, for me, on Ubuntu 18.04, changed a line in /etc/apt/sources.list from deb http://dl.google.com/linux/chrome/deb/ stable main to deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main.

There was no file named /etc/apt/sources.list.d/google-chrome-unstable.list. Making the same changes in /etc/apt/sources.list.d/google-chrome.list gave warnings saying that target package is configured multiple times. (in sources.list and google-chrome.list)

2

Change my source list

deb https://download.mono-project.com/repo/ubuntu stable-focal main

to

deb [arch=amd64] https://download.mono-project.com/repo/ubuntu stable-focal main