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

Re: dpkg and older systems



Hi Mark,

> 
> In article <19970422113721.2921.qmail@palm.hands.com>,
> 	Philip Hands <phil@hands.com> writes:
> 
> [about upgrading to debian over an existing system]
> > Here's the first draft of a Mini-HOWTO I was working on that sort of 
> > covers what you want. [upgrading to debian]
> 
> Am I right in thinking that if I already have up to date kernel, lilo, ld.so 
> etc (and ssh, though as I'm not doing it remotely I won't need to use it) I
> can skip most of the first half of this?

The first thing you are aiming for is to get dpkg to consider _itself_ to be installed.  I think this is the bare minimum you need to do, to end up with a happy dpkg/dselect:

 tar -C / -xvzf dpkg_1.4.0.8_i386.nondebbin.tar.gz

 dpkg --force-depends -i /tmp/perl-base_5.003.07-6.deb (fails:-)
 dpkg --force-depends -i /tmp/base/libgdbm1_1.7.3-11.deb
 dpkg --force-depends -i /tmp/base/libdb1_1.85.2-8.deb
 dpkg --force-depends -i /tmp/base/libreadline2_2.0.1-2.deb
 dpkg --force-depends -i /tmp/perl-base_5.003.07-6.deb (works this time)
 mkdir /etc/rc0.d /etc/rc1.d /etc/rc2.d /etc/rc3.d /etc/rc4.d \
       /etc/rc5.d /etc/rc6.d /etc/init.d
 dpkg --force-depends -i /tmp/base/dpkg_1.4.0.7.deb

at this point you might be able to get away with running dselect.  I was being paranoid because I couldn't risk the system not rebooting, so it struck me as a good idea to put the base packages on by hand.  You have the option of booting from a floppy, so might want to be more reckless.

When I upgrade systems locally, I don't normally attempt an in-place upgrade.  Instead, I normally do the following (assuming enough disk space is available to store the old system):

  make a backup (well maybe ;)
  boot from a debian rescue disk
  switch to the second console
  mount the partition that was the old root partition, on /target say
  make a new directory: /target/OTHER
  move everything in /target to /target/OTHER (except lost+found)
  umount /target
  continue with the install, doing a fairly minimal install, and using the
    ``mount a previously created partition'' option, rather that destroy the
    old data.
  add packages a few at a time, comparing what I'm mising with what is
    under /OTHER.  If neccissary deleting bits of /OTHER to free some room.

This leaves you with a pure debian system, with the old system under /OTHER as a reminder of what you used to have --- eventually I delete /OTHER.  

> What happens to files in /usr/bin etc that aren't replaced by debian ones?
> Do I have to remove them by hand or is there some easy way to do them?

There is a program called dbackup (the package is available in
project/experimental) that gives you a list of everything on your
system that is _not_ from Debian installed packages.

I use the output of dbackup to:

  1) remind me of packages I need to install

  2) show debris that is to be deleted

> 
> Thanks,
> 	Mark.

Good Luck --- I'd be interested to hear how you get on.

Cheers, Phil.



--
TO UNSUBSCRIBE FROM THIS MAILING LIST: e-mail the word "unsubscribe" to
debian-devel-request@lists.debian.org . 
Trouble?  e-mail to templin@bucknell.edu .


Reply to: