Skip to content

Instantly share code, notes, and snippets.

@pramodbiradar89
Last active August 29, 2015 14:06
Show Gist options
  • Save pramodbiradar89/b4363d764a5852c3c8df to your computer and use it in GitHub Desktop.
Save pramodbiradar89/b4363d764a5852c3c8df to your computer and use it in GitHub Desktop.
/dev/sda1 /dev/sda
/dev/sda2 /dev/sda
/dev/RHEl6 pv:/dev/sda2
pv:/dev/sda2 /dev/sda2
/dev/mapper/RHEl6-lv_root /dev/RHEl6
/dev/mapper/RHEl6-lv_swap /dev/RHEl6
fs:/ /dev/mapper/RHEl6-lv_root
fs:/boot /dev/sda1
fs:/boot fs:/
swap:/dev/mapper/RHEl6-lv_swap /dev/mapper/RHEl6-lv_swap
disk /dev/sda 17179869184 msdos
part /dev/sda 524288000 1048576 primary boot /dev/sda1
part /dev/sda 16654532608 525336576 primary lvm /dev/sda2
lvmdev /dev/vg_RHEl6 /dev/sda2 kfW8hC-cod6-KpJI-KBCR-CB3D-QYgc-Q8vz6L 32528384
lvmgrp /dev/vg_RHEl6 4096 3970 16261120
lvmvol /dev/vg_RHEl6 lv_root 2962 24264704
lvmvol /dev/vg_RHEl6 lv_swap 1008 8257536
fs /dev/mapper/vg_RHEl6-lv_root / ext4 uuid=4deec41e-778d-4d93-9ab5-e0db86ebd7a1 label= blocksize=4096 reserved_blocks=4% max_mounts=-1 check_interval=0d bytes_per_inode=16370 default_mount_options=user_xattr,acl options=rw
fs /dev/sda1 /boot ext4 uuid=0c0738f7-02ce-4981-a102-215c238c4ccd label= blocksize=1024 reserved_blocks=5% max_mounts=-1 check_interval=0d bytes_per_inode=4095 default_mount_options=user_xattr,acl options=rw
swap /dev/mapper/vg_RHEl6-lv_swap uuid=eef6c338-2d64-4bd9-b748-ab862a44cfba label=
#!/bin/bash
LogPrint "Start system layout restoration."
mkdir -p /mnt/local
if create_component "vgchange" "rear" ; then
lvm vgchange -a n >&8
component_created "vgchange" "rear"
fi
set -e
set -x
if create_component "/dev/sda" "disk" ; then
# Create /dev/sda (disk)
Log "Erasing MBR of disk /dev/sda"
dd if=/dev/zero of=/dev/sda bs=512 count=1
sync
LogPrint "Creating partitions for disk /dev/sda (msdos)"
parted -s /dev/sda mklabel msdos >&2
sleep 1
parted -s /dev/sda mkpart '"primary"' 32768B 524320767B >&2
sleep 1
parted -s /dev/sda set 1 boot on >&2
parted -s /dev/sda mkpart '"primary"' 524324864B 17178857471B >&2
sleep 1
parted -s /dev/sda set 2 lvm on >&2
partprobe -s /dev/sda >&2
# Wait some time before advancing
sleep 10
# Make sure device nodes are visible (eg. in RHEL4)
my_udevtrigger
my_udevsettle
component_created "/dev/sda" "disk"
else
LogPrint "Skipping /dev/sda (disk) as it has already been created."
fi
if create_component "/dev/sda1" "part" ; then
# Create /dev/sda1 (part)
component_created "/dev/sda1" "part"
else
LogPrint "Skipping /dev/sda1 (part) as it has already been created."
fi
if create_component "/dev/sda2" "part" ; then
# Create /dev/sda2 (part)
component_created "/dev/sda2" "part"
else
LogPrint "Skipping /dev/sda2 (part) as it has already been created."
fi
if create_component "pv:/dev/sda2" "lvmdev" ; then
# Create pv:/dev/sda2 (lvmdev)
LogPrint "Creating LVM PV /dev/sda2"
lvm vgchange -a n vg_RHEl6 || true
lvm pvcreate -ff --yes -v --uuid "kfW8hC-cod6-KpJI-KBCR-CB3D-QYgc-Q8vz6L" /dev/sda2 >&2
component_created "pv:/dev/sda2" "lvmdev"
else
LogPrint "Skipping pv:/dev/sda2 (lvmdev) as it has already been created."
fi
if create_component "/dev/vg_RHEl6" "lvmgrp" ; then
# Create /dev/vg_RHEl6 (lvmgrp)
LogPrint "Creating LVM VG vg_RHEl6"
if [ -e "/dev/vg_RHEl6" ] ; then
rm -rf "/dev/vg_RHEl6"
fi
lvm vgcreate --physicalextentsize 4096k vg_RHEl6 /dev/sda2 >&2
lvm vgchange --available y vg_RHEl6 >&2
component_created "/dev/vg_RHEl6" "lvmgrp"
else
LogPrint "Skipping /dev/vg_RHEl6 (lvmgrp) as it has already been created."
fi
if create_component "/dev/mapper/vg_RHEl6-lv_root" "lvmvol" ; then
# Create /dev/mapper/vg_RHEl6-lv_root (lvmvol)
LogPrint "Creating LVM volume vg_RHEl6/lv_root"
lvm lvcreate -l 2962 -n lv_root vg_RHEl6 >&2
component_created "/dev/mapper/vg_RHEl6-lv_root" "lvmvol"
else
LogPrint "Skipping /dev/mapper/vg_RHEl6-lv_root (lvmvol) as it has already been created."
fi
if create_component "/dev/mapper/vg_RHEl6-lv_swap" "lvmvol" ; then
# Create /dev/mapper/vg_RHEl6-lv_swap (lvmvol)
LogPrint "Creating LVM volume vg_RHEl6/lv_swap"
lvm lvcreate -l 1008 -n lv_swap vg_RHEl6 >&2
component_created "/dev/mapper/vg_RHEl6-lv_swap" "lvmvol"
else
LogPrint "Skipping /dev/mapper/vg_RHEl6-lv_swap (lvmvol) as it has already been created."
fi
if create_component "fs:/" "fs" ; then
# Create fs:/ (fs)
LogPrint "Creating ext4-filesystem / on /dev/mapper/vg_RHEl6-lv_root"
mkfs -t ext4 -b 4096 -i 16370 /dev/mapper/vg_RHEl6-lv_root >&2
tune2fs -U 4deec41e-778d-4d93-9ab5-e0db86ebd7a1 /dev/mapper/vg_RHEl6-lv_root >&2
tune2fs -m 4 -c -1 -i 0d -o user_xattr,acl /dev/mapper/vg_RHEl6-lv_root >&2
LogPrint "Mounting filesystem /"
mkdir -p /mnt/local/
mount -o rw /dev/mapper/vg_RHEl6-lv_root /mnt/local/
component_created "fs:/" "fs"
else
LogPrint "Skipping fs:/ (fs) as it has already been created."
fi
if create_component "fs:/boot" "fs" ; then
# Create fs:/boot (fs)
LogPrint "Creating ext4-filesystem /boot on /dev/sda1"
mkfs -t ext4 -b 1024 -i 4095 /dev/sda1 >&2
tune2fs -U 0c0738f7-02ce-4981-a102-215c238c4ccd /dev/sda1 >&2
tune2fs -m 5 -c -1 -i 0d -o user_xattr,acl /dev/sda1 >&2
LogPrint "Mounting filesystem /boot"
mkdir -p /mnt/local/boot
mount -o rw /dev/sda1 /mnt/local/boot
component_created "fs:/boot" "fs"
else
LogPrint "Skipping fs:/boot (fs) as it has already been created."
fi
if create_component "swap:/dev/mapper/vg_RHEl6-lv_swap" "swap" ; then
# Create swap:/dev/mapper/vg_RHEl6-lv_swap (swap)
LogPrint "Creating swap on /dev/mapper/vg_RHEl6-lv_swap"
mkswap -U eef6c338-2d64-4bd9-b748-ab862a44cfba /dev/mapper/vg_RHEl6-lv_swap >&2
component_created "swap:/dev/mapper/vg_RHEl6-lv_swap" "swap"
else
LogPrint "Skipping swap:/dev/mapper/vg_RHEl6-lv_swap (swap) as it has already been created."
fi
set +x
set +e
LogPrint "Disk layout created."
#!/bin/bash
LogPrint "Start system layout restoration."
mkdir -p /mnt/local
if create_component "vgchange" "rear" ; then
lvm vgchange -a n >&8
component_created "vgchange" "rear"
fi
set -e
set -x
if create_component "/dev/sda" "disk" ; then
# Create /dev/sda (disk)
Log "Erasing MBR of disk /dev/sda"
dd if=/dev/zero of=/dev/sda bs=512 count=1
sync
LogPrint "Creating partitions for disk /dev/sda (msdos)"
parted -s /dev/sda mklabel msdos >&2
sleep 1
parted -s /dev/sda mkpart '"primary"' 32768B 524320767B >&2
sleep 1
parted -s /dev/sda set 1 boot on >&2
parted -s /dev/sda mkpart '"primary"' 524324864B 17178857471B >&2
sleep 1
parted -s /dev/sda set 2 lvm on >&2
partprobe -s /dev/sda >&2
# Wait some time before advancing
sleep 10
# Make sure device nodes are visible (eg. in RHEL4)
my_udevtrigger
my_udevsettle
component_created "/dev/sda" "disk"
else
LogPrint "Skipping /dev/sda (disk) as it has already been created."
fi
if create_component "/dev/sda1" "part" ; then
# Create /dev/sda1 (part)
component_created "/dev/sda1" "part"
else
LogPrint "Skipping /dev/sda1 (part) as it has already been created."
fi
if create_component "/dev/sda2" "part" ; then
# Create /dev/sda2 (part)
component_created "/dev/sda2" "part"
else
LogPrint "Skipping /dev/sda2 (part) as it has already been created."
fi
if create_component "pv:/dev/sda2" "lvmdev" ; then
# Create pv:/dev/sda2 (lvmdev)
LogPrint "Creating LVM PV /dev/sda2"
lvm vgchange -a n vg_RHEl6 || true
lvm pvcreate -ff --yes -v --uuid "kfW8hC-cod6-KpJI-KBCR-CB3D-QYgc-Q8vz6L" /dev/sda2 >&2
component_created "pv:/dev/sda2" "lvmdev"
else
LogPrint "Skipping pv:/dev/sda2 (lvmdev) as it has already been created."
fi
if create_component "/dev/vg_RHEl6" "lvmgrp" ; then
# Create /dev/vg_RHEl6 (lvmgrp)
LogPrint "Creating LVM VG vg_RHEl6"
if [ -e "/dev/vg_RHEl6" ] ; then
rm -rf "/dev/vg_RHEl6"
fi
lvm vgcreate --physicalextentsize 4096k vg_RHEl6 /dev/sda2 >&2
lvm vgchange --available y vg_RHEl6 >&2
component_created "/dev/vg_RHEl6" "lvmgrp"
else
LogPrint "Skipping /dev/vg_RHEl6 (lvmgrp) as it has already been created."
fi
if create_component "/dev/mapper/vg_RHEl6-lv_root" "lvmvol" ; then
# Create /dev/mapper/vg_RHEl6-lv_root (lvmvol)
LogPrint "Creating LVM volume vg_RHEl6/lv_root"
lvm lvcreate -l 2962 -n lv_root vg_RHEl6 >&2
component_created "/dev/mapper/vg_RHEl6-lv_root" "lvmvol"
else
LogPrint "Skipping /dev/mapper/vg_RHEl6-lv_root (lvmvol) as it has already been created."
fi
if create_component "/dev/mapper/vg_RHEl6-lv_swap" "lvmvol" ; then
# Create /dev/mapper/vg_RHEl6-lv_swap (lvmvol)
LogPrint "Creating LVM volume vg_RHEl6/lv_swap"
lvm lvcreate -l 1008 -n lv_swap vg_RHEl6 >&2
component_created "/dev/mapper/vg_RHEl6-lv_swap" "lvmvol"
else
LogPrint "Skipping /dev/mapper/vg_RHEl6-lv_swap (lvmvol) as it has already been created."
fi
if create_component "fs:/" "fs" ; then
# Create fs:/ (fs)
LogPrint "Creating ext4-filesystem / on /dev/mapper/vg_RHEl6-lv_root"
mkfs -t ext4 -b 4096 -i 16370 /dev/mapper/vg_RHEl6-lv_root >&2
tune2fs -U 4deec41e-778d-4d93-9ab5-e0db86ebd7a1 /dev/mapper/vg_RHEl6-lv_root >&2
tune2fs -m 4 -c -1 -i 0d -o user_xattr,acl /dev/mapper/vg_RHEl6-lv_root >&2
LogPrint "Mounting filesystem /"
mkdir -p /mnt/local/
mount -o rw /dev/mapper/vg_RHEl6-lv_root /mnt/local/
component_created "fs:/" "fs"
else
LogPrint "Skipping fs:/ (fs) as it has already been created."
fi
if create_component "fs:/boot" "fs" ; then
# Create fs:/boot (fs)
LogPrint "Creating ext4-filesystem /boot on /dev/sda1"
mkfs -t ext4 -b 1024 -i 4095 /dev/sda1 >&2
tune2fs -U 0c0738f7-02ce-4981-a102-215c238c4ccd /dev/sda1 >&2
tune2fs -m 5 -c -1 -i 0d -o user_xattr,acl /dev/sda1 >&2
LogPrint "Mounting filesystem /boot"
mkdir -p /mnt/local/boot
mount -o rw /dev/sda1 /mnt/local/boot
component_created "fs:/boot" "fs"
else
LogPrint "Skipping fs:/boot (fs) as it has already been created."
fi
if create_component "swap:/dev/mapper/vg_RHEl6-lv_swap" "swap" ; then
# Create swap:/dev/mapper/vg_RHEl6-lv_swap (swap)
LogPrint "Creating swap on /dev/mapper/vg_RHEl6-lv_swap"
mkswap -U eef6c338-2d64-4bd9-b748-ab862a44cfba /dev/mapper/vg_RHEl6-lv_swap >&2
component_created "swap:/dev/mapper/vg_RHEl6-lv_swap" "swap"
else
LogPrint "Skipping swap:/dev/mapper/vg_RHEl6-lv_swap (swap) as it has already been created."
fi
set +x
set +e
LogPrint "Disk layout created."
done /dev/sda disk
done /dev/sda1 part
done /dev/sda2 part
done pv:/dev/sda2 lvmdev
done /dev/vg_RHEl6 lvmgrp
done /dev/mapper/vg_RHEl6-lv_root lvmvol
done /dev/mapper/vg_RHEl6-lv_swap lvmvol
done fs:/ fs
done fs:/boot fs
done swap:/dev/mapper/vg_RHEl6-lv_swap swap
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment