Monday, November 9, 2015

Moving a volume group to another system

- Moving a volume group to another system

It is quite easy to move a whole volume group to another system if, for example, a user department acquires a new server. To do this we use the vgexport and vgimport commands.

Notevgexport/vgimport is not necessary to move drives from one system to another. It is an administrative policy tool to prevent access to volumes in the time it takes to move them.

1. Unmount the file system

First, make sure that no users are accessing files on the active volume, then unmount it. Here the mount point directory is /mnt/temp1.

# unmount /mnt/temp1
          

2. Mark the volume group inactive

Marking the volume group inactive removes it from the kernel and prevents any further activity on it.Here users is the volume group name.

# vgchange -an users
vgchange -- volume group "users" successfully deactivated
          

3. Export the volume group

It is now necessary to export the volume group. This prevents it from being accessed on the ``old'' host system and prepares it to be removed.

# vgexport users
vgexport -- volume group "users" successfully exported
          
When the machine is next shut down, the disk can be unplugged and then connected to it's new machine

4. Import the volume group

When plugged into the new system it becomes /dev/sdb so an initial pvscan shows:

# pvscan
pvscan -- reading all physical volumes (this may take a while...)
pvscan -- inactive PV "/dev/sdb1"  is in EXPORTED VG "users" [996 MB / 996 MB free]
pvscan -- inactive PV "/dev/sdb2"  is in EXPORTED VG "users" [996 MB / 244 MB free]
pvscan -- total: 2 [1.95 GB] / in use: 2 [1.95 GB] / in no VG: 0 [0]
          
We can now import the volume group (which also activates it) and mount the file system.
If you are importing on an LVM 2 system, run:

# vgimport users
  Volume group "users" successfully imported
          
If you are importing on an LVM 1 system, add the PVs that need to be imported:

# vgimport users /dev/sdb1 /dev/sdb2
vgimport -- doing automatic backup of volume group "users"
vgimport -- volume group "users" successfully imported and activated
          

5. Activate the volume group

You must activate the volume group before you can access it.

# vgchange -ay users
          

6. Mount the file system


# mkdir -p /mnt/temp1
# mount /dev/users/lv00 /mnt/temp1
          
The file system is now available for use.