Update agent.sh
This commit is contained in:
@@ -1,5 +1,5 @@
|
|||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
# blog.52013120.xyz
|
# nezha固定版本v0.20.5的安装agent脚本
|
||||||
|
|
||||||
NZ_BASE_PATH="/opt/nezha"
|
NZ_BASE_PATH="/opt/nezha"
|
||||||
NZ_DASHBOARD_PATH="${NZ_BASE_PATH}/dashboard"
|
NZ_DASHBOARD_PATH="${NZ_BASE_PATH}/dashboard"
|
||||||
@@ -51,16 +51,28 @@ info() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
geo_check() {
|
geo_check() {
|
||||||
|
# 初始化变量
|
||||||
|
isCN=false
|
||||||
|
|
||||||
|
# 检查是否有curl命令
|
||||||
|
if ! command -v curl >/dev/null 2>&1; then
|
||||||
|
info "curl 未安装,跳过地理位置检测,使用默认源"
|
||||||
|
return
|
||||||
|
fi
|
||||||
|
|
||||||
api_list="https://blog.cloudflare.com/cdn-cgi/trace https://dash.cloudflare.com/cdn-cgi/trace https://developers.cloudflare.com/cdn-cgi/trace"
|
api_list="https://blog.cloudflare.com/cdn-cgi/trace https://dash.cloudflare.com/cdn-cgi/trace https://developers.cloudflare.com/cdn-cgi/trace"
|
||||||
ua="Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Firefox/81.0"
|
ua="Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Firefox/81.0"
|
||||||
|
|
||||||
for url in $api_list; do
|
for url in $api_list; do
|
||||||
text="$(curl -A "$ua" -m 10 -s "$url")"
|
text="$(curl -A "$ua" -m 10 -s "$url" 2>/dev/null)"
|
||||||
endpoint="$(echo "$text" | sed -n 's/.*h=\([^ ]*\).*/\1/p')"
|
if [ $? -eq 0 ] && [ -n "$text" ]; then
|
||||||
if echo "$text" | grep -qw 'CN'; then
|
endpoint="$(echo "$text" | sed -n 's/.*h=\([^ ]*\).*/\1/p')"
|
||||||
isCN=true
|
if echo "$text" | grep -qw 'CN'; then
|
||||||
break
|
isCN=true
|
||||||
elif echo "$url" | grep -q "$endpoint"; then
|
break
|
||||||
break
|
elif echo "$url" | grep -q "$endpoint"; then
|
||||||
|
break
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
}
|
}
|
||||||
@@ -120,8 +132,17 @@ before_show_menu() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
install_base() {
|
install_base() {
|
||||||
(command -v curl >/dev/null 2>&1 && command -v wget >/dev/null 2>&1 && command -v unzip >/dev/null 2>&1 && command -v getenforce >/dev/null 2>&1) ||
|
# 检查必要的命令是否存在,如果不存在则安装
|
||||||
(install_soft curl wget unzip)
|
missing_tools=""
|
||||||
|
|
||||||
|
command -v curl >/dev/null 2>&1 || missing_tools="$missing_tools curl"
|
||||||
|
command -v wget >/dev/null 2>&1 || missing_tools="$missing_tools wget"
|
||||||
|
command -v unzip >/dev/null 2>&1 || missing_tools="$missing_tools unzip"
|
||||||
|
|
||||||
|
if [ -n "$missing_tools" ]; then
|
||||||
|
info "正在安装必要的工具:$missing_tools"
|
||||||
|
install_soft $missing_tools
|
||||||
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
install_arch() {
|
install_arch() {
|
||||||
@@ -181,11 +202,7 @@ install_agent() {
|
|||||||
sudo mkdir -p $NZ_AGENT_PATH
|
sudo mkdir -p $NZ_AGENT_PATH
|
||||||
|
|
||||||
echo "正在下载监控端"
|
echo "正在下载监控端"
|
||||||
if [ -z "$CN" ]; then
|
NZ_AGENT_URL="${GITHUB_URL}/sky22333/shell/releases/download/${_version}/nezha-agent_linux_${os_arch}.zip"
|
||||||
NZ_AGENT_URL="${GITHUB_URL}/sky22333/shell/releases/download/${_version}/nezha-agent_linux_${os_arch}.zip"
|
|
||||||
else
|
|
||||||
NZ_AGENT_URL="${GITHUB_URL}/sky22333/shell/releases/download/${_version}/nezha-agent_linux_${os_arch}.zip"
|
|
||||||
fi
|
|
||||||
|
|
||||||
_cmd="wget -t 2 -T 60 -O nezha-agent_linux_${os_arch}.zip $NZ_AGENT_URL >/dev/null 2>&1"
|
_cmd="wget -t 2 -T 60 -O nezha-agent_linux_${os_arch}.zip $NZ_AGENT_URL >/dev/null 2>&1"
|
||||||
if ! eval "$_cmd"; then
|
if ! eval "$_cmd"; then
|
||||||
|
|||||||
Reference in New Issue
Block a user