Upgrade Or Update Ubuntu Offline, Without Internet

Updating or upgrading Ubuntu with internet connection is really very easy. All you have to do it type sudo apt-get update in the terminal. If you use GUI, then the update manager regularly pops-up to notify you about the latest updates available.

But what if you are in a situation where you do not have internet access on your Ubuntu powered personal computer. How will you update your Ubuntu OS then? This is one of the common situation faced by many in (specially) developing countries. And to get you out of this situation Ubuntu has this wonderful tool called “apt-offline” that lets you update your Ubuntu powered computer without an internet connection.

There is one tricky thing here though. You need the “apt-offline” to be installed on the target Ubuntu computer, which needs internet connection :( You can install it in the following manner:

sudo apt-get install apt-offline

How to use apt-offline to update Ubuntu offline:

The whole procedure can be categorized in 3 steps:

1. Generate “apt signature” file:

This “apt signature” contains the information about the downloaded and installed packages and thus it will help in determining which packages need to be downloaded on the other (lets say source) computer. Use the following commands in terminal:

sudo apt-offline set ~/my.sig

This will generate the my.sig file in your home directory. You are free to change the path. Now copy this .sig file to a USB drive that could be connected to the computer that has internet access.

2. Download the required packages:

Once you have the .sig file on a USB drive, connect it to an internet connected computer running on Ubuntu and use the following command in the terminal:

apt-offline get -d /to_any_chosen_directroy /path_to/apt.sig

Once you have it downloaded it, copy the downloaded files in the USB key.

Suggested read
GalliumOS: The Linux Distribution For Chromebooks

3. Install the downloaded packages:

Now when you have the downloaded packages, you can install it on your target Ubuntu computer using the following command:

sudo apt-offline install /path_to_downloaded_package_folder

Voila! Enjoy the latest updates. This works with all the major Ubuntu releases like Ubutnu 12.04, 11.10, 11.04 and 10.10 etc.

If you have questions or difficulties in following the tutorial, feel free to drop a comment. I’ll be happy to help you out. Cheers :)

Add comment

E-mail is already registered on the site. Please use the Login form or enter another.

You entered an incorrect username or password

Sorry that something went wrong, repeat again!


by Newest
by Best by Newest by Oldest

Running this:
sudo apt-offline get -d /usr/repository/June_17/ /home/administrator/my.sig --threads 10 --verbose

