Moving LVM volume group from one physical disk onto another
A volume group can have multiple physical disks (or in your case, partitions).
First you need to have space on your larger disk (/dev/sda
).
You did not mention that in your post, but based on your question, I would assume that you can make space and then add a new partition that we shall call: /dev/sdaX
EXTENSION AFTER UPDATE:
You can make space on your /dev/sda
with simply merging the volume groups, but you don't want to do that - as you stated in your original post. What you need to do is actually more simple than that.
Follow these steps:
Step -5: reduce your physical volume on /dev/sda5
to make space for a new partition:
pvresize /dev/sda5 -L 1500G
Step -4: Use parted
to reduce the size of /dev/sda5
to 1600G (yes, a little bit bigger than we used in pvresize
!)
Step -3: Use parted
to create a new partition, /dev/sda6
, with the new available space (it will be around 400G).
Step -2: Check if the kernel could automatically detect the partition change. See if /proc/partition
matches the new state (thus, /dev/sda6
is visible). If not, you need to reboot. (Probably it will.)
Step -1: You can make /dev/sda5
to be as big as it can again:
pvresize /dev/sda5
Step 0: Format /dev/sda6
to a physical volume:
pvcreate /dev/sda6
From this point, /dev/sda6
is our /dev/sdaX
.
EXTENSION END
First: you should give /dev/sdaX
to the volume group tiffany-vg
:
vgextend tiffany-vg /dev/sdaX
Second: you should move all of your data between the (already) two physical volumes of the volume group tiffany-vg:
pvmove tiffany-vg /dev/sdb3 /dev/sdaX
Third: you should remove /dev/sdb3
from the tiffany-vg volume group:
vgreduce tiffany-vg /dev/sdb3
NOTE: The second step above will be a little bit critical, be curious. If it is a root partition, better to do that from a rescue disc. Good luck!
IF YOU SIMPLY MERGED THE VOLUME GROUPS
Step 1: You can simply merge the xen-vg
into your tiffany-vg
:
vgmerge tiffany-vg xen-vg
Step 2: Move all of your data from /dev/sdb3
to /dev/sda5
:
pvmove tiffany-vg /dev/sdb3 /dev/sda5
Step 3: Remove /dev/sdb3
from your new, big volume group:
vgreduce tiffany-vg /dev/sdb3
But beware: here your old, xen-vg
volume group ended his life, and all of its volumes are moved below /dev/tiffany-vg
. You need to change every reference to them in the system configs ( it is unlikely you needed to change anything out of /etc/fstab
).
END
herbert_zer0
Updated on September 18, 2022Comments
-
herbert_zer0 over 1 year
I'm an out-of-my-depth PHP developer who has to deal with the following sysadmin problem.
We have an Ubuntu (Ubuntu 14.04.1 LTS) server running Xen (xen-hypervisor-4.4-amd64 4.4.0-0ubuntu5.1).
It has two physical disks (250GB and 2TB), each containing an LVM filesystem (/dev/sdb is the old 250GB, /dev/sda is the new 2TB).
root@xen:~# pvscan PV /dev/sdb3 VG tiffany-vg lvm2 [232.17 GiB / 85.48 GiB free] PV /dev/sda5 VG xen-vg lvm2 [1.82 TiB / 1.77 TiB free] Total: 2 [2.05 TiB] / in use: 2 [2.05 TiB] / in no VG: 0 [0 ]
I need to move the group "tiffany-vg" to the new/larger disk (/dev/sda), with the aim of removing the older 250GB physical disk from the server. The target disk already contains another LVM group called "xen-vg" which must remain separate.
I want to move "tiffany-vg" to sit next to "xen-vg" on /dev/sda and I really need to not lose any data! I really don't want to cause any data loss?
I have probably used some terminology wrong and I am sure you understand what I am trying to say.
UPDATE:
The "target" disk (/dev/sda) currently looks like this ...
root@xen:~# parted /dev/sda #...snip Number Start End Size Type File system Flags 1 1049kB 256MB 255MB primary ext2 boot 2 257MB 2000GB 2000GB extended 5 257MB 2000GB 2000GB logical lvm
-
Ben Penwell almost 10 yearslooks like someone below have a good answer, but regarding not loosing any data, if you simply create a new volume on the new disk, you could then stop vm, then mount both volumes, and copy everything across, then later at XEN setup, simply point VM to new disk partition (make sure it is not mounted at this point), and start it again.. if problems you can always roll back to old volume that is still there.
-
-
herbert_zer0 almost 10 yearsHi Peter, i added some infor about the "target" disk. Do i need to create another LVM partition on that disk or can i target the Partion #5?
-
peterh almost 10 years@herbert_zer0 It were much simpler and safer to simply merge the volume groups, but you closed this possibility out in your question.
-
peterh almost 10 years@herbert_zer0 I extended my answer with this simple solution, maybe it will be soon enough. Anyways, if you are satisfied with my answer, please don't forget to accept it by clicking the pipe icon on the left side of my answer.
-
MadHatter almost 10 yearsBy "pipe icon" I think Peter means "tick icon" - but yes, you should click it if you're happy with his answer (which is a good and very comprehensive answer, +1 from me!).
-
herbert_zer0 almost 10 yearsPeter, Thanks so much for your help. I went with merging the volume groups. You sir, are a diamond!
-
qxotk over 2 yearsSuggestion: if possible, back up all volumes before making these changes.