run_mmc.sh 2.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697
  1. #!/bin/sh
  2. set -x
  3. ##DO NOT ENABLE FW UPGRADE. FW UPGRADE CAN POTENTIALLY CORRUPT THE KERNEL REQUIRING YOU TO REFLASH THE STOCK FIRMWARE.
  4. DISABLE_FW_UPGRADE="true"
  5. HOSTNAME="WCV3"
  6. ENABLE_USB_ETH="false"
  7. ENABLE_USB_DIRECT="false"
  8. USB_DIRECT_MAC_ADDR="02:01:02:03:04:08"
  9. REMOTE_SPOTLIGHT="false"
  10. REMOTE_SPOTLIGHT_HOST="0.0.0.0"
  11. echo "run_mmc.sh start" > /dev/kmsg
  12. if [[ -d /configs/.ssh ]]; then
  13. echo "dropbear ssh config dir present"
  14. else
  15. echo "dropbear ssh config dir not present, creating"
  16. mkdir /configs/.ssh
  17. fi
  18. if [[ "$ENABLE_USB_ETH" == "true" ]]; then
  19. if [[ -f /media/mmc/wz_mini/swap ]]; then
  20. echo "swap exists, enable"
  21. swapon /media/mmc/wz_mini/swap
  22. else
  23. echo "swap missing, system stability with usb potentially comprimised"
  24. fi
  25. ifconfig eth0 down
  26. ifconfig wlan0 down
  27. /media/mmc/wz_mini/bin/busybox ip link set wlan0 name wlanold
  28. /media/mmc/wz_mini/bin/busybox ip addr flush dev wlanold
  29. /media/mmc/wz_mini/bin/busybox ip link set eth0 name wlan0
  30. ifconfig wlan0 up
  31. pkill udhcpc
  32. udhcpc -i wlan0 -x hostname:$HOSTNAME -p /var/run/udhcpc.pid -b
  33. # sleep 5
  34. mount -o bind /media/mmc/wz_mini/bin/wpa_cli.sh /bin/wpa_cli
  35. else
  36. echo "usb ethernet disabled"
  37. fi
  38. if [[ "$ENABLE_USB_DIRECT" == "true" ]]; then
  39. # if [[ ! -d /sys/class/net/usb0* ]]; then
  40. ##ONLY WORKS WITH g_ethernet enabled kernel
  41. ifconfig usb0 down
  42. ifconfig wlan0 down
  43. /media/mmc/wz_mini/bin/busybox ip link set wlan0 name wlanold
  44. /media/mmc/wz_mini/bin/busybox ip addr flush dev wlanold
  45. /media/mmc/wz_mini/bin/busybox ip link set usb0 name wlan0
  46. /media/mmc/wz_mini/bin/busybox ip link set wlan0 address $USB_DIRECT_MAC_ADDR
  47. ifconfig wlan0 up
  48. pkill udhcpc
  49. udhcpc -i wlan0 -x hostname:$HOSTNAME -p /var/run/udhcpc.pid -b
  50. sleep 5
  51. mount -o bind /media/mmc/wz_mini/bin/wpa_cli.sh /bin/wpa_cli
  52. else
  53. echo "usb direct disabled"
  54. fi
  55. if [[ "$DISABLE_FW_UPGRADE" == "true" ]]; then
  56. mkdir /tmp/Upgrade
  57. mount -t tmpfs -o size=1,nr_inodes=1 none /tmp/Upgrade
  58. echo -e "127.0.0.1 localhost \n127.0.0.1 wyze-upgrade-service.wyzecam.com" > /tmp/.hosts_wz
  59. mount --bind /tmp/.hosts_wz /etc/hosts
  60. fi
  61. if [[ "$REMOTE_SPOTLIGHT" == "true" ]]; then
  62. socat pty,link=/dev/ttyUSB0,raw tcp:$REMOTE_SPOTLIGHT_HOST:9000
  63. fi
  64. echo "set hostname"
  65. hostname $HOSTNAME
  66. echo "bind /etc/profile for local shell"
  67. mount --bind /media/mmc/wz_mini/etc/profile /etc/profile
  68. echo "Run dropbear ssh server"
  69. /media/mmc/wz_mini/bin/dropbearmulti dropbear -R -m
  70. sleep 3
  71. #Place commands here to run 30 seconds after boot
  72. #such as mount nfs, ping, etc
  73. #mount -t nfs -o nolock,rw,noatime,nodiratime 192.168.1.1:/volume1 /media/mmc/record