X-Git-Url: https://iankelling.org/git/?a=blobdiff_plain;f=wrt-setup;h=c86a0d5e1b8d4da92af5b783f17e6602378ef109;hb=845c2b9e9e7e25b3dfa3d7f750d0acae0e50caf4;hp=9ac518afca061bf9f20a3928eb4c557f26f2e25e;hpb=43fcfaa6bcf02035141025b12a408a5ef10833f3;p=automated-distro-installer diff --git a/wrt-setup b/wrt-setup index 9ac518a..c86a0d5 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,43 @@ 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 # 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 </etc/opkg/customfeeds.conf <<'EOF' +src/gz openwrt_packages http://downloads.openwrt.org/releases/19.07.3/packages/mips_24kc/packages +fi +EOF + if ! opkg list-installed|grep bash; then opkg update opkg install bash fi export HOME_DOMAIN=$HOME_DOMAIN -export WIRELESSMAC=$WIRELESSMAC wrt-setup-local $@ -EOF +EOFOUTER