If I have /home on a separate partition, how can I move it back to the root partition?
Some Linux users prefer to have /home
mounted on a separate partition from the filesystem root, while others prefer a unified partition. I can find plenty of tutorials out there for moving /home
onto a new partition, starting with a unified one. But what if I wanted to go backwards?
Say for example that I initially installed Linux with a small /
partition and a larger /home
partition, expecting that I'd want to be able to store large files in my home directories while keeping the system isolated (perhaps even with the plan of using additional small partitions for distro-hopping). But then later I moved my large files to a separate drive, and realized that various config files in /home
aren't compatible across the distros I want to try. So now the partitioning is just an impediment, and I'd be better off with the now-small home directories physically on the root partition. How could I do that? Obviously if I just unmount the home partition I'll lose access to those files - they won't be magically copied back. And as it stands I can't use tools like cp
to copy them back, because that just uses file system paths, and the file system abstracts over those partitions - I can't copy from "the root of the /home
partition" to "the home
directory on the /
partition", because both of those are "/home
".
1 answer
A general overview:
- Log in as root directly, no
sudo
orsu
(you may need to activate it temporarily, depending on your distribution) or boot from a live system - unmount
/home
and mount it somewhere else ( e.g./mnt/
) - move your data from your temporary mountpoint to
/home
- unmount and delete your home partition
- grow the root partition to use the freed space (how exactly depends on the partition layout and if lvm is used or not)
- extend the filesystem of the root partition for new new size (how exactly depends on the used filesystem)
- log out as root and log in as your regular user again
- (disable root user again)
0 comment threads