vlmcs.d 666 B

123456789101112131415161718192021222324252627282930313233343536
  1. #!/bin/bash
  2. MyPort="1688"
  3. MyPath="$(dirname `readlink -f "$0"`)"
  4. MyExec="${MyPath}/vlmcsdmulti"
  5. [ -f "${MyExec}" ] || exit 1
  6. [ -n "$MyPort" ] && iptables -I INPUT -p tcp --dport ${MyPort} -j ACCEPT
  7. START(){
  8. kill -9 $(ps -C vlmcsd -o pid=) >>/dev/null 2>&1;
  9. kill -9 $(ps -C vlmcsdmulti -o pid=) >>/dev/null 2>&1;
  10. "${MyExec}" vlmcsd >>/dev/null 2>&1;
  11. }
  12. PORT(){
  13. nc -w 1 -vz 0.0.0.0 "${MyPort}" >>/dev/null 2>&1;
  14. [ "$?" == "0" ] && echo "0" || echo "1";
  15. }
  16. SCAN(){
  17. if [[ "$(PORT)" == "0" ]]; then
  18. sleep 300;
  19. else
  20. START;
  21. sleep 10;
  22. fi
  23. }
  24. command -v nc >>/dev/null 2>&1
  25. if [ $? -ne 0 ]; then
  26. START;
  27. exit 0;
  28. fi
  29. while true; do SCAN; done