Comment 5 for bug 147080

Revision history for this message
Kelly Collard (kjcollard) wrote :

I have found another workaround for this problem. I didn't really want to patch all of the servers i manage so I could use our local ubuntu mirror. I used apt-mirror to mirror several ubuntu distros.

I then set up 2 additional zones in our dns server so that "archive.ubuntu.com" and "security.ubuntu.com" would actually go to our local mirror. That way when do-release-upgrade disables the third party mirror it will actually still be using our local mirror. The added benefit of doing this is that i don't even have to touch /etc/apt/sources.list in all of our servers because the default settings will reach the local mirror.

Also I had to add the the real IP addresses for those 2 zones to /etc/hosts on the mirror server so it wont do a dns lookup and loop back to itself for apt-mirror updates.

One other problem i found was that the do-release upgrade looks for several files that apt mirror isn't getting.

If you try this method you'll get this error.

do-release-upgrade
Checking for a new ubuntu release
Failed Upgrade tool signature
Done Upgrade tool
Done downloading
extracting '/tmp/tmpA-amtI/gutsy.tar.gz'
extraction failed

you need to get this directory and all the files inside and put it on your mirror as well.

http://archive.ubuntu.com/ubuntu/dists/hardy-proposed/main/dist-upgrader-all/

The above is for hardy but the same is true for gusty and feisty.

After i did that i was able to use the do-release-upgrade without patching and without changing the configs on all my servers.
If you only have a few servers you can just modify your /etc/hosts file and add those two zones and use the local ip address for your mirror and the same effect will happen. /etc/hosts will be used before the dns lookup.