mirror of
https://github.com/EFForg/rayhunter.git
synced 2026-04-26 23:49:59 -07:00
62 lines
1.7 KiB
Bash
62 lines
1.7 KiB
Bash
#!/bin/env bash
|
|
|
|
install() {
|
|
if [[ -z "${SERIAL_PATH}" ]]; then
|
|
echo "SERIAL_PATH not set, did you run this from install-linux.sh or install-mac.sh?"
|
|
exit 1
|
|
fi
|
|
check_adb
|
|
force_debug_mode
|
|
setup_rootshell
|
|
setup_rayhunter
|
|
}
|
|
|
|
check_adb() {
|
|
if ! command -v adb &> /dev/null
|
|
then
|
|
echo "adb not found, please ensure it's installed or check the README.md"
|
|
exit 1
|
|
fi
|
|
}
|
|
|
|
force_debug_mode() {
|
|
# Force a switch into the debug mode to enable ADB
|
|
$(SERIAL_PATH) AT
|
|
echo -n "adb enabled, waiting for reboot"
|
|
until adb shell true 2> /dev/null
|
|
do
|
|
echo -n .
|
|
sleep 1
|
|
done
|
|
echo
|
|
echo "it's alive!"
|
|
}
|
|
|
|
setup_rootshell() {
|
|
_adb_push rootshell /tmp/
|
|
$(SERIAL_PATH) "AT+SYSCMD=mv /tmp/rootshell /bin/rootshell"
|
|
sleep 1
|
|
$(SERIAL_PATH) "AT+SYSCMD=chown root /bin/rootshell"
|
|
sleep 1
|
|
$(SERIAL_PATH) "AT+SYSCMD=chmod 4755 /bin/rootshell"
|
|
echo "we have root!"
|
|
adb shell /bin/rootshell -c id
|
|
}
|
|
|
|
_adb_push() {
|
|
adb push "$(dirname "$0")/$1" "$2"
|
|
}
|
|
|
|
setup_rayhunter() {
|
|
adb shell '/bin/rootshell -c "mkdir /data/rayhunter"'
|
|
_adb_push config.toml.example /data/rayhunter/config.toml
|
|
_adb_push rayhunter-daemon /data/rayhunter/
|
|
_adb_push scripts/rayhunter_daemon /tmp/rayhunter_daemon
|
|
_adb_push scripts/misc-daemon /tmp/misc-daemon
|
|
adb shell '/bin/rootshell -c "mv /tmp/rayhunter_daemon /etc/init.d/rayhunter_daemon"'
|
|
adb shell '/bin/rootshell -c "mv /tmp/misc-daemon /etc/init.d/misc-daemon"'
|
|
adb shell '/bin/rootshell -c "chmod 755 /etc/init.d/rayhunter_daemon"'
|
|
adb shell '/bin/rootshell -c "chmod 755 /etc/init.d/misc-daemon"'
|
|
adb shell '/bin/rootshell -c "/etc/init.d/rayhunter_daemon start"'
|
|
}
|