Relocating Root

From what I have read / research and seen in the files file fstab moving the Root partition is not easy. What I would like to do is move my Root partition on my dual-boot disk (sda6) to a spare disk at sda1 or 2 and not dual-boot.
It seems a lot is hard coded as to where Root is located like UUID, as well as Home. Swap looks like it is easy to turn off, update fstab, and turn back on. Root is a Mint 18.3 system.
Any suggestions or is it just easier to re-install?

1 Like

I don’t know why apparently many users experience it like that. In fact, I have cloned so many Linux installations before and somehow it always managed to boot, even from very different HDDs.

1 Like

Your secret. Care to share with the rest of us?

Well, cloning is a bit by bit replication. Maybe it would work if you would clone the / part bit by bit. If it doesn’t have a dedicated partition, then I think it wouldn’t be worth the manual research of how much you need to clone bit by bit of the whole main partition.

are / and /home on separate partitions?

1 Like

Care to give a step by step example of relocating root from one HDD to a different HDD with a different sda number from one disk to the other. You done it to “so many Linux installations” that it should be easy to list here.

Counting a metric ton of potatoes in a huge container is also very easy. Anyone could do it.

Is 1 of many ways to do it. It’s basically just a cloning operation. If you want to clone only a specific part of the disk, you have to know the start and end blocks of this portion. This way pretty much relies on at least a partition dedicated to the part of the system you want to replicate. E.g. /.

Wow, that’s great and so easy “Cloning”. I get a huge container and just clone the ton of potatoes!

But seriouly, @Akito, your knowledge of Linux is far ahead of mine. Maybe in 3 to 5 years, once I’ll learn a lot more about Linux, I will come back to your post and maybe, just maybe, understand it.
Since you answer my question, even tho I don’t understand it, I will mark this solved.

There is nothing much to understand. It’s just cloning a disk bit by bit. Just imagine an exact copy of your disk to your other disk. That’s already it.

I’m sorry I was so caught up on an answer, I thought this question was for Akito, even tho it was a reply to me. I did not mean to ignore.
Yes, ‘/’, swap, and /home are on separate partitions. Like on sda6, sda8, and sda9. I wanted to move them to sda1, sda2, and sda3 on another HDD. And again from dual boot to single boot. “Cloning” seem to be an answer, but I have little faith in it. I just don’t see how it would change the physical descriptors within the files.

1 Like

If you want to move the contents of your entire disk anyway, then just clone the entire disk.

Don’t knock it, before you try it.

2 Likes

it would seem to me after you clone /, you would have to make some edits to with grub.cfg to get it to boot from the clone instead of the original. for example mine contains the line:

set root='hd0,gpt1

(pointing to my first drive, first [guid] partition) followed by an if/else statement that references the uuid three different times.

if that boot is successful, i think this link gives a good idea about how to switch the /home partition.

there are definitely a lot of moving parts and some complexity involved. i would have a good full-system image from clonezilla on an external drive myself before doing that much work just in case.

2 Likes

or would update-grub find and list both? and fstab to consider. moving parts aplenty :slight_smile:

I’m wondering. :thinking: Is it grub that puts the boot strap on the disk?
I may have some time tonight to play around with clone, grub, and fstab. I have a space HDD to work with.

@Akito, let me take a bow to the wizard and give a sincere “Thank you”.
Cloning works! I used a Clonezilla USB and clone the partitions disk to disk.

Source Target mountpoint
sda9 20GB sda1 25GB /
sda7 47GB sda2 50GB /home
sda5 6GB swap – did not clone
SSD HDD Disk Hardware
0:12m 1:55m boot time

fstab in /etc updated correctly.
Condition of HDD before cloning - It had a bootable install of Linux in the partitions defined at target.
Only have 1 minor problem and 1 minor concern so far.
Problem - grub menu still shows Windows as boot option. I need to remove Windows option and update grub. There is no Windows on this HDD.
Concern - long boot time. It’s a SSD vs HDD but from 12 seconds to almost 2 minutes seems a bit long. I am wondering if 2 minutes is normal for a HDD or is Linux correcting things on the fly.

@easyt50 Post the output of

sudo fdisk -l | grep -A 7 /dev/sd

Output as requested from you post.
easyt50@x220 ~ $ sudo fdisk -l | grep -A 7 /dev/sd
[sudo] password for easyt50:
Partition 2 does not start on physical sector boundary.
Disk /dev/sda: 465.8 GiB, 500107862016 bytes, 976773168 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: dos
Disk identifier: 0x32aa285c

Device Boot Start End Sectors Size Id Type
/dev/sda1 * 2048 52436159 52434112 25G 83 Linux
/dev/sda2 964429822 976771071 12341250 5.9G 5 Extended
/dev/sda3 52436160 159348734 106912575 51G 83 Linux
/dev/sda5 964429824 976771071 12341248 5.9G 82 Linux swap / Solaris

Partition table entries are not in disk order.

Where is the SSD?

…
.
.
.
…

SSD as requested.
easyt50@x220 ~ $ sudo fdisk -l | grep -A 7 /dev/sd
[sudo] password for easyt50:
Disk /dev/sda: 447.1 GiB, 480103981056 bytes, 937703088 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x0001fbea

Device Boot Start End Sectors Size Id Type
/dev/sda1 2048 206847 204800 100M 7 HPFS/NTFS/exFAT
/dev/sda2 206848 104888384 104681537 49.9G 7 HPFS/NTFS/exFAT
/dev/sda3 104888453 937697984 832809532 397.1G f W95 Ext’d (LBA)
/dev/sda5 104888455 115378829 10490375 5G 7 HPFS/NTFS/exFAT
/dev/sda6 189259776 209018879 19759104 9.4G 83 Linux
/dev/sda7 209021784 308303414 99281631 47.3G 83 Linux
/dev/sda8 308303482 937697984 629394503 300.1G 7 HPFS/NTFS/exFAT
/dev/sda9 * 115380224 157372411 41992188 20G 83 Linux
/dev/sda10 157374464 169244671 11870208 5.7G 82 Linux swap / Solaris

Partition table entries are not in disk order.