26

Is there an easy way to upgrade the system to x64 from x86 without losing settings and having to repartition etc?

2
  • This is the same question, but shouldn't be marked as a duplicate, cause there are alternative answers here also: Is it possible to "upgrade" from a 32bit to a 64bit installation?
    – rubo77
    Jun 20, 2014 at 7:50
  • This guide actually worked for me, though it takes a lot of fiddling on the way and you really need to be an Ubuntu/Debian expert. Lots of packages break and you have to manually figure out how to fix them. Not for the faint of heart, and for most people (as others recommended here), you should just do a clean install and restore your config Sep 3, 2015 at 14:16

5 Answers 5

19

You can just perform an x86-64 install over the top of your existing i386 install. There's no need to reformat or repartition - the Ubuntu installer has supported keeping the contents of /home and (most of) /etc (and other data directories) for a couple of releases now.

That will get you most of the way there; you'll keep all your configuration, but you won't have the same software installed.

To do that, the guide from this answer should work:

  1. Before installing the x86-64 version, dump a list of your currently installed packages by running dpkg --get-selections > ~/installed-software in a terminal.
  2. After installing, restore the list of installed packages by running sudo dpkg --set-selections < ~/installed-software followed by sudo apt-get -f install. There will probably be some packages that can't be installed, as there are some i386 packages without x86-64 counterparts - libc6-686, the 686-optimised libc is the common example.
6
  • Did you try it yourself?
    – Extender
    Oct 12, 2010 at 2:44
  • I have not tried installing an amd64 release over an i386 release, no. I have installed over an existing install without reformatting; that works.
    – RAOF
    Oct 12, 2010 at 3:01
  • In theory there also might be programs that store data/caches/config differently when they are on 32-bit vs. 64-bit, but I think most programs should be safe...
    – JanC
    Oct 12, 2010 at 4:38
  • Yeah. Windows programs have a tendency to just dump the contents of memory to disc, which causes this problem. Linux programs are generally written with more portability in mind.
    – RAOF
    Oct 13, 2010 at 4:26
  • 1
    You can use aptitude to do the same thing and also exclude packages that were installed automatically as dependencies. (you might want to let them be selected automatically again ;-) aptitude search "?and(?installed,?not(?automatic))" -F %p > ~/installed-software Then on the new system install them with sudo aptitude install $(cat ~/installed-software) Nov 13, 2014 at 3:12
7

No. Well... Not in a way that's worth it.

There are some guides that offer a disclaimer-ridden murky pathway from 32bit to 64bit but believe me when I say I've been tinkering with Linux for years I just wouldn't want to take it on. It's a giant hack that intentionally breaks things to fool the 32bit system into taking on 64bit packages. Get one thing wrong and you break the install... And it looks like it would take a long time.

The truth is it's just so much easier to back up the things you can't replace (/etc/, /home/, parts of /var) to another drive, pop in the 64bit live CD/USB and reinstall. Installation to my SSD from USB took 12 minutes last time I did it.

When it's reinstalled, make a new user and copy whatever bits of your profile you want back in. You can either dump it all back in or spend a little bit of time and have a good old-fashioned clean out.

1
  • Well, you'll want to backup more than /etc and /home if you are using Apache. Oct 11, 2010 at 23:39
6

Should be simple.

  1. Backup your /etc and /home folders (I have /home as its own partition, you may need more folders if you have any custom folders... or /var/www if you have apache, maybe backup databases if you had any)
  2. Run dpkg --get-selections > installed-software to save the list of installed software, backup the file installed-software.
  3. Install the x64 version, create the same users.
  4. Restore the /etc and/homefolders and theinstalled-software` file.
  5. Run dpkg --set-selections < installed-software then run dselect to install the previously installed software.
1
  • 1
    I recently switched to 64b manually. dpkg --get-selections > installed-software did not work for me due to :i386 architecture on some package names. Instead I ran this script: cat installed-software | cut -f1 | sed 's/:i386//g' | while read P; do sudo apt-get install $P; done Sep 1, 2016 at 6:02
3

I don't believe you can just upgrade to a 64 bit version of Ubuntu, you would have to reformat the partition and install the 64 bit version from the x64 Live CD.

-1

James is right.

As x86 and x64 are different architectures you can't just upgrade directly from one to another without wiping the root partition and re-installing the system.

One thing you can (and MUST) do is having directories where you store settings and files (usually /home/yourusername) set up in a separate partition, as this allows you to format your system without losing important settings, like your e-mail accounts' Evolution/Thunderbird configuration, or any other type of files.

If you do the same for /usr/bin (for example), then it also backups all files under this directory in a system format.

1
  • 1
    Clarify the final sentence please.
    – Oli
    Oct 11, 2010 at 22:21

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .