Server Fault is a question and answer site for system and network administrators. 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 am trying to update my /etc/apt/sources.list on my VPS. As I run apt-get update I get all kinds of 404s not found, for example:

Failed to fetch  404 Not Found
Failed to fetch  404 Not Found [IP: 80]
Failed to fetch  404 Not Found

As I look into, I don't see any information regarding archives. I am inside, but I am a little confused as to how to follow it's instructions/modify the sources list. Here's the contents of the current list:

deb etch ndn
deb etch ksplice
deb etch main non-free contrib
deb etch-backports main
deb etch/volatile main contrib non-free
deb etch/updates main
deb etch main

From what I read on the archive README, I was thinking that the format would be something like this:

deb dists/etch/updates/ main

Also, after commenting out most, if not all of the lines in the sources file, I still get the same errors. Is there a command that needs to be run to clear the cache?

share|improve this question

Etch is now 2 releases beyond the end of life. There is no security support, because it is not being supported.

For the main archive use a line like this.

deb etch main

You should be upgrading to lenny, and then squeeze.

The security updates, backports, multimedia and ksplice archives are probably gone.

share|improve this answer
I'll comment those out (I actually already did). Is there any command that needs to be run afterwards? Because I am still getting the same error messages. Thanks. – amateur barista Aug 6 '12 at 23:48
Run apt-get update after updating your sources. I am sure the line I posted works, at least from my system. – Zoredache Aug 6 '12 at 23:51
Moved accepted to my answer since my answer shows how to resolve the broken packages. I upvoted yours since it because it is useful. – amateur barista Aug 10 '12 at 16:46
up vote 2 down vote accepted

man apt, man apt-cache, and man apt-get provide information regarding package caching maintenance.

After updating the /etc/apt/sources.list file, bear in mind that package information is stored in various places, and that just running apt-get clean or apt-get autoclean will not clear out these fouled packages (you will continue to receive a 404 error for those packages not found). You will need to clear the package cache from:

      Storage area for state information for each package resource specified in
      sources.list(5) Configuration Item: Dir::State::Lists.

If you do ls /var/lib/apt/lists/ you'll see a list of the resources that are causing the 404s.. There might also be package information in /var/lib/apt/lists/partial/. You might need to remove (as in rm foo-bar) those packages that are causing the 404s. Be careful not to remove those that are working.

Then if you cd into /etc/apt you will notice sources.list.d. In my case I just ran sources.list.d/* and that removed all the broken packages (after verifying the contents of sources.list.d/*, of course).

You can run apt-get check, apt-get autoclean, and apt-get update in sequence afterwards and you should come out clean.

If you are in doubt about the naming convention for the packages in the list file, you can always do man sources.list.

share|improve this answer
I had to actually follow the steps above to clear the errors. Hope this helps anyone else that comes across the issue. It took me like an hour to go through all the respective man pages. Also FYI, the mans where far more helpful than Google. – amateur barista Aug 7 '12 at 0:32

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.