我的日记 我的日记

记录精彩的程序人生

目录
Ubuntu 安装 Clash
/    

Ubuntu 安装 Clash

下载文件

1.clash-core 下载,Github地址:https://github.com/Kuingsmile/clash-core
2.yacd 下载, Github地址:https://github.com/haishanh/yacd

安装

1.把 clash-coreyacd 上传到服务中
2.解压文件
# 解压 clash,会得到 clash-linux-arm64-v1.18.0
gunzip clash-linux-arm64-v1.18.0.gz
# 解压 yacd
tar -xf yacd.tar.xz
# 重新命名一下
mv public dashboard
3.创建一个配置文件

创建一个文件(config.yml),或者由三方提供,在文件中加入如下,secert表示控制台访问密码,external-ui 表示dashboard绝对路径,external-controller表示控制台的端口

secert: 123456 
external-ui: /opt/clash/dashboard
external-controller: ':9990'
5.编写服务(本人测试基于Ubuntu)

创建一个clash.service

vim clash.service

内容如下

[Unit]
Description=Clash Service
After=network.target

[Service]
ExecStartPre=/bin/sh -c 'touch /opt/clash/clash.log' #启动前创建一个日志文件
ExecStart=/opt/clash/clash-linux-arm64-v1.18.0 -f /opt/clash/config.yml #启动命令 运行文件路径写绝对地址 配置文件没有就自己创建一个,或者由三方提供
Restart=on-failure
User=root #运行用户
Group=root #运行组

StandardOutput=append:/opt/clash/clash.log #配置日志输出
StandardError=append:/opt/clash/clash.log  #配置日志输出


[Install]
WantedBy=multi-user.target

创建文件链接

# 创建一个链接
ln -s /opt/clash/clash.service /etc/systemd/system/clash.service
6.编写启动脚步

创建一个manage_clash.sh文件,内容如下

#!/bin/bash

# 查询 Clash 服务状态
status=$(systemctl is-active clash.service)

# 显示当前状态
echo "Clash 服务当前状态: $status"

ip=$(ip addr show wlan0 | grep 'inet ' | awk '{print $2}' | cut -d'/' -f1)
echo "UI访问地址:http://$ip:9990/ui"

# 提供选项
echo "请选择一个操作:"
echo "1) 启动 Clash"
echo "2) 重启 Clash"
echo "3) 停止 Clash"
echo "4) 设置 Clash 开机自启"
echo "5) 取消 Clash 开机自启"
echo "6) 设置本地代理"
echo "7) 去除本地代理"
echo "8) 退出"

# 读取用户输入
read -p "请输入您的选择 [1-8]: " choice

# 根据用户输入执行相应的操作
case $choice in
    1)
        if [ "$status" == "active" ]; then
            echo "Clash 服务已在运行中."
        else
            echo "正在启动 Clash 服务..."
            sudo systemctl start clash.service
            echo "Clash 服务已启动."
        fi
        ;;
    2)
        echo "正在重启 Clash 服务..."
        sudo systemctl restart clash.service
        echo "Clash 服务已重启."
        ;;
    3)
        if [ "$status" == "inactive" ]; then
            echo "Clash 服务未在运行."
        else
            echo "正在停止 Clash 服务..."
            sudo systemctl stop clash.service
            echo "Clash 服务已停止."
        fi
        ;;
    4)
        echo "正在设置 Clash 服务开机自启..."
        sudo systemctl enable clash.service
        echo "Clash 服务已设置为开机自启."
        ;;
    5)
        echo "正在取消 Clash 服务开机自启..."
        sudo systemctl disable clash.service
        echo "Clash 服务已取消开机自启."
        ;;
    6)
        echo "请在终端在执行如下命令"
        echo "export http_proxy=\"http://127.0.0.1:7890\""
        echo "export https_proxy=\"http://127.0.0.1:7890\""
        ;;
    7)
        echo "正在去除本地代理..."
        unset http_proxy
        unset https_proxy
        echo "本地代理已去除."
        ;;
    8)
        echo "正在退出."
        exit 0
        ;;
    *)
        echo "无效选择。请选一个有效的操作."
        ;;
esac

运行脚步

image.png

控制台页面

image.png


标题:Ubuntu 安装 Clash
作者:adongs
地址:https://adongs.com/articles/2024/11/25/1732529227671.html