===== Split rootvg ===== ==== Scenarios ==== * One physical volume: rootvg must have 9G and appvg must contain only app data. The original disk must be removed and two physical volumes must be added * Several physical volume on rootvg: rootvg must have 9G and appvg must contain only app data, additional physical volumes on rootvg must be removed. ==== Several physical volume ==== {{::text47-5.png?600}} Create a partition en /dev/vdb: $ sudo pvcreate /dev/vdc1 $ sudo vgcreate appvg /dev/vdc1 $ sudo lvcreate -L9.5G -n applv appvg $ sudo mkfs.ext4 /dev/mapper/appvg-applv $ sudo mkdir /app.NEW $ sudo mount /dev/mapper/appvg-applv /app.NEW $ sudo rsync -ahv /app/ /app.NEW/ $ sudo umount /app.NEW $ sudo rm -rf /app/ $ sudo mkdir /app/ $ sudo echo "/dev/mapper/appvg-applv /app ext4 defaults 0 0" >> /etc/fstab $ sudo mount -a $ sudo vgreduce centos /dev/vdb1 $ sudo pvremove /dev/vdb1 Si es necesario cambiar los permisos del directorio /app. Probar sin reiniciar. ==== One physical volume ==== {{::text60.png?600}} === Migrate App data === We will use a simple rsync to copy all the information. Create a partition in the new disk /dev/vdc with fdisk, next create physical volume and volume group with logical volume. $ sudo pvcreate /dev/vdc1 $ sudo vgcreate appvg /dev/vdc1 $ sudo lvcreate -L8.5G -n applv appvg $ sudo mkfs.ext4 /dev/mapper/appvg-applv $ sudo mkdir /app.NEW $ sudo mount /dev/mapper/appvg-applv /app.NEW $ sudo rsync -ahv /app/ /app.NEW/ $ sudo umount /app.NEW/ $ sudo rm -rf /app/ $ sudo mkdir /app/ $ sudo echo "/dev/mapper/appvg-applv /app ext4 defaults 0 0" >> /etc/fstab $ sudo mount -a === Migrate rootvg === You will need reboot the system with boot CD and enter to rescue mode. Skip to shell. Optional, assign IP address: # ip addr add 192.168.122.110/24 dev eth0 # ip route add default via 192.168.122.1 # cd /etc/sshd # cp sshd_config.anaconda sshd_config # /sbin/sshd # vgchange -ay centos # e2fsck -f /dev/mapper/centos-root # lvreduce --resizefs --size 7G /dev/mapper/centos-root Use fdisk to create a /boot partition of 512M on /dev/vdb1 and the physical volume of the rest space on /dev/vdb2. # pvcreate /dev/vdb2 # vgextend centos /dev/vdb2 # pvmove /dev/vda2 # vgreduce centos /dev/vda2 # pvremove /dev/vda2 Reboot $ sudo dd if=/dev/vda1 of=/dev/vdb1 bs=512 conv=noerror,sync $ sudo dd if=/dev/vda of=/dev/vdb bs=1 count=512 $ sudo grub2-install /dev/vdb $ sudo sync