Take the 2-minute tour ×
Ask Ubuntu is a question and answer site for Ubuntu users and developers. It's 100% free, no registration required.

Most of the time when I update my system, Update Manager downloads whole packages from the list. Even if the package only changes in a few lines. What I mean is, for a 4MB package that has only for example 2KB lines changed, Update Manager downloads the whole 4MB. With my connection this is horrible since it takes very long (Remember I download between 10KB to 50KB most of the time). Since there are several big packages, we could be talking between 2KB changes separated in 100MB of packages that I would have to download from scratch even though I had already downloaded them 24 hours ago for example.

So why does a Cache Manager need to download the complete package again when all that has changed is one small part. More importantly, is there a way that I can tell it to verify the source package to see what has changed and securely download only the modified part?

I will add that this is apt-get, aptitude and synaptic also. All of them work the same way and when a 50 line of the package changes, I have to download the whole thing. Is there a more efficient way of updating, a configuration, a parameter?

share|improve this question
    
My guess would be that integrity checking is done per package/bundle, not per item inside. After all this is a package management system. Nice question, though. Would be good to find the reasoning behind that decision, but I suppose Ubuntu merely inherits this (perceived) flaw from Debian, so it may be better asked in a Debian-specific place. –  0xC0000022L May 22 '12 at 15:20

1 Answer 1

up vote 6 down vote accepted

I'm afraid this isn't a feature of a Debian-based system. STATUS_ACCESS_DENIED is correct about integrity checking. gpg keys are stored for repositories. Release files are stored in repositories and are signed. Those release files contain checksums for the various Package files, which contain lists of packages. Each package description contains checksums for each component as a whole.

Debian has done work to reduce the bandwidth required for apt-get by using package diffs, but they don't seem to reduce the bandwidth required to do an apt-get upgrade, only apt-get update (not the packages themselves, only the Package files). I've been told that Ubuntu doesn't support this. For a description see http://www.debian-administration.org/articles/439

You may be interested in the Exherbo or Funtoo. See http://unix.stackexchange.com/questions/36357/git-based-package-manager-installer-for-linux. Git wasn't around when the debian project was created. It signs individual objects and keeps a chain of checksums to ensure integrity.

share|improve this answer

Your Answer

 
discard

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.