Get this error:
ERROR: The following files failed to be downloaded.
ERROR: Not all errors are fatal. For eg. Translation files are not present on all mirrors.
ERROR: http://security.ubuntu.com/ubuntu/dists/xenial-security/main/binary-all/Packages.lzma failed.
ERROR: http://security.ubuntu.com/ubuntu/dists/xenial-security/main/i18n/Translation-en_US.lzma failed.
ERROR: http://security.ubuntu.com/ubuntu/dists/xenial-security/restricted/binary-all/Packages.lzma failed.
ERROR: http://security.ubuntu.com/ubuntu/dists/xenial-security/restricted/i18n/Translation-en_US.lzma failed.
ERROR: http://security.ubuntu.com/ubuntu/dists/xenial-security/universe/binary-all/Packages.lzma failed.
ERROR: http://security.ubuntu.com/ubuntu/dists/xenial-security/universe/i18n/Translation-en_US.lzma failed.
ERROR: http://security.ubuntu.com/ubuntu/dists/xenial-security/multiverse/binary-all/Packages.lzma failed.
ERROR: http://security.ubuntu.com/ubuntu/dists/xenial-security/multiverse/i18n/Translation-en_US.lzma failed.
ERROR: http://us.archive.ubuntu.com/ubuntu/dists/xenial/main/binary-all/Packages.lzma failed.
ERROR: http://us.archive.ubuntu.com/ubuntu/dists/xenial/main/i18n/Translation-en_US.lzma failed.
ERROR: http://us.archive.ubuntu.com/ubuntu/dists/xenial/restricted/binary-all/Packages.lzma failed.
ERROR: http://us.archive.ubuntu.com/ubuntu/dists/xenial/restricted/i18n/Translation-en_US.lzma failed.
ERROR: http://us.archive.ubuntu.com/ubuntu/dists/xenial/universe/i18n/Translation-en_US.lzma failed.
ERROR: http://us.archive.ubuntu.com/ubuntu/dists/xenial/universe/binary-all/Packages.lzma failed.
ERROR: http://us.archive.ubuntu.com/ubuntu/dists/xenial/multiverse/i18n/Translation-en_US.lzma failed.
ERROR: http://us.archive.ubuntu.com/ubuntu/dists/xenial/multiverse/binary-all/Packages.lzma failed.
ERROR: http://us.archive.ubuntu.com/ubuntu/dists/xenial-updates/main/binary-all/Packages.lzma failed.
ERROR: http://us.archive.ubuntu.com/ubuntu/dists/xenial-updates/restricted/binary-all/Packages.lzma failed.
ERROR: http://us.archive.ubuntu.com/ubuntu/dists/xenial-updates/main/i18n/Translation-en_US.lzma failed.
ERROR: http://us.archive.ubuntu.com/ubuntu/dists/xenial-updates/restricted/i18n/Translation-en_US.lzma failed.
ERROR: http://us.archive.ubuntu.com/ubuntu/dists/xenial-updates/universe/binary-all/Packages.lzma failed.
ERROR: http://us.archive.ubuntu.com/ubuntu/dists/xenial-updates/universe/i18n/Translation-en_US.lzma failed.
ERROR: http://us.archive.ubuntu.com/ubuntu/dists/xenial-updates/multiverse/binary-all/Packages.lzma failed.
ERROR: http://us.archive.ubuntu.com/ubuntu/dists/xenial-updates/multiverse/i18n/Translation-en_US.lzma failed.
ERROR: http://us.archive.ubuntu.com/ubuntu/dists/xenial-backports/main/binary-all/Packages.lzma failed.
ERROR: http://us.archive.ubuntu.com/ubuntu/dists/xenial-backports/main/i18n/Translation-en_US.lzma failed.
ERROR: http://us.archive.ubuntu.com/ubuntu/dists/xenial-backports/restricted/binary-all/Packages.lzma failed.
ERROR: http://us.archive.ubuntu.com/ubuntu/dists/xenial-backports/universe/binary-all/Packages.lzma failed.
ERROR: http://us.archive.ubuntu.com/ubuntu/dists/xenial-backports/universe/i18n/Translation-en_US.lzma failed.
ERROR: http://us.archive.ubuntu.com/ubuntu/dists/xenial-backports/restricted/i18n/Translation-en_US.lzma failed.
ERROR: http://us.archive.ubuntu.com/ubuntu/dists/xenial-backports/multiverse/binary-all/Packages.lzma failed.
ERROR: http://us.archive.ubuntu.com/ubuntu/dists/xenial-backports/multiverse/i18n/Translation-en_US.lzma failed.
ERROR: linux-cloud-tools-virtual-lts-xenial failed.
ERROR: linux-firmware failed.
ERROR: linux-libc-dev failed.
ERROR: linux-tools-virtual-lts-xenial failed.
ERROR: linux-virtual-lts-xenial failed.


i want to upgrade ubuntu 16.04 in 150 systems offline but i don't know how i do it. pleae help to upgrade ubuntu 16.04

do this work for ubuntu 14.04

Hannafi Bin Husaini

I seem to have some problem. I think...
Basically I have an offline computer and another computer which is online. (Online and offline being with or without internet). I could follow this tutorial....
The offline one runs on Ubuntu 12.04 and the online on Windows 7.
Is it possible to download the needed packages on the online and bring it over on pen drive?

apt-offline already does it. It is cross-platform and will run on Windows, Mac and Linux. INfact, it'll run anywhere where Python can run.

Another correction: apt-offline is originally developed for Debian. All its derivatives (including Ubuntu) inherit the benefits.

/me - apt-offline author.

Hannafi Bin Husaini

you can use synaptic package manager.

Use the Synaptic package download script

1. Launch Synaptic on the offline computer
2. Mark the packages you wish to install
3. Select File->Generate package download script
4. Save the script to your USB key
5. Take the USB key to your online windows computer and just open the script with a text editor and enter all the URLs you see in your browser(or download manager) to download the corresponding packages. It will download only the packages required by the offline computer to the USB key.
6. Insert the USB key into the offline computer
7. Launch Synaptic and click on File->Add downloaded packages
8. Select the directory on your USB key containing the downloaded *.deb files and press Open. The packages will be installed.


Thanks for your answer Ehsan. A similar app is Cube which works in similar fashion.