Upgrade Ubuntu 10.04 32-bit to 14.04 64-bit

It's time for my quadrennial Ubuntu LTS server upgrade, and given the fact that the new machines at the $20 level include adequate RAM, I'm planning on making the switch to 64-bit. From what I've read, it looks like my best bet is to bite the bullet and just reinstall a new distro and cloning my existing home partition. (No harm done if my system is down for a bit while I tinker.) Any gotchas I should keep in mind? Should I migrate over the full contents of /var or are there things I should delete, such as the cache folder?

  • geoff

8 Replies

According to the instructions on the upgrade page, all I needed to do was switch to the 64 bit kernel. I'm on Ubuntu 12.04 LTS. It worked, I'm on the 64 bit kernel though still running 32 bit software. I was able to complete the migration to super fast disk IO and double RAM. Thanks Linode!

Since you're doing a new installation, maybe also diff against your old /etc in case you made changes like picking a specific Java version, though, you're warping 2 versions and 32 to 64 bit at the same time so you will likely see a lot of differences to mull over.

Thanks, jebblue. I see that's one possibility, but the top answer at AskUbuntu on the provided link warned that you'll have a mix of 32-bit and 64-bit packages and that it isn't officially supported. Since I'm upgrading a bunch of packages that are now four-years-old (plus security updates), I thought it would be cleaner to just start anew. I have very few complicated customizations, and there's nothing mission-critical running on the server, so I'm willing to go through the pain of redeploying if I'll end up in a more consistent state. But maybe I'm just being overcautious.

No, a 32-bit Ubuntu linode running a 64-bit kernel is still pure 32-bit packages. Linode's kernels are provided from outside the system.

Switching the kernel to 64-bit is as simple as picking a different kernel in the dropdown in the manager and rebooting. I just did that prior to my migration.

You are far better off doing a clean install and re-configuring from that. A LOT of configuration structures have changed, so even if you can deal with the 32 to 64 bit package change (which would be a feat unto itself) then you'd still need to deal with broken configs that all need to be gone through and updated.

Backup a copy of any data you need locally (and verify!) then what I would do is just spin up another Linode instance and actually do the install/configuration. Once you have it ready, just port over the latest data and the point your DNS to the new Linode and then just shut the old one down.

That's incorrect. Switching the kernel from 32-bit to 64-bit does nothing to change the packages, nothing to change the config. You shut down, switch the kernel, start up, and everything will work and be exactly the same as before.

Are there any implications at all running 32bit software on a 64bit kernel? Even minor?

Because I am interested in upgrading to the new servers, Linode recommended I should switch. The 32bits I have have another 2 months for me to wait. I use Webmain/Virtualmin to manage the server and started a discussion here about it too https://www.virtualmin.com/node/33007

I dont feel comfortable mixing them, but if there are no implications at all then maybe I should.

Thanks

Well, I'm sure there are some minor differences. If you have more than 4GB of RAM, you get access to more of it in a similar manner to PAE (no one process can consume more than 3GB, but overall memory use can be above 4GB). The kernel will use a bit more RAM (although you also get double RAM from the upgrade, which more than makes up for it). I'm not an expert, though, all I can say is that I did it and noticed no differences. All I can say is how it's supposed to work generally, rather than specifically.

The differences that you're noting with yum-based operating systems is because Yum dynamically decides which packages to select based on the kernel bit-ness. Ubuntu (and Debian, I'd imagine?) pull it from their static config, so they don't need to override that.

@Guspaz:

The differences that you're noting with yum-based operating systems is because Yum dynamically decides which packages to select based on the kernel bit-ness. Ubuntu (and Debian, I'd imagine?) pull it from their static config, so they don't need to override that.

You are correct sir! FYI If you are using a yum-based distro, you can quickly swap out the variables for a static reference to the right architecture. Reference

Edit: additional reference..

Reply

Please enter an answer
Tips:

You can mention users to notify them: @username

You can use Markdown to format your question. For more examples see the Markdown Cheatsheet.

> I’m a blockquote.

I’m a blockquote.

[I'm a link] (https://www.google.com)

I'm a link

**I am bold** I am bold

*I am italicized* I am italicized

Community Code of Conduct