X-Git-Url: https://iankelling.org/git/?a=blobdiff_plain;f=fai%2Fconfig%2Ffiles%2Fboot%2Fchboot%2FDEFAULT;h=ed65c80595ca871327046cb5866b2dd9459406cc;hb=35b3e600869253a3b95c9d95b9b2541b85f3dfdc;hp=a8aa58497c386e94d3f5c676191530b56d520c49;hpb=cf778f7a65037a2a54e2b6008511f0a584326ce9;p=automated-distro-installer diff --git a/fai/config/files/boot/chboot/DEFAULT b/fai/config/files/boot/chboot/DEFAULT index a8aa584..ed65c80 100755 --- a/fai/config/files/boot/chboot/DEFAULT +++ b/fai/config/files/boot/chboot/DEFAULT @@ -16,8 +16,13 @@ # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -set -eE -o pipefail -trap 'echo "$0:$LINENO:error: \"$BASH_COMMAND\" returned $?" >&2' ERR +x="$(readlink -f "$BASH_SOURCE")" +f="${x%/*}/bash-trace" +if [[ -e $f ]]; then + source $f +else + source ${x%/*}/../bash-trace/DEFAULT +fi [[ $EUID == 0 ]] || exec sudo "$BASH_SOURCE" "$@" @@ -33,10 +38,10 @@ For example, boot_debianjessie. For a system without libreboot, which is failing completely to boot on one distro, here is how I did a chboot for it: # arch-pxe had been run previously -pxe-server treetowl arch -# reboot treetowl into arch live env +pxe-server some_hostname arch +# reboot some_hostname into arch live env pxe-server # disable pxe server -ssh root@treetowl +ssh root@some_hostname lsblk # identify boot dev. if boot dev is a raid, this could be repeated on all boot devs. mount /dev/sdd3 /mnt mount_point=/mnt/boot_debiantesting # the subvol i want to chboot to @@ -93,8 +98,8 @@ fi #### begin initial error checking ##### -if ! btrfs subvolume list $mnt | grep "_$distro$" &>/dev/null; then - echo "$0: error: _$distro$ not found in btrfs subvolume list $mnt:" +if ! btrfs subvolume list $mnt | grep "$distro$" &>/dev/null; then + echo "$0: error: $distro not found in btrfs subvolume list $mnt:" btrfs subvolume list $mnt exit 1 fi @@ -119,7 +124,7 @@ e grub-bios-setup -d $mount_point/grub/i386-pc -s -m $mount_point/grub/device.ma e umount $mount_point e mount $boot_disk$grub_extn $mount_point -e grub-editenv $mount_point/grubenv set last_boot=$distro +e grub-editenv $mount_point/grubenv set last_boot=/$distro e grub-editenv $mount_point/grubenv set did_fai_check=true e umount $mount_point e rmdir $mount_point