#!/bin/bash # initial the system PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin export PATH # step 0: prepare nml_user_name=${1} nml_user_home=${2} ss_user_name=${3} github_project="docker/compose" tag=$(wget -qO- -t1 -T2 "https://api.github.com/repos/${github_project}/releases/latest" | grep "tag_name" | head -n 1 | awk -F ":" '{print $2}' | sed 's/\"//g;s/,//g;s/ //g') # step 1: install echo "net.core.default_qdisc=fq" >> /etc/sysctl.conf #修改系统变量 echo "net.ipv4.tcp_congestion_control=bbr" >> /etc/sysctl.conf #修改系统变量 sysctl -p #保存生效 sysctl net.ipv4.tcp_available_congestion_control #执行 apt update apt -y install sudo wget curl ufw screen vim git python3-pip curl -fsSL https://get.docker.com | bash -s docker >${PWD}/step1 2>&1 curl -L https://github.com/docker/compose/releases/download/${tag}/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose && chmod +x /usr/local/bin/docker-compose echo "step 1: install has finished" # step 2: localize useradd -d /home/skf -m ${nml_user_name} usermod -s /bin/bash ${nml_user_name} usermod -aG sudo ${nml_user_name} # 有些发行版 RN 的就没有sudo adm usermod -aG adm ${nml_user_name} usermod -aG docker ${nml_user_name} echo `groups ${nml_user_name}` timedatectl set-timezone Asia/Shanghai echo `date` echo "step 2: localize has finished" # step 3: monitor mkdir -p /home/${nml_user_home}/myserve/serverstatus && wget --no-check-certificate -qO /home/${nml_user_home}/myserve/serverstatus/client-linux.py 'https://raw.githubusercontent.com/cppla/ServerStatus/master/clients/client-linux.py' chown -R ${nml_user_name}:${nml_user_name} /home/${nml_user_home}/myserve nohup python3 /home/${nml_user_home}/myserve/serverstatus/client-linux.py SERVER=serverstatus.ahfei.blog USER=ahfei-${ss_user_name} PASSWORD=A23456.. >/dev/null 2>&1 & echo "@reboot python3 /home/${nml_user_home}/myserve/serverstatus/client-linux.py SERVER=serverstatus.ahfei.blog USER=ahfei-${ss_user_name} PASSWORD=A23456.. >/dev/null 2>&1" >> /var/spool/cron/crontabs/${nml_user_name} chown -R ${nml_user_name}:${nml_user_name} /var/spool/cron/crontabs/${nml_user_name} chmod 600 /var/spool/cron/crontabs/${nml_user_name} echo "step 3: monitor has finished" # step 4: test cpu net etc wget https://cdn.geekbench.com/Geekbench-5.4.5-Linux.tar.gz && \ tar -xzvf Geekbench-*.tar.gz && rm Geekbench-*.tar.gz && \ mv Geek*/* ./ && rmdir Geekbench-* && \ echo "now geekbench5!" ./geekbench5 > result_geekbench5.txt docker run -d -e MODE=standalone -p 88:80 -it adolfintel/speedtest echo "`ip a | head -n13 | grep /24 | awk '{print$2}' | sed 's/\/24//g'`:88" >> result_geekbench5.txt echo "step 4: test has finished"