#!/bin/bash # Hysteria2 服务管理脚本 - 简化版本 # 定义颜色变量 RED='\033[0;31m' GREEN='\033[0;32m' YELLOW='\033[1;33m' BLUE='\033[0;34m' CYAN='\033[0;36m' NC='\033[0m' # No Color # 启动服务 start_service() { echo -e "${BLUE}启动 Hysteria2 服务...${NC}" if systemctl start hysteria-server.service; then echo -e "${GREEN}服务启动成功${NC}" else echo -e "${RED}服务启动失败${NC}" fi } # 停止服务 stop_service() { echo -e "${BLUE}停止 Hysteria2 服务...${NC}" if systemctl stop hysteria-server.service; then echo -e "${GREEN}服务停止成功${NC}" else echo -e "${RED}服务停止失败${NC}" fi } # 重启服务 restart_service() { echo -e "${BLUE}重启 Hysteria2 服务...${NC}" if systemctl restart hysteria-server.service; then echo -e "${GREEN}服务重启成功${NC}" else echo -e "${RED}服务重启失败${NC}" fi } # 启用服务 enable_service() { echo -e "${BLUE}启用 Hysteria2 服务 (开机自启)...${NC}" if systemctl enable hysteria-server.service; then echo -e "${GREEN}服务已设置为开机自启${NC}" else echo -e "${RED}服务启用失败${NC}" fi } # 禁用服务 disable_service() { echo -e "${BLUE}禁用 Hysteria2 服务 (取消开机自启)...${NC}" if systemctl disable hysteria-server.service; then echo -e "${GREEN}服务已取消开机自启${NC}" else echo -e "${RED}服务禁用失败${NC}" fi } # 查看服务状态 check_service_status() { echo -e "${CYAN}=== 服务状态 ===${NC}" if systemctl is-active --quiet hysteria-server.service; then echo -e "${GREEN}✅ 服务状态: 运行中${NC}" else echo -e "${RED}❌ 服务状态: 已停止${NC}" fi if systemctl is-enabled --quiet hysteria-server.service; then echo -e "${GREEN}✅ 开机自启: 已启用${NC}" else echo -e "${YELLOW}⚠️ 开机自启: 已禁用${NC}" fi echo "" echo -e "${BLUE}服务详细状态:${NC}" systemctl status hysteria-server.service --no-pager -l } # 主服务管理函数 manage_hysteria_service() { while true; do clear echo -e "${CYAN}=== Hysteria2 服务管理 ===${NC}" echo "" # 显示当前服务状态 if systemctl is-active --quiet hysteria-server.service; then echo -e "${GREEN}✅ 服务状态: 运行中${NC}" else echo -e "${RED}❌ 服务状态: 已停止${NC}" fi if systemctl is-enabled --quiet hysteria-server.service; then echo -e "${GREEN}✅ 开机自启: 已启用${NC}" else echo -e "${YELLOW}⚠️ 开机自启: 已禁用${NC}" fi echo "" echo -e "${YELLOW}服务操作:${NC}" echo -e "${GREEN}1.${NC} 启动服务" echo -e "${GREEN}2.${NC} 停止服务" echo -e "${GREEN}3.${NC} 重启服务" echo -e "${GREEN}4.${NC} 启用开机自启" echo -e "${GREEN}5.${NC} 禁用开机自启" echo -e "${GREEN}6.${NC} 查看详细状态" echo -e "${RED}0.${NC} 返回主菜单" echo "" echo -n -e "${BLUE}请选择操作 [0-6]: ${NC}" read -r choice case $choice in 1) start_service echo "" ;; 2) stop_service echo "" ;; 3) restart_service echo "" ;; 4) enable_service echo "" ;; 5) disable_service echo "" ;; 6) check_service_status echo "" ;; 0) break ;; *) echo -e "${RED}无效选项${NC}" sleep 1 ;; esac if [[ $choice -ne 0 ]]; then echo "" echo -e "${YELLOW}按回车键继续...${NC}" read -r fi done }