Ask Ubuntu is a question and answer site for Ubuntu users and developers. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I have looked at similar questions:

Stuck at 0% [waiting for headers] (apt)

apt-get update stuck on "Waiting for Headers"

However neither one of them answer my problem.

I am running 12.04 AMD64 and have recently started getting an issue that when I update my repos from my connection at home through a terminal, using sudo apt-get update, it takes forever (literally after 2 hours it was at 28%), however when I run from a different location it takes less than 5 minutes to complete.

I have attempted changing which mirror I use but that does not solve the issue. I have also cut down what is in my sources list but this also makes no difference. There are no faults on my ADSL line as I have already contacted my ISP to check this. It also makes no difference if I use a WiFi or network cable connection.

What could be my issue?

A speed test ( comes out at about 0.9 Mbps down and 0.42 Mbps up (which is a shade under the advertised line speed), I reside in South Africa and use the UCT LEG server. But I have also tried the other mirrors available in SA....none of them make a difference.

share|improve this question
Please report results from, and tell us your country of residence. – izx Jun 27 '12 at 10:26

This sounds like it may be an issue with third party repos. I know Google's repo takes several minutes to respond here sometimes. If you have third party repos set up, open Update Manager, click Settings, then the "Other Software" tab. Uncheck all checkboxes, then hit close.

Update Manager Update Manager - Other Software

Now, fire up a terminal and use the following command and see if it is any better with the following command:

sudo apt-get update

If it is better, go back and enable each repo and recheck one by one until you find the problem repo.

If that does not work, you can have the update manager select the best main repos to use automatically. To do that, open Update Manager, then click Settings. Select the Ubuntu Software tab, then in the "Download from:" dropdown, select Other...

Update Manager - Ubuntu Software Tab

Now, in the window that pops up, click "Select Best Server"

Update Manager - Choose a Download Server

It will then perform several tests to select the best server for you. Once it is completed, just click Choose Server.

Update Manager - Choose a Download Server

Now, fire up the terminal and check again.

share|improve this answer
thank you very much this helped me a lot – l--''''''---------'''''''''''' Jul 11 '13 at 18:16
+1 for that informative answer :) – mojo706 Sep 6 '13 at 9:18
For me help set it to "Main server". – Bruno Garett Nov 23 '14 at 23:11
"choose the best server" method helped me. Thank you – kommradHomer Dec 18 '15 at 10:39

I found a solution which helped me here:

You can let apt-get to regenerate lists cache using:

sudo apt-get clean
cd /var/lib/apt
sudo mv lists lists.old
sudo mkdir -p lists/partial
sudo apt-get clean
sudo apt-get update 
share|improve this answer

This is mostly because of "MTU size", been having this issue for a while and after some deep inspection i have found out that my isp has an mtu size of 1440 while the default for eth interface is 1500.

to know the max mtu size please see here.

to set your mtu packet size you can either use the network connection option from the network icon or use terminal as in this link.

share|improve this answer
Your first and second links are both coded to point to the second site. I found the information at the site to be descriptive and helpful. Unfortunately the information at the site may be a bit outdated, and (at least here) doesn't address the problem very well. – Tommy Trussell Feb 10 '15 at 7:20

If you have synaptic installed, try to trigger apt-get update within synaptic by clicking on "Reload". Of course, it will also hang but when you abort it, it will print the name of the repository were it stopped, for example:

Failed to fetch  
Some index files failed to download. They have been ignored, or old ones used instead.

Temporarily disabling the repositories reported there should fix the problem. In synaptic, you can disable them under "Settings -> Other Software".

share|improve this answer

Found this apt-get update stuck on "Waiting for Headers" very insightful.

You may want to try installing and running netselect, and copying the generated sources.list to /etc/apt/sources.list

Hope this helps.

share|improve this answer
Welcome to Ask Ubuntu! Whilst this may theoretically answer the question, it would be preferable to include the essential parts of the answer here, and provide the link for reference. – user98085 Jan 18 '13 at 18:27

I've encountered this problem on somebody else's laptop which I was asked to upgrade. After an hour of head scratching, the inspection of /etc/environment revealed that there was anon-proxy installed on the system. Removing it fixed the problem.

So, check your proxy settings in /etc/environment

share|improve this answer

Sometimes, all you need to do is just switch to the main server for updates. Updates, depending on your geographical area, sometimes don't come from the main servers for faster deliveries.

For whatever reasons, the relay servers might not be responding as quick as possible to certain requests, so temporarily switching to Main Server for updates should fix it.

When you open your Software and Updates, select "Main Server" from the Download From option.

You should be good to go. Switching to main server always works for me. :)

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.