Re: In-place upgrade from i386

2008-02-25 Thread Goswin von Brederlow
Joerg Dorchain [EMAIL PROTECTED] writes:

 Hello,

 I have a system with an intel core 2 dou CPU, which currently runs fine
 Debian-i386.

 I want to change it to amd64 with certain conditions:

 - Same package selection
 - Same debconf
 - Same config files
 - Same disk afterwards

 as on current i386 when it runs amd64.

 So far I managed to run an amd64 kernel.

 For the user space I though an
 apt-get -o APT::Architecture=amd64 {update|-f install}
 would do it, but stop immediately with 
 E: Internal Error, Could not perform immediate configuration (2) on
 libc6

 Any other ideas?

 Is an in-place debootstrap possible? Or can I hook the disk on another
 system and do a debboostrap there  without loosing the above mentioned
 information?

 TIA,

 Joerg

You can do an in-place upgarde with some hacks and I would rather you
won't even try.

- Create a copy of the libc6 and ld.so and add the dir to
  /etc/ld.so.conf. Worst case you have to run the ld with full path
  and pass the binary you need as argument. E.g.:
  /backup/ld-2.3.6.so /bin/ls
 
  Also add /lib32, /usr/lib32 to ld.so.conf and make them links to
  /emul/ia32-linux/lib and /emul/ia32-linux/usr/lib.

- Rename maintainer files in /var/lib/dpkg/info.
  You need to rename any package that contains a library, e.g. prefix
  them with ia32-. E.g. zlib1g - ia32-zlib1g.

- Move libraries and docs.
  You need to move all libraries from /lib to /lib32 and /usr/lib to
  /usr/lib32. But dont't move subdirs.
  For /usr/share/doc you need to rename the directories to match the
  renaming done in the last step. Beware that some dirs are links.
  Also look out for diversions.

- Fix diversions and status file
  You need to change the package names in diversions and status files
  to match the names chosen above (ia32-zlib1g). This includes
  especially the Depends, Conflicts, Pre-Depends lines.
  Also change the Architecture field to amd64.

If you have done all this and you still have a running system then you
can start to upgrade.

Now install libc6 (the old 32bit one is now ia32-libc6), perl, dpkg,
apt in that order while forcing the arch to amd64. This is the big
test if you did everything right above.

Reinstall every not renamed package on your system (everything not
ia32-...). This causes each of them to be upgraded to the 64bit
version. If you upgarde from sarge to etch at the same time then
upgrade, dist-upgrade will do most of them automatically.

Now you should have a full 64bit system with some unused 32bit cruft
left behind. Purge all ia32-* packages to get rid of cruft.

Enjoy or despair, your choice.

MfG
Goswin

PS: Doesn't reinstalling sound so much simpler?


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]



Re: In-place upgrade from i386

2008-02-16 Thread Joerg Dorchain
On Fri, Feb 15, 2008 at 03:16:20PM +0100, Joerg Dorchain wrote:
 
 I found that webpage:
 http://www.digitalkingdom.org/~rlpowell/hobbies/debian_arch_up/index.html
 
 At first glance, it looks sane to me. Comments are welcome ;)

Ok, this basically works. Some comments by my:

- I used bash-static to be on the save side.
- The crucial point is the 64bit libc install. This only runs without
  error with the  ld-linux.so link.  I have the impression that some
  install scripts keep setting this link to the wrong place, so the
  64bit libc does not install.
  It makes no sense to continue without it, so set this link immediately
  before the dpkg command.
- Keep the 32bit selections file around. Apt-get upgrade installed about
  30 additional packages + libraries. You might want to trim that down.
- An archive or a fast network connection comes in handy
- For getting the packages + dependencies before the 64bit apt works,
  apt-get -o Apt::Architecture=amd64 -d works well.
- This all goes with minimal downtime. Services are only stopped and
  restarted with the normal upgrade process. Of course, X, firefox and
  the usual suspects are very confused when you change their .so modules
  while they are running, but I do not consider this specific to the
  architecture change.

Bye,

Joerg


signature.asc
Description: Digital signature


In-place upgrade from i386

2008-02-15 Thread Joerg Dorchain
Hello,

I have a system with an intel core 2 dou CPU, which currently runs fine
Debian-i386.

I want to change it to amd64 with certain conditions:

- Same package selection
- Same debconf
- Same config files
- Same disk afterwards

as on current i386 when it runs amd64.

So far I managed to run an amd64 kernel.

For the user space I though an
apt-get -o APT::Architecture=amd64 {update|-f install}
would do it, but stop immediately with 
E: Internal Error, Could not perform immediate configuration (2) on
libc6

Any other ideas?

Is an in-place debootstrap possible? Or can I hook the disk on another
system and do a debboostrap there  without loosing the above mentioned
information?

TIA,

Joerg


signature.asc
Description: Digital signature


Re: In-place upgrade from i386

