How to merge two partitions?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



If I have two partitions, /dev/sda1 and /dev/sda2, one btrfs, and one ext4 (but I could convert it first), how can I merge them into one filesystem without moving all the data onto an external device and then moving it all back again? (I do have a backup, of course, but transferring the data takes hours, maybe days.)

I'm left with this layout for historical reasons, and now the smaller partition is close to running out of space.

I thought of using "btrfs device add" and just living with the untidy underlying devices, but an experiment with loopback filesystems shows that any data on the new device is silently obliterated (it might be nice if the docs mentioned this!)

I've thought of shrinking the larger partition, creating a third partition, and adding that to the smaller filesystem. This would solve the free-space issue, but doesn't feel great.

I've thought of using a temporary third partition as an intermediary, but I don't have space to move all the data in one go.

I've thought of using a clever partition manager to move the start of the second partition, transfer some data, move it some more, transfer some more data, but this seems like an equally lengthy process.

I could move the data from the smaller partition into the larger one, then delete the first partition, and move the whole larger partition forward, extend it, and fix up the fstab. That might be less painful.

Is there a cunning btrfs trick to do this? Can a btrfs filesystem be extended "backwards", if you see what I mean?

Any other ideas? Comments?

Thanks in advance

Andrew
--
To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux Filesystem Development]     [Linux NFS]     [Linux NILFS]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux