Moved /home to new RAID disk, how do I move additional directories?

…sorry, should have posted to the “discussion” area…

working my way through setting up my computer. Following suggestions I have moved my /home to a new RAID disk, using directions in the link below, and it all seems to be fine. I have additional directories under /, namely /apps and /media, that I would also like to move to the new disk.

The new disk currently has one extended partition with one logical partition for /home. I am assuming one way to do it is to make additional logical partitions for /apps and /media on the new disk and follow the same procedure I did for /home. However, while I had /home, /apps, /media all under /, I did not have to specify a partition for each, and each could grow as they needed all within /.

That is sort of what I was hoping to have in the new disk – i.e. /home, /apps, /media all within the same partition so I did not have to specify a storage size for them, and they could grow as they needed all within one partition being equal to the size of the extended partition, which right now is the size of the disk. Am I making sense ?..

…am thinking that since /home, /apps, and /media will not be under the partition for /, I may have to bite the bullet and make additional logincal partitions in the extended partition of the new disk… ?

Cheers!

That would by far be the easiest & cleanest solution. If you make your logical volumes for /home, /media & /apps smaller than the size of your disk, you can simply enlarge them later if you run out of space. That way, you don’t have to predict right now which one will end up needing how much space. So suppose you have a 1TB disk, and your directories right now only need 10GB, you could make the three partitions 20GB each, and then if any of them needs more space at any point, you simply enlarge that partition, and LVM will take care of actually arranging the data on the disk.

If for some reason you do not want to do that, you could

  • put all three on one partition and mount it elsewhere, say to /mnt
  • create links from /mnt/(home|apps|media) to /(home|apps|media) so that your paths still are as expected

or use btrfs as your filesystem, which can create mountable subvolumes of undefined size.

1 Like

You don’t. Just create one big partition to hold all your data. Mount that partition somewhere, for the sake of discussion, lets say it is mounted at /data. Then create sub-directories for apps/media/whatever and move the data into those sub-directories.

You can then optionally symlink the directories to wherever you want them in the filesystem(if you wanted to)

The only exception for me would be /home. You can still put the data under /data/home but instead of symlinking it /home, I would use a bind mount so systemd can manage it. To do this you would add a line in /etc/fstab like this:

/data/home /home none defaults,bind 0 0
4 Likes

Thank you again dalto. I’ve also thought of putting the /apps, and /media directories just under /home, along with my user directory.

Sorry for the delayed reply, but am in a bit of a panic now, please see new post, as I am unable to boot and have been trying to figure it out the last couple of days.

1 Like

…Thank you lcts and sorry for the delay, totally had missed your note. What you mention sounds good, but I do not have LVMs – I figured I did not need it, and thought all would be simpler without them. I had some issues with them back in F14, can’t recall what it was, and I just wanted to keep it simple with msdos partitions. Maybe I will consider LVMs next time around.

Cheers

Right, I read ‘logical partition’ and my mind somehow said ‘logical volume’…

I have /home symlinked to /data/raid/home in the passed and still to this day.

Could you please explain what kind of issues I may run into by symlinking instead of using bind mount?

If you have a lot of mounts that depend on each other systemd will manage them in the right order. For example, making sure that /home is mounted prior to trying to mount /home/bob/Documents

The same is true for anything else that needs to wait until /home is mounted before it can run.

I have used symlinks in the past and it has worked but I like a bind mount for that scenario. That being said, it isn’t a requirement. Like everything else in Linux there are many different ways to tackle a problem and we all have our preferences. :grin:

2 Likes

It is a very interesting and useful discussion at least for me,:slightly_smiling_face: and I hope it will be useful to other people. Thanks!