X-Git-Url: https://iankelling.org/git/?p=automated-distro-installer;a=blobdiff_plain;f=fai%2Fconfig%2Ffiles%2Froot%2Ffai-check%2FVOL_BULLSEYE_BOOTSTRAP;h=1d7b5c7d296115f565f6fe379d54a56b427ce468;hp=6717987e003a25502fc752c9eed6daadd2780d44;hb=1e6019a5846160b3f62fc94357e16944b5b3527b;hpb=137ffae7de84a51c4b438ccf2fb50f5571f522a6 diff --git a/fai/config/files/root/fai-check/VOL_BULLSEYE_BOOTSTRAP b/fai/config/files/root/fai-check/VOL_BULLSEYE_BOOTSTRAP index 6717987..1d7b5c7 100755 --- a/fai/config/files/root/fai-check/VOL_BULLSEYE_BOOTSTRAP +++ b/fai/config/files/root/fai-check/VOL_BULLSEYE_BOOTSTRAP @@ -7,7 +7,7 @@ trap 'echo "$0:$LINENO:error: \"$BASH_COMMAND\" returned $?" >&2' ERR usage() { cat < deadline )); then echo "fai-check: hit $NETWORK_TIMOUT_SECS s tftp server timeout" return 0 fi sleep 1 done - m pxe-kexec -n --ignore-whitelist -l fai-generated faiserver ||: + m pxe-kexec -n --ignore-whitelist -l fai-generated $faiserver ||: } +force=false case $1 in + -h|--help) + usage + ;; -f|--force) - try-kexec - exit + force=true + shift ;; esac +faiserver=${1:-faiserver} + + +if $force; then + try-kexec + exit +fi first=true for dev in $(btrfs fi show / | sed -rn 's#^\s*devid\s.*\s([^0-9 ]+)\S+$#\1#p' \ |sort); do + found=false # Decide which is my grub_ext partition. see partition.DEFAULT file - # for details - if [[ $(blockdev --getsize64 ${dev}4) == 8388608 ]]; then - # Old partition scheme - grub_extn=${dev}4 - elif [[ $(blockdev --getsize64 ${dev}5) == 8388608 ]]; then - # Old partition scheme - grub_extn=${dev}5 - else - grub_extn=${dev}7 + # for details. currently it is 4 + for (( i=4; i<=7; i++ )); do + if [[ $(blockdev --getsize64 ${dev}$i) == 8388608 ]]; then + grub_extn=${dev}$i + break + fi + done + if ! $found; then + echo "$0: error: failed to find grub_ext partition." + exit 1 fi mount $grub_extn /mnt if $first; then