test tweaks
This commit is contained in:
@@ -31,7 +31,7 @@ disks=`dialog --separate-output --no-cancel --no-items --title "Root devices" --
|
|||||||
raidtype=`dialog --no-items --no-cancel --title "Root pool ZFS RAID" --radiolist "Select root pool ZFS RAID type:" 12 35 5 raidz off raidz2 off raidz3 off mirror off none off 2>&1 1>/dev/tty`
|
raidtype=`dialog --no-items --no-cancel --title "Root pool ZFS RAID" --radiolist "Select root pool ZFS RAID type:" 12 35 5 raidz off raidz2 off raidz3 off mirror off none off 2>&1 1>/dev/tty`
|
||||||
hostname=""; while [ -z "$hostname" ]; do hostname=`dialog --no-cancel --inputbox "Hostname:" 8 40 2>&1 >/dev/tty`; done
|
hostname=""; while [ -z "$hostname" ]; do hostname=`dialog --no-cancel --inputbox "Hostname:" 8 40 2>&1 >/dev/tty`; done
|
||||||
nicdevices=""; for nic in $(ip -o link show | awk -F': ' '{print $2}' | grep -v '^lo'); do nicdevices="$nicdevices $nic off"; done
|
nicdevices=""; for nic in $(ip -o link show | awk -F': ' '{print $2}' | grep -v '^lo'); do nicdevices="$nicdevices $nic off"; done
|
||||||
nics=`dialog --separate-output --no-cancel --no-items --title "Network devices for bridge" --checklist "Select the network devices to be bridged" $height $width ${window}$nicdevices 2>&1 1>/dev/tty`
|
nics=`dialog --separate-output --no-cancel --no-items --title "Bridged network devices" --checklist "Select the network devices to be bridged to br0:" $height $width ${window}$nicdevices 2>&1 1>/dev/tty`
|
||||||
admin=""; while [ -z "$admin" ]; do admin=`dialog --no-cancel --inputbox "Admin user:" 8 40 2>&1 >/dev/tty`; done
|
admin=""; while [ -z "$admin" ]; do admin=`dialog --no-cancel --inputbox "Admin user:" 8 40 2>&1 >/dev/tty`; done
|
||||||
rootpassword=`dialog --no-cancel --title "Root password" --insecure --passwordbox "Enter root password:" 8 40 2>&1 1>/dev/tty`
|
rootpassword=`dialog --no-cancel --title "Root password" --insecure --passwordbox "Enter root password:" 8 40 2>&1 1>/dev/tty`
|
||||||
confirmpassword=`dialog --no-cancel --title "Root password confirmation" --insecure --passwordbox "Re-enter root password:" 8 40 2>&1 1>/dev/tty`
|
confirmpassword=`dialog --no-cancel --title "Root password confirmation" --insecure --passwordbox "Re-enter root password:" 8 40 2>&1 1>/dev/tty`
|
||||||
@@ -204,7 +204,6 @@ echo "ln -s /proc/self/mounts /etc/mtab" >> /mnt/setup-chroot.sh
|
|||||||
echo "echo \"Done.\"" >> /mnt/setup-chroot.sh
|
echo "echo \"Done.\"" >> /mnt/setup-chroot.sh
|
||||||
echo "echo \"\"" >> /mnt/setup-chroot.sh
|
echo "echo \"\"" >> /mnt/setup-chroot.sh
|
||||||
echo "echo \"Updating apt repositories on root pool...\"" >> /mnt/setup-chroot.sh
|
echo "echo \"Updating apt repositories on root pool...\"" >> /mnt/setup-chroot.sh
|
||||||
#echo "apt update" >> /mnt/setup-chroot.sh
|
|
||||||
echo 'errors=`apt update 2>&1 1>/dev/null`' >> /mnt/setup-chroot.sh
|
echo 'errors=`apt update 2>&1 1>/dev/null`' >> /mnt/setup-chroot.sh
|
||||||
echo 'if ! [ "$?" = "0" ]; then '>> /mnt/setup-chroot.sh
|
echo 'if ! [ "$?" = "0" ]; then '>> /mnt/setup-chroot.sh
|
||||||
echo ' echo "Failed to update apt repositories on root pool - $errors"' >> /mnt/setup-chroot.sh
|
echo ' echo "Failed to update apt repositories on root pool - $errors"' >> /mnt/setup-chroot.sh
|
||||||
@@ -225,8 +224,8 @@ echo "cp /usr/share/zoneinfo/$timezone /etc/localtime" >> /mnt/setup-chroot.sh
|
|||||||
echo "echo \"Done.\"" >> /mnt/setup-chroot.sh
|
echo "echo \"Done.\"" >> /mnt/setup-chroot.sh
|
||||||
|
|
||||||
echo "echo \"\"" >> /mnt/setup-chroot.sh
|
echo "echo \"\"" >> /mnt/setup-chroot.sh
|
||||||
echo "echo \"Installing linux image, bash, screen, tmux, zfs, dosfstools, openssh...\"" >> /mnt/setup-chroot.sh
|
echo "echo \"Installing linux image, bash, screen, tmux, zfs, dosfstools, openssh, ufw...\"" >> /mnt/setup-chroot.sh
|
||||||
echo "errors=\$(apt install -y --no-install-recommends linux-image-generic 2>&1 1>/dev/null && apt install -y vim bash screen tmux zfs-initramfs dosfstools openssh-server 2>&1 1>/dev/null)" >> /mnt/setup-chroot.sh
|
echo "errors=\$(apt install -y --no-install-recommends linux-image-generic 2>&1 1>/dev/null && apt install -y vim bash screen tmux zfs-initramfs dosfstools openssh-server ufw 2>&1 1>/dev/null)" >> /mnt/setup-chroot.sh
|
||||||
echo 'if ! [ "$?" = "0" ]; then '>> /mnt/setup-chroot.sh
|
echo 'if ! [ "$?" = "0" ]; then '>> /mnt/setup-chroot.sh
|
||||||
echo ' echo "Failed to install preliminary software - $errors"' >> /mnt/setup-chroot.sh
|
echo ' echo "Failed to install preliminary software - $errors"' >> /mnt/setup-chroot.sh
|
||||||
echo " exit 1">> /mnt/setup-chroot.sh
|
echo " exit 1">> /mnt/setup-chroot.sh
|
||||||
@@ -236,9 +235,18 @@ echo "echo \"Done.\"" >> /mnt/setup-chroot.sh
|
|||||||
echo 'echo ""' >> /mnt/setup-chroot.sh
|
echo 'echo ""' >> /mnt/setup-chroot.sh
|
||||||
echo 'echo "Creating EFI partition..."' >> /mnt/setup-chroot.sh
|
echo 'echo "Creating EFI partition..."' >> /mnt/setup-chroot.sh
|
||||||
firstdisk=`echo "$disks" | head -n1`
|
firstdisk=`echo "$disks" | head -n1`
|
||||||
echo "mkdosfs -F 32 -s 1 -n EFI /dev/disk/by-id/${firstdisk}-part2 && mkdir /boot/efi" >> /mnt/setup-chroot.sh
|
echo "error=\$(mkdosfs -F 32 -s 1 -n EFI /dev/disk/by-id/${firstdisk}-part2 2>&1 1>/dev/null && mkdir /boot/efi 2>&1 1>/dev/null)" >> /mnt/setup-chroot.sh
|
||||||
|
echo 'if ! [ "$?" = "0" ]; then '>> /mnt/setup-chroot.sh
|
||||||
|
echo ' echo "Failed to create dos file system for EFI partition - $errors"' >> /mnt/setup-chroot.sh
|
||||||
|
echo " exit 100">> /mnt/setup-chroot.sh
|
||||||
|
echo "fi">> /mnt/setup-chroot.sh
|
||||||
echo "echo PARTUUID=$(blkid -s PARTUUID -o value /dev/disk/by-id/${firstdisk}-part2) /boot/efi vfat nofail,x-systemd.device-timeout=0 0 1 >> /etc/fstab" >> /mnt/setup-chroot.sh
|
echo "echo PARTUUID=$(blkid -s PARTUUID -o value /dev/disk/by-id/${firstdisk}-part2) /boot/efi vfat nofail,x-systemd.device-timeout=0 0 1 >> /etc/fstab" >> /mnt/setup-chroot.sh
|
||||||
echo "mount /boot/efi && apt install -y grub-efi-amd64-signed shim-signed" >> /mnt/setup-chroot.sh
|
echo "errors=\$(mount /boot/efi 2>&1 1>/dev/null && apt install -y grub-efi-amd64-signed shim-signed 2>&1 1>/dev/null)" >> /mnt/setup-chroot.sh
|
||||||
|
echo 'if ! [ "$?" = "0" ]; then '>> /mnt/setup-chroot.sh
|
||||||
|
echo ' echo "Failed to mount EFI partition or install grub-EFI - $errors"' >> /mnt/setup-chroot.sh
|
||||||
|
echo " exit 1">> /mnt/setup-chroot.sh
|
||||||
|
echo "fi">> /mnt/setup-chroot.sh
|
||||||
|
|
||||||
echo 'echo "Done..."' >> /mnt/setup-chroot.sh
|
echo 'echo "Done..."' >> /mnt/setup-chroot.sh
|
||||||
|
|
||||||
if ! [ "$disks" = "" ]; then
|
if ! [ "$disks" = "" ]; then
|
||||||
@@ -282,7 +290,11 @@ echo "fi">> /mnt/setup-chroot.sh
|
|||||||
echo "echo \"Done.\"" >> /mnt/setup-chroot.sh
|
echo "echo \"Done.\"" >> /mnt/setup-chroot.sh
|
||||||
|
|
||||||
# you need sed to do this right!
|
# you need sed to do this right!
|
||||||
# GRUB_CMDLINE_LINUX="root=ZFS=rpool/ROOT/ubuntu" <--- replace this
|
echo 'echo ""' >> /mnt/setup-chroot.sh
|
||||||
|
echo 'echo "Modifying grub for ZFS root..."' >> /mnt/setup-chroot.sh
|
||||||
|
# check for errors here, it can happen
|
||||||
|
echo "sed -ir 's/GRUB_CMDLINE_LINUX=\".*\"/GRUB_CMDLINE_LINUX=\"root=ZFS=rpool/ROOT/ubuntu\"' /etc/defaults/grub" >> /mnt/setup-chroot.sh
|
||||||
|
echo 'echo "Done."' >> /mnt/setup-chroot.sh
|
||||||
|
|
||||||
echo 'echo ""' >> /mnt/setup-chroot.sh
|
echo 'echo ""' >> /mnt/setup-chroot.sh
|
||||||
echo 'echo "Updating grub..."' >> /mnt/setup-chroot.sh
|
echo 'echo "Updating grub..."' >> /mnt/setup-chroot.sh
|
||||||
@@ -306,9 +318,15 @@ echo "zfs set mountpoint=legacy rpool/var/tmp" >> /mnt/setup-chroot.sh
|
|||||||
echo "echo \"rpool/var/tmp /var/tmp zfs nodev,relatime 0 0\" >> /etc/fstab" >> /mnt/setup-chroot.sh
|
echo "echo \"rpool/var/tmp /var/tmp zfs nodev,relatime 0 0\" >> /etc/fstab" >> /mnt/setup-chroot.sh
|
||||||
echo "zfs set mountpoint=legacy rpool/tmp" >> /mnt/setup-chroot.sh
|
echo "zfs set mountpoint=legacy rpool/tmp" >> /mnt/setup-chroot.sh
|
||||||
echo "echo \"rpool/tmp /tmp zfs nodev,relatime 0 0\" >> /etc/fstab" >> /mnt/setup-chroot.sh
|
echo "echo \"rpool/tmp /tmp zfs nodev,relatime 0 0\" >> /etc/fstab" >> /mnt/setup-chroot.sh
|
||||||
echo "systemctl enable ssh">> /mnt/setup-chroot.sh
|
|
||||||
|
|
||||||
|
|
||||||
|
echo 'echo ""' >> /mnt/setup-chroot.sh
|
||||||
|
echo 'echo "Enabling SSH..."'>> /mnt/setup-chroot.sh
|
||||||
|
echo "errors=\$(systemctl enable ssh 2>&1 1>/dev/null && ufw allow in port 22 proto tcp 2>&1 1>/dev/null)">> /mnt/setup-chroot.sh
|
||||||
|
echo 'if ! [ "$?" = "0" ]; then '>> /mnt/setup-chroot.sh
|
||||||
|
echo ' echo "Failed to enable SSH - $errors"' >> /mnt/setup-chroot.sh
|
||||||
|
echo " exit 101">> /mnt/setup-chroot.sh
|
||||||
|
echo "fi">> /mnt/setup-chroot.sh
|
||||||
|
echo 'echo "Done."'>> /mnt/setup-chroot.sh
|
||||||
|
|
||||||
# create parker user automated way
|
# create parker user automated way
|
||||||
echo "useradd $admin" >> /mnt/setup-chroot.sh
|
echo "useradd $admin" >> /mnt/setup-chroot.sh
|
||||||
@@ -319,23 +337,19 @@ echo "echo '${admin}:${rootpassword}' | chpasswd" >> /mnt/setup-chroot.sh
|
|||||||
|
|
||||||
#create swap space, too if necessary
|
#create swap space, too if necessary
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
echo "exit 0" >> /mnt/setup-chroot.sh
|
echo "exit 0" >> /mnt/setup-chroot.sh
|
||||||
|
|
||||||
#exit 0
|
errors=$(chmod +x /mnt/setup-chroot.sh 2>&1 1>/dev/null)
|
||||||
|
if ! ["$?" = "0" ]; then
|
||||||
|
echo "Failed to set execution permission on chroot script - $errors"
|
||||||
|
exit 45
|
||||||
|
fi
|
||||||
|
|
||||||
|
results=`chroot /mnt /setup-chroot.sh`
|
||||||
|
if ! [ "$?" = "0" ]; then
|
||||||
|
echo "Error in chroot environment - $results"
|
||||||
|
exit $?
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
chmod +x /mnt/setup-chroot.sh
|
|
||||||
echo "Done."
|
|
||||||
chroot /mnt /setup-chroot.sh
|
|
||||||
#--login
|
|
||||||
|
|
||||||
#echo ""
|
#echo ""
|
||||||
#echo "Clearing chroot configuration script..."
|
#echo "Clearing chroot configuration script..."
|
||||||
|
|||||||
Reference in New Issue
Block a user