I'm setting up a bunch of XUbuntu build servers running on VMware vSphere, which for IT policy reasons aren't allowed to access the internet. Of course this means I can't get updates or new packages if I need them. Fair enough, I thought - I'll grab the repositories I need, stick them in an ISO file, and then all my build servers can use that ISO file as a virtual DVD drive. Point Linux at those repositories, and job done.
Not so fast, cowboy...
I've followed the instructions in Ubuntu's AptGet/Offline/Repository wiki page. It's slightly out of date (the zip file format is different, and we also have InRelease files now), but correcting the file extensions, I've managed to download everything relevant, I think. I've downloaded main, multiverse, restricted and universe for xenial, xenial-updates, xenial-backports and xenial-security, as per that page. I also did the same for OpenJDK (which I need) and Canonical. I'm running 64-bit Xenial, but I need to cross-compile so I grabbed both amd64 and i386, as well as the source on general principles. Total space needed was 400MB.
(As an alternative solution, I did also see this page about setting up a full mirror, but that said I'd need 120GB. I don't need to mirror every release ever on every platform ever, so this didn't seem like a good move.)
I've then disabled the standard (online) repositories and added my own. My /etc/apt/sources.list file now looks like this.
I've then run "sudo apt-get update". After that though, apt-get will not let me install anything from these repositories - I just get "unable to locate package". (This is easiest to test with OpenJDK, which isn't in the regular Xenial release.)
What have I missed here?
Edit: also tried...
Three forward slashes on the "file:///".
Copying files from a shared location to a local drive.
Setting permissions to be readable and writable by everyone for all files and directories recursively.
Adding "trusted=yes" for these local repositories in the source.list file.
apt-get clean.
0 Answers