2008-02-15 Thread Alex Malinovich
On Fri, 2008-02-15 at 10:17 +0100, Joerg Dorchain wrote:
 Hello,
 
 I have a system with an intel core 2 dou CPU, which currently runs fine
 Debian-i386.
 
 I want to change it to amd64 with certain conditions:
 
 - Same package selection
 - Same debconf
 - Same config files
 - Same disk afterwards
 
 as on current i386 when it runs amd64.
--snip--

There was a thread on here a month or two ago about this same topic. The
short version is that it IS possible to do this. However, I wouldn't
recommend it as it's more trouble than its worth. Your best bet would be
something simple like

dpkg --get-selections  selections.list
tar czf etc.tar.gz /etc/

Then just do a clean install of amd64 on a separate disk/partition, and
then

dpkg --set-selections  selections.list
apt-get -f install
cd /
tar xzf etc.tar.gz 

Note that the commands above are just off the top of my head. If you use
them and your system launches a nuclear weapon at your house, I'm not
responsible. :) Make sure you know what each of them does before you do
it. If you don't know and can't figure it out, don't do it.

If you happen to have /home on a separate partition, you can just
remount it later and you'll be all set. I did almost the exact above
procedure about a year ago due to a corrupted root partition. I
thankfully had both /etc and /home on a separate partition, so it was
quite straightforward. It just took a couple of hours for all of the
packages to install and I was up and running good as new.

-- 
Alex Malinovich
Support Free Software, delete your Windows partition TODAY!
Encrypted mail preferred. You can get my public key from any of the
pgp.net keyservers. Key ID: A6D24837



signature.asc
Description: This is a digitally signed message part


Re: In-place upgrade from i386

2008-02-15 Thread Heikki Levanto
On Fri, Feb 15, 2008 at 01:52:52AM -0800, Alex Malinovich wrote:
 There was a thread on here a month or two ago about this same topic. The
 short version is that it IS possible to do this. However, I wouldn't
 recommend it as it's more trouble than its worth. Your best bet would be
 something simple like
 
 dpkg --get-selections  selections.list
 tar czf etc.tar.gz /etc/
 
 Then just do a clean install of amd64 on a separate disk/partition, and
 then
 
 dpkg --set-selections  selections.list
 apt-get -f install
 cd /
 tar xzf etc.tar.gz 

I would back up at least /var/lib, and selectively restore at least things
like /var/lib/mysql. Also /var/mail might be worth saving...

If you have /home on a separate partition, and have (or can make) enough
space there, back up the whole system partition there! There will always be
something you need to restore later... or use a USB stick or disc for the
backup (ipod? camera? what ever works).

  - Heikki



-- 
Heikki Levanto   In Murphy We Turst heikki (at) lsd (dot) dk


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]



Re: In-place upgrade from i386

2008-02-15 Thread Joerg Dorchain
On Fri, Feb 15, 2008 at 01:52:52AM -0800, Alex Malinovich wrote:
 
 There was a thread on here a month or two ago about this same topic. The

I found it. IMHO it helps, thanks.

 short version is that it IS possible to do this. However, I wouldn't
 recommend it as it's more trouble than its worth. Your best bet would be
 something simple like
 
 dpkg --get-selections  selections.list
 tar czf etc.tar.gz /etc/
 
 Then just do a clean install of amd64 on a separate disk/partition, and
 then
 
 dpkg --set-selections  selections.list
 apt-get -f install
 cd /
 tar xzf etc.tar.gz 
 
 Note that the commands above are just off the top of my head. If you use
 them and your system launches a nuclear weapon at your house, I'm not
 responsible. :) Make sure you know what each of them does before you do
 it. If you don't know and can't figure it out, don't do it.

I found that webpage:
http://www.digitalkingdom.org/~rlpowell/hobbies/debian_arch_up/index.html

At first glance, it looks sane to me. Comments are welcome ;)

Bye,

Joerg


signature.asc
Description: Digital signature


Re: In-place upgrade from i386

2008-02-15 Thread Douglas A. Tutty
On Fri, Feb 15, 2008 at 10:17:32AM +0100, Joerg Dorchain wrote:
 I have a system with an intel core 2 dou CPU, which currently runs fine
 Debian-i386.
 
 I want to change it to amd64 with certain conditions:
 
 - Same package selection
 - Same debconf
 - Same config files
 - Same disk afterwards
 
 as on current i386 when it runs amd64.
 
 So far I managed to run an amd64 kernel.

See the thread from last month.

Here are some ideas:

You can't just change sources list and go.  The libs are in the wrong
place.

Assuming that you want to avoid downtime, I see a couple of
possibilities.

1.  Add a drive to the box, use debootstrap to install amd64 to that
while you still run i386.  Then install a kernel, change grub, and
reboot.

2.  If you have free space on the drive, install to that.

3.  With either a free drive or a free partition, if you can
tolerate a bit of downtime, use the instaler, set up LVM on the spare
partitions and do a minimal install (no tasks selected), and ensure that
it boots.

Then reboot back to your i386 to carry on with life while you
finish installing and configuring the amd64 install.

Once this is done, chang grub so that amd64 is the default boot.
You can then either leave the i386 install as is to use as a
chroot or just remove it, make the partition a PV for your amd64
LVM system and use the space as you want.


Doug.


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]