上一次我们使用NPS自动注册的方式,在被控端上实现了自动创建NPC客户端链接。
Linux主机自动注册NPS客户端(脚本化)
但是在使用过程中我发现存在很多的问题,如果被控端重启客户端或者出现了多个NPS时会造成冲突,所以考虑升级NPC客户端来解决这些问题
采用service文件的方式运行NPC客户端,并添加开机自启动,防止机器以外重启导致的NPS连接失效
如果使用的也是之前的自动化注册方式,可以直接使用此脚本进行升级,如不同,请验证环境再次尝试!!!
#! /bin/bash
number=$(pgrep npc1)
cmd=$(ps -p $number -o cmd --no-headers)
modify_service(){
cat <<EOF > /usr/lib/systemd/system/npc1.service
[Unit]
Description=NPC Client Service
After=network.target
[Service]
Type=simple
ExecStart=/usr/bin$cmd &> /var/log/npc1.log &
Restart=always
[Install]
WantedBy=multi-user.target
EOF
}
reload_system(){
systemctl daemon-reload
systemctl enable npc1 > /dev/null 2>&1
systemctl start npc1
kill -9 $number > /dev/null 2>&1 &
}
check_npc1(){
if systemctl is-active --quiet npc1.service; then
echo -e "\e[32m客户端升级成功!!!\e[0m"
else
echo -e "\e[31m客户端升级失败,请手动检查程序!!!\e[0m"
fi
}
main(){
modify_service
reload_system
check_npc1
}
main