Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/bin/bash
- # Clone drive partition table
- sfdisk -d /dev/sda | sfdisk /dev/sdb
- # Create degraded RAIDs, format, and mount
- mdadm --create /dev/md0 -l raid1 -f -n 1 /dev/sdb3
- mdadm --create /dev/md1 -l raid1 -f -n 1 /dev/sdb4
- mdadm --detail --scan > /etc/mdadm.conf
- mkfs.ext4 /dev/md0
- mkswap /dev/md1
- if [ ! -d "/mnt/md0" ]; then
- mkdir /dev/md0
- fi
- mount /dev/md0 /mnt/md0
- # Get Blkid of EXT4
- NEWROOTUUID=`blkid -o udev /dev/md0 | grep ID_FS_UUID= | sed 's/ID_FS_UUID=//'`
- OLDROOTUUID=`blkid -o udev /dev/sda3 | grep ID_FS_UUID= | sed 's/ID_FS_UUID=//'`
- NEWSWAPUUID=`blkid -o udev /dev/md1 | grep ID_FS_UUID= | sed 's/ID_FS_UUID=//'`
- OLDSWAPUUID=`blkid -o udev /dev/sda4 | grep ID_FS_UUID= | sed 's/ID_FS_UUID=//'`
- echo "Root UUID: Old $OLDROOTUUID - New $NEWROOTUUID"
- echo "Swap UUID: Old $OLDSWAPUUID - New $NEWSWAPUUID"
- # Make appropriate config file changes
- cp /etc/fstab /etc/fstab.bak
- sed -i "s/$OLDROOTUUID/$NEWROOTUUID/g" /etc/fstab
- sed -i "s/LABEL=SWAP/UUID=$NEWSWAPUUID/" /etc/fstab
- cp /etc/sysconfig/bootloader /etc/sysconfig/bootloader.bak
- sed -i "s/$OLDROOTUUID/$NEWROOTUUID/g" /etc/sysconfig/bootloader
- cp /etc/default/grub /etc/default/grub.bak
- sed -i "s/$OLDROOTUUID/$NEWROOTUUID/g" /etc/default/grub
- grub2-mkconfig -o /boot/grub2/grub.cfg
- # Finally copy the file system and update/install grub2
- rsync -avP --numeric-ids --exclude='/dev' --exclude='/proc' --exclude='/sys' --exclude='/mnt' / /mnt/md0
- grub2-install /dev/sda
- grub2-install /dev/sdb
- # On reboot, Select OpenSuSE v.15.1 on /dev/md0
- # The missing bit of magic
Advertisement
Add Comment
Please, Sign In to add comment