fickit: Handle raid and non-raid setup
This commit is contained in:
parent
f61b0a8e47
commit
152bbe178f
5 changed files with 94 additions and 31 deletions
|
|
@ -15,6 +15,17 @@ files:
|
|||
- path: /init
|
||||
contents: |
|
||||
#!/bin/sh
|
||||
modprobe xhci_pci
|
||||
modprobe ahci
|
||||
modprobe megaraid_sas
|
||||
modprobe e1000e
|
||||
modprobe tg3
|
||||
modprobe bnxt_en
|
||||
|
||||
echo -n "Waiting module loading... "
|
||||
sleep 3
|
||||
echo
|
||||
|
||||
mount -t devtmpfs none /dev
|
||||
mount -t proc none /proc
|
||||
mount -t sysfs none /sys
|
||||
|
|
@ -22,6 +33,20 @@ files:
|
|||
mdev -s
|
||||
mdadm --auto-detect
|
||||
|
||||
if [ -b /dev/sdb ]; then
|
||||
DISKS="/dev/sda /dev/sdb"
|
||||
BOOT_PART=/dev/md2
|
||||
SWAP_PART=/dev/md1
|
||||
ROOT_PART=/dev/md0
|
||||
RAID=1
|
||||
else
|
||||
DISKS="/dev/sda"
|
||||
BOOT_PART=/dev/sda1
|
||||
SWAP_PART=/dev/sda2
|
||||
ROOT_PART=/dev/sda3
|
||||
RAID=0
|
||||
fi
|
||||
|
||||
ip a add 10.10.10.5/29 dev eth0
|
||||
ip link set eth0 up
|
||||
|
||||
|
|
@ -29,12 +54,15 @@ files:
|
|||
if ip l | grep eth3 > /dev/null
|
||||
then
|
||||
DEFAULT_BOOT=1
|
||||
echo "Detected: FRONTEND host"
|
||||
echo -n "Detected: FRONTEND host "
|
||||
else
|
||||
DEFAULT_BOOT=0
|
||||
echo "Detected: BACKEND host"
|
||||
echo -n "Detected: BACKEND host "
|
||||
fi
|
||||
|
||||
[ "${RAID}" -eq 1 ] && echo "with RAID setup" || echo "without raid"
|
||||
|
||||
echo
|
||||
read -p "Proceed? (y/N/Front/Back) " V
|
||||
if [ "$V" == "F" ] || [ "$V" == "f" ]; then
|
||||
DEFAULT_BOOT=1
|
||||
|
|
@ -46,35 +74,45 @@ files:
|
|||
done
|
||||
fi
|
||||
|
||||
cat /etc/fdisk_cmd | fdisk /dev/sda &&
|
||||
cat /etc/fdisk_cmd | fdisk /dev/sdb &&
|
||||
cat /etc/sfdisk_schema | sfdisk --force /dev/sda &&
|
||||
cat /etc/sfdisk_schema | sfdisk --force /dev/sdb
|
||||
# Create partition table and boot records
|
||||
for DISK in ${DISKS}
|
||||
do
|
||||
cat /etc/fdisk_cmd | fdisk "${DISK}" &&
|
||||
cat /etc/sfdisk_schema | sfdisk --force "${DISK}" ||
|
||||
/bin/ash
|
||||
done
|
||||
|
||||
/sbin/mdadm --create /dev/md2 --run --level=1 --metadata=1.0 --raid-devices=2 /dev/sda1 /dev/sdb1
|
||||
/sbin/mdadm --create /dev/md1 --run --level=1 --metadata=1.1 --raid-devices=2 /dev/sda2 /dev/sdb2
|
||||
/sbin/mdadm --create /dev/md0 --run --level=1 --metadata=0 --raid-devices=2 /dev/sda3 /dev/sdb3
|
||||
# Create RAID arrays
|
||||
if [ "${RAID}" -eq 1 ]; then
|
||||
/sbin/mdadm --create "${BOOT_PART}" --run --level=1 --metadata=1.0 --raid-devices=2 /dev/sda1 /dev/sdb1
|
||||
/sbin/mdadm --create "${SWAP_PART}" --run --level=1 --metadata=1.1 --raid-devices=2 /dev/sda2 /dev/sdb2
|
||||
/sbin/mdadm --create "${ROOT_PART}" --run --level=1 --metadata=0 --raid-devices=2 /dev/sda3 /dev/sdb3
|
||||
fi
|
||||
|
||||
mkswap /dev/md1
|
||||
#mkfs.ext4 -F /dev/md0
|
||||
cryptsetup -q -s 512 luksFormat /dev/md0 /etc/dm-crypt/key
|
||||
cryptsetup luksOpen -d /etc/dm-crypt/key /dev/md0 crypt_fic
|
||||
# Format partitions
|
||||
mkswap "${SWAP_PART}"
|
||||
#mkfs.ext4 -F "${ROOT_PART}"
|
||||
cryptsetup -q -s 512 luksFormat "${ROOT_PART}" /etc/dm-crypt/key
|
||||
cryptsetup luksOpen -d /etc/dm-crypt/key "${ROOT_PART}" crypt_fic
|
||||
mkfs.ext4 -F /dev/mapper/crypt_fic
|
||||
sync
|
||||
|
||||
mkfs.vfat /dev/md2
|
||||
mkfs.vfat "${BOOT_PART}"
|
||||
mkdir -p /boot
|
||||
|
||||
mount /dev/md2 /boot/ && {
|
||||
/root/install_grub ${DEFAULT_BOOT} /dev/sda /dev/sdb
|
||||
mount "${BOOT_PART}" /boot/ && {
|
||||
for DISK in ${DISKS}
|
||||
do
|
||||
/root/install_grub ${DEFAULT_BOOT} "${DISK}"
|
||||
done
|
||||
/root/update_imgs
|
||||
} ||
|
||||
/bin/ash
|
||||
|
||||
umount /boot &&
|
||||
sync &&
|
||||
reboot -f
|
||||
sync
|
||||
|
||||
echo "System is ready. You can now reboot."
|
||||
/bin/ash
|
||||
mode: "0755"
|
||||
|
||||
|
|
|
|||
Reference in a new issue