Lots of knowledgeable people prefer using Logical Volumes over traditional partitions to store their data for this very reason. Using logical volumes, it is quite easy to shrink or grow a volume by adding or removing devices from the volume using the LVM tools commonly found in all main stream Linux distributions.
Using LVM will ensure that you can change the size of your volume on the fly without any data loss.
Moving on, it is possible to migrate data from the filled up partition to other partitions on the same disk or an entirely different disk all together but there is a method to the madness.
Martin Brown explains how you can move your data (entire directory structure) from one partition to another. The reasons for doing so could be as mundane as making some space in the partition, to something hoary like side stepping an impending fault in the device containing the data.
The process of moving date can be done in a system running in single user mode, or a live and running system where you need to ensure that the files are available during the move.
And he lists out 8 steps to accomplish the task at hand. They are as follows:
- Choose the data to be copied
- Create a new partition
- Create a new file system on the partition
- Mount the partition on a temporary directory
- Copy the data to the temporary directory
- Rename the original directory
- Create the new mount point. And finally ...
- Mount the file system.
Read the article.