X-Git-Url: https://iankelling.org/git/?p=automated-distro-installer;a=blobdiff_plain;f=myfai-chboot-local;h=1845cd02d58c6c98114f3eaf4987e01cb1e699e3;hp=5140f68bb73f349bdf741974b1fbef7e7ba076c5;hb=845c2b9e9e7e25b3dfa3d7f750d0acae0e50caf4;hpb=11a2db1a576e78f58af7f1e7e4c83422635b630d diff --git a/myfai-chboot-local b/myfai-chboot-local index 5140f68..1845cd0 100755 --- a/myfai-chboot-local +++ b/myfai-chboot-local @@ -1,5 +1,8 @@ #!/bin/bash # note, this script gets piped to bash, so cant cd to current dir + +[[ $EUID == 0 ]] || exec sudo "${BASH_SOURCE}" "$@" + set -eE -o pipefail trap 'echo "$0:$LINENO:error: \"$BASH_COMMAND\" returned $?" >&2' ERR @@ -29,15 +32,10 @@ while [[ $1 == -* ]]; do esac done -[[ $EUID == 0 ]] || exec sudo "${BASH_SOURCE}" "$@" - -e() { - echo "$*" - if ! "$@"; then - echo "$0: error: exit code $? from: $*" - exit 1 - fi -} +pre="${0##*/}:" +m() { printf "$pre %s\n" "$*"; "$@"; } +e() { printf "$pre %s\n" "$*"; } +err() { echo "[$(date +'%Y-%m-%d %H:%M:%S%z')]: $pre: $*" >&2; } host=$1 @@ -67,6 +65,7 @@ else exit 1 fi ip=$ip/32 + echo "$0: found ip of $host: $ip" fi if modprobe nfsd &>/dev/null; then @@ -83,7 +82,7 @@ if modprobe nfsd &>/dev/null; then if [[ -w /etc/exports ]]; then sed -ri --follow-symlinks '\%^/srv/fai/%d' /etc/exports cat >>/etc/exports <