[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Create install-CD from /var/cache/apt?



On Wed, 08 Aug 2001, Johnny Ernst Nielsen wrote:
> Hi,
> 
> how do I create a usable installation CD with downloaded packages that are
> currently in /var/cache/apt?
> 
> I am running a standard Debian 2.2r3.
> I just installed KDE 2.1.1 using dselect to fetch and install packages from the
> net.
> I need to install this standard setup on other Debian 2.2r3 computers, and I
> don't want to spend the hours downloading the same packages every time. In some
> cases there will be no Internet connection to do that (or it will be
> unacceptably slow).
> So I would like to produce an installation CD with the packages in my cache. I
> would like to be able to simply add that CD to the sources.list as any other
> source, so I can use dselect to install.
> 
> I have tried looking at apt-move, but I do not comprehend its usage.
> I have tried searching the lists for similar questions but I couldn't find any.
> 
> Can anyone help me?

Nobody could :o(

The best solution someone had was installing a webservice on the local computer
so one could install the packages as if they were pulled from the net.

However, these computers are workstations and I do not want to turn them into
webservers to be able to install packages off a CD I put their CD drive.

No offence. It just comes across the purpose of the computers, and it seems
like crossing the creek to fetch water.

I am too stupid to find out how to set up a web server anyway. ;o)

I found an other solution. It is not as elegant and easy as I would have liked,
but it works.

The starting point is the first installation of whatever program you want
installed.
First make sure the package cache is emptied.
Then put the correct internet sources line in sources.list - the first install
is done off the net.
Use dselect and update and select and install and configure.
Do NOT clear the cache. All the packages you just downloaded are there now.
Just quit dselect when done configuring.

Then you burn the cache on a CD. Use the Rock Ridge format or the package names
will be truncated to 8 characters (doh).

Subsequent installs can be done off this CD with a bit of work.

Mount the CD and change directory to the directory with the packages.

Then dpkg -R --unpack .

This will unpack all the packages, but it will NOT attempt to configure the
packages.

Now comes the work part.

dpkg --configure --pending

dpkg will probably tell you that some dependencies have failed. This is fine
for now.

Unmount the CD

apt-get -f install

apt will figure out how to meet the dependecies.
It will tell you what packages will be installed and updated.

Important to note are the packages it wil _remove_ in order to resolve the
dependencies.
Write these packages down. You will need to install them manually
in a short while.

Well, apt is ready to sort out the dependecy problems by installing from your
Debian CDs

Go ahead.

Now all is fine, except for the packages that were removed.

Mount your burned CD and dpkg -i each of the packages apt just removed. You may
have to sort out additional dependency problems for each package by hand.

Continue like this until all packages are installed.

I do not think that this last part of manual install will be a lot of packages.
The first part should have taken care of almost all the packages.

In my particular case out of approximately 110 packages only one had to be
installed manually. It took me less than 10 minutes to install KDE 2.1.1 this
way.

All of the above may be bearable if you have to install only a few computers.

If you need to install many computers another approach might be better.

Do as above, only note all the dependencies reported.
On subsequent installs make sure to install all the dependencies before
installing your set of packages off your burned CD.
That way there should not be any unmet depencies when you start out, and
everything should glide through like eels in gelly.

I hope this helps someone out there.

Best regards
Johnny :o)



Reply to: