Every time a new release of Ubuntu is out, Canonical servers get pounded and the download speed for regular updates as well as new release upgrades falls into the two-digit zone. At that speed, a new release download, which can easily go over 1GB, will take a full day. When Karmic RC was released last week, I couldn't download anything at more than 50KB/s.

No reason to panic though, there are many Ubuntu mirrors out there that are not very well known but can deliver much higher speeds than the overloaded us.archive.ubuntu.com. The full list of mirrors is available on ubuntu.com.

The easiest way

There is a good description of the easiest way at addictivetips.com. It's a perfectly fine method. Be careful about the automatic test that tries to figure out what the fastest mirror is: in my case, the fastest it found was 12000 kms away from where I live.

The manual way

You can also change the settings by hand, you have to edit /etc/apt/sources.list (make sure to create a copy of the original first) and replace every occurrence of us.archive.ubuntu.com by the mirror hostname you chose, optionally followed by a path prefix like "pub". I picked the Argonne National Laboratory mirror and the string I used was "mirror.anl.gov/pub".

So for example you change every occurrence of

deb http://us.archive.ubuntu.com/ubuntu/ karmic main restricted

deb http://mirror.anl.gov/pub/ubuntu/ karmic main restricted

by

At this point you can start the update tool of your choice: aptitude, apt-get, update-manager. All packages will be downloaded from the mirror. When updating a desktop to Karmic from home today, I got a steady download speed of about 320KBytes/s which is the most I can get from my ATT DSL line. And from my workplace I got 3 MBytes/s downloads!

Be aware that mirrors can sometimes be lagging and when that happens you may not get your updates exactly at the same time they are published on Canonical servers.

You can check the "freshness" of the mirror by downloading the SYNC_STAMP.txt file. For example: http://mirror.anl.gov/pub/ubuntu/SYNC_STAMP.txt

Happy Karmic upgrade!