Two different approaches exist:

  • Manually copy a complete online repository to a USB key and set it up as a package source for your machines.
  • Use apt-medium to have the apt tools use a shared cache location (e.g. /var/cache/apt on a removable media, or network share).

Setting up a local repository


As you can see in the Repositories/Ubuntu page, the Ubuntu software repository is organized into four "components" on the basis of the level of support Ubuntu can offer them and whether or not they comply with Ubuntu's Free Software Philosophy. The components are called Main (officially supported software), Restricted (supported software that is not available under a completely free license), Universe (community-maintained, i.e. not officially-supported software) and Multiverse (software that is "not free"). The standard Ubuntu installation is a subset of software available from the main and restricted components.

Download the online repository

You can download the packages onto a USB key from a computer with Internet connection and store them on your Ubuntu computer.

Go to the page and then to the code name of the Ubuntu distribution installed on your hard disk (intrepid, jaunty, karmic, ...) and download these files :

  • Release
  • Release.gpg
  • And the Contents files for your architecture (i.e Contents-i386.gz ,if you architecture is i386).

Later, go to the component (main, multiverse, restricted, universe) and architecture (i.e. binary-i386/ in /dists/karmic/main/) that you want in your local repository and download these files:

  • Packages.bz2
  • Packages.gz
  • Release

Optionally, you can download the same files for the source directory (its packages are architecture-independent).

Now, store the files in your local Ubuntu repository in the same order. For example:

  • In the /home/repository/dists/karmic directory, you would have these files:
    • Contents-i386.gz
    • Release
    • Release.gpg
  • And in the /home/repository/dists/karmic/main/binary-i386 directory, you would have these files:
    • Packages.bz2
    • Packages.gz
    • Release

Add the local repository to your sources list

Use Applications -> Add/Remove as explained in Repositories/Ubuntu to add the offline repository and store it in the /home/repository directory :

deb file:///home/repository CodeName main restricted universe multiverse 


  • CodeName is intrepid, jaunty, karmic ...

  • You can include some or all of the components ( main, multiverse, restricted, universe).

See also

CategoryOffline CategoryPackageManagement

AptGet/Offline/Repository (last edited 2024-02-22 13:22:21 by littlergirl)