On a computer that is online, you can say apt install --download-only foo to download (and not actually install) the .deb files for foo and its dependencies to the directory /var/cache/apt/archives/. You can then copy them from the online computer to the offline computer, and install them with dpkg -i *deb (assuming the debs are in your current working directory). Note however that apt on the online computer will only download dependencies which aren’t already installed. To force re-downloading of a specific package which is already installed, you can say apt install --reinstall--download-only foo.
Instead of downloading with apt install --download-only you could also find the download paths for individual .deb packages using https://packages.debian.org/foo and then download them using a browser.
You could also copy the contents of /var/lib/apt/lists/ (after running apt update) and the contents of /var/cache/apt/archives/ both to the corresponding locations on the offline computer and, if your sources.list files have the same entries, then you can offline install the things you’ve put in the cache folder using apt instead of dpkg.
Or, if you have lots of disk space, you can create an offline mirror of all (or some) of debian and point your sources.list file at a local file:/// source and then you can use apt like normal but completely offline.
I used to do this many years back with a USB stick before I had Internet access at home. I think it was only the sources.list file that I needed to copy around along with a config file and the actual .deb files. It was possible to use apt-get on the offline machine instead of dpkg which worked better.
On a computer that is online, you can say
apt install --download-only foo
to download (and not actually install) the .deb files forfoo
and its dependencies to the directory/var/cache/apt/archives/
. You can then copy them from the online computer to the offline computer, and install them withdpkg -i *deb
(assuming the debs are in your current working directory). Note however thatapt
on the online computer will only download dependencies which aren’t already installed. To force re-downloading of a specific package which is already installed, you can sayapt install --reinstall --download-only foo
.Instead of downloading with
apt install --download-only
you could also find the download paths for individual .deb packages using https://packages.debian.org/foo and then download them using a browser.You could also copy the contents of
/var/lib/apt/lists/
(after runningapt update
) and the contents of/var/cache/apt/archives/
both to the corresponding locations on the offline computer and, if yoursources.list
files have the same entries, then you can offline install the things you’ve put in the cache folder usingapt
instead ofdpkg
.Or, if you have lots of disk space, you can create an offline mirror of all (or some) of debian and point your
sources.list
file at a localfile:///
source and then you can useapt
like normal but completely offline.I used to do this many years back with a USB stick before I had Internet access at home. I think it was only the sources.list file that I needed to copy around along with a config file and the actual .deb files. It was possible to use apt-get on the offline machine instead of dpkg which worked better.