X-Git-Url: https://iankelling.org/git/?a=blobdiff_plain;f=wrt-setup;h=7d3416bcd1d308d32d2b03e4ba307f4b553c853d;hb=e5fc90391646ea35b06250a90ad3aa3c1c2516dc;hp=9ac518afca061bf9f20a3928eb4c557f26f2e25e;hpb=43fcfaa6bcf02035141025b12a408a5ef10833f3;p=automated-distro-installer diff --git a/wrt-setup b/wrt-setup index 9ac518a..7d3416b 100755 --- a/wrt-setup +++ b/wrt-setup @@ -26,17 +26,26 @@ usage() { usage: ${0##*/} [-h|--help] [HOST/IP] [wrt-setup-local_ARGS] setup my router in general: dhcp, dns, etc. -Default HOST is root@10.0.0.1 +Default HOST is 10.0.0.1 or 10.2.0.1 if they are the gateway, otherwise +it must be specified. Note, use -m "''" to send an empty mac arg. When we get a new enough bash, we can use ${@@Q} to properly pass an empty var. + +Note, if we dont have internet yet, then just download the bash package, +scp it over manually and install it, eg: + +cat /etc/opkg/distfeeds.conf +wget https://librecmc.org/librecmc/downloads/snapshots/v1.5.1-core/packages/mips_24kc/packages/bash_5.0-3_mips_24kc.ipk +scp bash_5.0-3_mips_24kc.ipk wrt: +ssh wrt +opkg install /root/bash_5.0-3_mips_24kc.ipk EOF wrt-setup-local -h exit $1 } -h=root@10.0.0.1 case $1 in -h|--help) usage ;; @@ -44,20 +53,27 @@ case $1 in ?*) h="$1"; shift ;; esac +if [[ ! $h ]]; then + read -r _ _ gateway _ < <(ip -4 route get 8.8.8.8) + case $gateway in + 10.0.0.1|10.2.0.1) + h=root@$gateway + ;; + *) + echo "$0: error: gateway = $gateway and no HOST/IP specified" + exit 1 + ;; + esac +fi + echo "$0: host=$h" cat ~/.ssh/home.pub | ssh $h dd of=/etc/dropbear/authorized_keys 2>/dev/null -scp /a/work/libremanage/libremanage /a/bin/fai/wrt-setup-local /a/bin/cedit/cedit $h:/usr/bin +scp /a/work/libremanage/libremanage /a/bin/fai/wrt-init /a/bin/fai/wrt-setup-local /a/bin/cedit/cedit $h:/usr/bin # relay is built for openwrt 18.06.2, r7676-cddd7b4c77 sudo scp /q/root/shadow/router /p/c/machine_specific/wrt/etc/dropbear/dropbear_rsa_host_key \ - /a/opt/openwrt/source/bin/packages/mips_24kc/mypackages/relay_1.0-1_mips_24kc.ipk $h: -ssh $h <