Breaking
September 29, 2025

Ask Hackaday: How Do You Distro Hop? Al Williams | usagoldmines.com

If you read “Jenny’s Daily Drivers” or “Linux Fu” here on Hackaday, you know we like Linux. Jenny’s series, especially, always points out things I want to try on different distributions. However, I have a real tendency not to change my distro, especially on my main computer. Yet I know people “distro hop” all the time. My question to you? How do you do it?

The Easy but Often Wrong Answer

Sure, there’s an easy answer. Keep your /home directory on a separate disk and just use it with a new boot image. Sounds easy. But the truth is, it isn’t that easy. I suppose if you don’t do much with your system, that might work. But even if you don’t customize things at the root level, you still have problems if you change desktop environments or even versions of desktop environments. Configuration files change over time. Good luck if you want to switch to and from distros that are philosophically different, like systemd vs old-school init; apparmor vs SELinux. So it isn’t always as simple as just pointing a new distro at your home directory.

One thing I’ve done to try out new things is to use a virtual machine. That’s easy these days. But it isn’t satisfying if your goal is to really switch to a new distro as your daily driver.

The Reason

Not a cuddly logo, but a good distro nonetheless.

The reason this came up is that I generally like KDE and was using Kubuntu for a number of years. They tend to lag a bit on the KDE desktop, so when KDE came out with Neon, I was sold. However, since they were both based on Ubuntu/Debian, there was a mostly working upgrade path to convert a Kubuntu installation to Neon.

Fast forward to today. Neon has been suffering lately. I hear there is one volunteer keeping it running. KDE has decided to shift focus to a new distro that does things I’m not crazy about (immutable system; Wayland). So it was time to hop again.

I’d heard that OpenSUSE was good at keeping up with KDE, and the rolling release of Tumbleweed appeals to me. So I made the switch.

The Hard Way

I am in no way suggesting you do this. It was a bad idea, and while it worked, it was a lot of effort. Even so, it only worked because I have way more disk storage than I need: my root file system is way under 3 TB, and I have about 9 TB of RAID as my primary hard drive. Of course, you should be backed up. But if you’ve ever had to restore from a backup, you know that’s no fun. Better to have it and not need it.

So what did I do? I used kvm to stand up a virtual machine, and then I installed Tumbleweed on it. I turned off the btrfs features since I didn’t plan to use them. Then I set about matching my Neon desktop. All the KDE settings. All the strange systemd services and timers I have set up. The systems I use to run my own dynamic DNS. As much of everything as I could think of.

I got to the point where working in the VM was comfortable. My browsers and all my other tools were ready and configured.

You know I forgot something. I knew too, so I wanted to save things for reference. First, I booted from a live image and made a copy of my entire root file system under /NEON. Then I rebooted and created a new virtual machine and booted a “live” ISO file on it.

A Hard Day’s Night

The next step was to copy the snapshot of the /NEON directory into the VM. Sure, I could have used LVM snapshots or, if I were still using btrfs, a snapshot from that. But I have plenty of disk space, especially after pruning off some very large directories from the copy.

The key to this, by the way, is using the nbd program to mount the VM’s disk image. You do need the nbd module loaded, if you have it as a module, and then you export it using nbd. From there, you get a device you can mount just like any other. I’d explain it, but you really shouldn’t be taking this as instructions. Still, if you need to do it, [shamil] has a good, concise explanation.

Of course, the new VM won’t boot. You have to bind mount all the running directories (like /run and /proc) to the right mountpoint and then chroot into the mounted file system. Once there, you can rebuild your init image and run grub. After that, you should be able to boot into the old Neon system in the new VM.

The Beauty of It…

It has been a while since I’ve installed Linux from a CD, but you still have an ISO file.

So at this point, I had not made any changes to my main OS. I had a copy of it for backup purposes, and I was able to boot into a clone of it using a VM. I could also boot into the target system with a different VM.

The next step was to boot to a live image again and nuke nearly everything on the root file system except for /NEON, and the VMs, of course, which were on separate drives.

I thought about running the Tumbleweed installer and then copying files from the VM, but instead I decided to just do it by hand. I copied the files from the new VM over to the real root drive, using nbd again. Then I had to do the whole bind/mount/chroot/reinstall steps again.

Did It Boot?

It did, in fact, boot up. There were a few glitches, mostly due to self-inflicted problems. When I restored some large directories and some SSD-based temporary directories, I created some SELinux problems that were fun to track down. I had, of course, forgotten a few things installed deeply, too. But that wasn’t a problem. I could still go grab stuff from /NEON or even boot the Neon install up in the VM to compare things.

I am about to the point where I will delete the extra copies of things. I’ve already released the Tumbleweed VM. But it occurs to me: I won’t do this again. That leads to my question for you. If you distro hop, how do you do it? Let us know in the comments. Then again, current thinking is to have a minimal system and then put everything in its own container anyway.

Again, I beg you, don’t follow my example. This was way too much work and risk. But I’m also crazy enough to relocate /usr.

 

This articles is written by : Nermeen Nabil Khear Abdelmalak

All rights reserved to : USAGOLDMIES . www.usagoldmines.com

You can Enjoy surfing our website categories and read more content in many fields you may like .

Why USAGoldMines ?

USAGoldMines is a comprehensive website offering the latest in financial, crypto, and technical news. With specialized sections for each category, it provides readers with up-to-date market insights, investment trends, and technological advancements, making it a valuable resource for investors and enthusiasts in the fast-paced financial world.