#!/bin/bash
# 安装 Netdata（官方 kickstart，最新稳定版），并做基础自检
set -u
PW=yueling408
SUDO() { printf '%s\n' "$PW" | sudo -S -p '' "$@"; }

echo "== 下载官方安装脚本 =="
curl -fsSL --retry 3 -o /tmp/netdata-kickstart.sh https://get.netdata.cloud/kickstart.sh || {
    echo "下载失败"; exit 1; }
ls -l /tmp/netdata-kickstart.sh

echo "== 安装（非交互 / 稳定版 / 关遥测 / 不等后台任务）=="
SUDO sh /tmp/netdata-kickstart.sh --non-interactive --stable-channel --disable-telemetry --dont-wait 2>&1 | tail -40

echo
echo "== 安装后自检 =="
echo -n "服务状态: "; systemctl is-active netdata 2>/dev/null || echo "(未运行)"
echo -n "版本: "; netdata -v 2>/dev/null || /usr/sbin/netdata -v 2>/dev/null || echo "(取不到)"
echo -n "监听 19999: "; ss -ltn 2>/dev/null | grep -c ':19999' 
echo -n "本地 API: "; curl -s --noproxy '*' -o /dev/null -w "%{http_code}\n" http://127.0.0.1:19999/api/v1/info
echo "== 采集器目录 =="
ls /etc/netdata/go.d/ 2>/dev/null | head -10
echo "== 是否已有 nvidia_smi / portcheck 采集器 =="
for m in nvidia_smi portcheck; do
    printf "  %-12s " "$m"
    /usr/libexec/netdata/plugins.d/go.d.plugin -m "$m" --help >/dev/null 2>&1 && echo "可用" || \
    (strings /usr/libexec/netdata/plugins.d/go.d.plugin 2>/dev/null | grep -q "collector/$m" && echo "可用(binary)" || echo "未知")
done
