From 896f57cc86a9babea7bdb2bf39d95ba2c77beca6 Mon Sep 17 00:00:00 2001 From: Ian Kelling Date: Tue, 12 Jul 2016 10:07:38 -0700 Subject: [PATCH] don't have distros we aren't booting waiting to boot without pass --- README | 8 +++++++- chboot | 12 ++++++++++-- 2 files changed, 17 insertions(+), 3 deletions(-) diff --git a/README b/README index e1ceffd..309d5ff 100644 --- a/README +++ b/README @@ -8,9 +8,15 @@ Scripts meant to be called interactively: arch-init-remote # install arch (after it's been booted into it's setup env) +chboot # Set grub to boot into a different distro (installed earlier) +dsfull # install & setup a new distro (if data partition already synced) fai-revm # test fai on a fresh vm faiserver-revm # create a vm which is a fai server faiserver-uninstall -fresize # resize swap or boot partitions in a host created with my fai setup +fresize # resize swap or boot partitions in a host pxe-server # temporarily enable (usually) fai or arch boot server wrt-setup-remote # setup my router + + + PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND +24412 nobody 30 10 33.209g 0.014t 1192 R 96.0 91.2 45:27.66 find \ No newline at end of file diff --git a/chboot b/chboot index 64e499f..609b41d 100755 --- a/chboot +++ b/chboot @@ -11,6 +11,8 @@ trap 'echo "$0:$LINENO:error: \"$BASH_COMMAND\" returned $?" >&2' ERR [[ $EUID == 0 ]] || exec sudo "$BASH_SOURCE" "$@" + +###### begin command line parsing ##### reboot=true while [[ $1 == -* ]]; do case $1 in @@ -23,20 +25,25 @@ done distro=$1 -###### end command line parsing ##### - if [[ ! $distro ]]; then echo "available distros:" btrfs subvolume list /boot | sed -rn 's/^.*boot_(.*)/\1/p' exit 0 fi +###### end command line parsing ##### + + +#### begin initial error checking ##### + if ! btrfs subvolume list /boot | grep "_$distro$" &>/dev/null; then echo "$0: error: _$distro$ not found in btrfs subvolume list /boot:" btrfs subvolume list /boot exit 1 fi +#### end initial error checking ##### + e() { echo "$@"; "$@"; } boot_dev=$(mount | sed -rn "s#^(\S+) on /boot .*#\1#p") @@ -56,5 +63,6 @@ e umount $mount_point e rmdir $mount_point if $reboot; then + systemctl stop keyscriptoff.service reboot now fi -- 2.30.2