Files
quectel-rgmii-toolkit/ipk-source/sdxpinn-quecmanager-beta/CONTROL/preinst
Cameron Thompson 3352a86548 QuecManager Beta install improvements
Made it so this package runs rc sync only once and waits 3 seconds before doing so in case init-watchdog is also responding.
2025-01-23 18:33:37 -05:00

57 lines
1.7 KiB
Bash
Executable File

#!/bin/ash
if [ -f /usr/bin/rc_sync ]; then
echo "/usr/bin/rc_sync exists. Continuing..."
else
echo "/usr/bin/rc_sync not found. Downloading..."
curl -fsSL https://raw.githubusercontent.com/iamromulan/quectel-rgmii-toolkit/SDXPINN/ipk-source/sdxpinn-mount-fix/root/usr/bin/rc_sync -o /usr/bin/rc_sync
chmod +x /usr/bin/rc_sync
fi
echo "Cleaning anything that might be left fron old versions"
echo "Stopping QuecManager Services and removing from rc.local..."
# Remove services from rc.local if present
if sed -i '/\/www\/cgi-bin\/home\/log_signal_metrics\.sh &/d' /etc/rc.local; then
echo "Removed log_signal_metrics.sh entry from rc.local."
else
echo "Warning: Failed to remove log_signal_metrics.sh entry or it was not found."
fi
if sed -i '/\/www\/cgi-bin\/settings\/change_sms_code\.sh &/d' /etc/rc.local; then
echo "Removed change_sms_code.sh entry from rc.local."
else
echo "Warning: Failed to remove change_sms_code.sh entry or it was not found."
fi
# Define a list of script file names to check and stop
SCRIPTS="
log_signal_metrics.sh
change_sms_code.sh
"
# Loop through each script, check if it's running, and kill it if necessary
echo "Checking and stopping running scripts..."
for SCRIPT in $SCRIPTS; do
PIDS=$(pgrep -f "$SCRIPT")
if [ -n "$PIDS" ]; then
echo "Stopping $SCRIPT (PIDs: $PIDS)..."
for PID in $PIDS; do
if kill -TERM "$PID"; then
echo "Successfully stopped PID $PID."
else
echo "Error: Failed to stop PID $PID."
fi
done
else
echo "$SCRIPT is not running. Nothing to stop."
fi
done
service quecmanager-services stop
service quecmanager-services disable
echo "Cleanup complete."
exit 0