Clash配置备份与迁移:换设备不丢设置

2026-07-26 阅读约 10 分钟 实用教程

花时间精心配置的Clash规则、DNS设置、策略分组,如果因为换电脑、重装系统或者客户端更新而丢失,那绝对是一场灾难。很多用户在遇到这种情况后不得不从头开始配置,费时费力。

这篇教程将系统讲解Clash配置的备份与迁移方法,让你在任何情况下都能快速恢复工作环境。

为什么需要备份Clash配置

Clash配置不仅仅是一个订阅链接。一个成熟的用户通常花了大量时间调整:

你可能投入了大量精力的配置项
  • 自定义规则(rules):哪些网站走代理、哪些直连,这些规则是根据你的实际需求逐步完善的
  • DNS配置:防污染DNS、Fake-IP设置、域名解析策略,配置不当会导致各种问题
  • 策略组(proxy-groups):针对不同场景设置的策略组结构
  • 本地覆写(override/mixin):针对特定客户端的调整
  • 外部配置引用(profile):引用的规则集、IP集等外部资源
  • 客户端偏好设置:端口号、日志级别、TUN模式等

一旦丢失,即使你记得大致思路,重新配置也需要大量时间。更糟糕的是,如果忘记了某些细节配置,可能会导致一些微妙的网络问题难以排查。

配置文件的位置(各平台)

不同客户端的配置文件存放位置不同,备份前需要先找到它们:

Windows

各客户端配置目录
  • Clash for WindowsC:\Users\你的用户名\.config\clash\
  • Clash Verge RevC:\Users\你的用户名\.local\share\io.github.clash-verge-rev.clash-verge-rev\
  • Clash Verge(旧版)C:\Users\你的用户名\.local\share\io.github.clash-verge-rev.clash-verge-rev\
  • FlClashC:\Users\你的用户名\.config\flclash\

macOS

Android

Linux

快速定位技巧

如果你不确定配置目录在哪里,可以在客户端的设置页面中查找。大部分客户端都会在设置中显示当前配置目录的路径。Clash Verge Rev在"设置 → Clash内核 → 配置目录"中可以直接看到并打开。

哪些内容需要备份

完整的备份应该包含以下内容:

备份清单
  • config.yaml:主配置文件,包含所有规则、策略组、代理、DNS等核心配置。这是最重要的文件。
  • 订阅配置文件(profiles):你导入的订阅配置,通常存储在profiles/目录下。
  • 规则文件(rules):如果使用了外部规则文件(如.yaml.mrs格式的规则集),需要一并备份。
  • Country数据库Country.mmdbGeoLite2-ASN.mmdb等地理IP数据库文件。
  • 缓存文件(可选)cache.db包含DNS缓存和Fake-IP映射。不备份不影响功能,但恢复后需要重新建立缓存。
  • 客户端配置(可选):各客户端特有的设置文件,如Clash Verge Rev的verge.yaml
不需要备份的内容

以下文件不需要备份,可以在新设备上重新生成或下载: - 日志文件(logs目录) - 临时文件 - 过期的缓存数据

手动备份方法

方法一:直接复制整个配置目录

Windows操作步骤
  1. 关闭Clash客户端(确保完全退出,不是最小化)
  2. 打开文件资源管理器,导航到配置目录(如C:\Users\你的用户名\.config\clash\
  3. 选中整个clash文件夹
  4. 复制到你想要备份的位置(U盘、网盘、其他文件夹等)
  5. 建议重命名加上日期,如clash-backup-20260726
macOS/Linux操作步骤
  1. 关闭Clash客户端
  2. 打开终端
  3. 执行复制命令:
# 备份整个配置目录
cp -r ~/.config/clash/ ~/Desktop/clash-backup-20260726/

# 或者打包为压缩文件
tar -czf ~/Desktop/clash-backup-20260726.tar.gz ~/.config/clash/

方法二:使用客户端内置导出功能

部分客户端提供了配置导出功能:

推荐做法

客户端内置导出功能会打包所有相关配置,比手动复制更不容易遗漏。建议优先使用内置导出功能。手动复制配置目录作为备选方案。

自动备份方案

方案一:定时任务 + 本地备份

使用系统定时任务定期将配置目录备份到指定位置:

Windows:使用任务计划程序

设置步骤
  1. 创建一个备份脚本backup-clash.bat
@echo off
set SOURCE=C:\Users\你的用户名\.config\clash
set BACKUP=D:\Backup\clash
set DATE=%date:~0,4%%date:~5,2%%date:~8,2%

xcopy /E /I /Y "%SOURCE%" "%BACKUP%\clash-backup-%DATE%"
echo Backup completed at %DATE% >> "%BACKUP%\backup-log.txt"
添加到任务计划程序
  1. 打开"任务计划程序"(搜索"task"即可找到)
  2. 创建基本任务 → 命名"Clash配置备份"
  3. 触发器:每天 → 设置时间(如凌晨2点)
  4. 操作:启动程序 → 选择你的备份脚本
  5. 完成创建

macOS/Linux:使用cron

# 编辑crontab
crontab -e

# 添加以下行(每天凌晨2点备份)
0 2 * * * cp -r ~/.config/clash/ ~/Backup/clash-backup-$(date +\%Y\%m\%d)/

# 或者使用更完善的rsync方案
0 2 * * * rsync -av --delete ~/.config/clash/ ~/Backup/clash-latest/

方案二:云同步(推荐)

使用云盘同步工具(如坚果云、OneDrive、Dropbox)同步配置目录:

使用坚果云同步
  1. 安装并登录坚果云客户端
  2. 右键点击配置目录(如~/.config/clash/
  3. 选择"坚果云 → 同步到坚果云"
  4. 配置文件将自动实时同步到云端
使用OneDrive同步
  1. 将配置目录移动到OneDrive同步目录内
  2. 或者使用OneDrive的"添加文件夹"功能将配置目录加入同步
  3. 配置文件将自动同步到OneDrive云端
云同步注意事项

如果你的配置文件中包含代理服务器的密码等敏感信息,建议使用加密云盘或对备份文件加密后再上传。另外,避免在多台设备上同时编辑同一个同步目录中的配置文件,可能产生冲突。

跨平台迁移:Windows到Mac

从Windows迁移到Mac是最常见的跨平台迁移场景。以下是详细步骤:

步骤1:在Windows上导出配置
  1. 关闭Clash客户端
  2. 找到配置目录(如C:\Users\你的用户名\.config\clash\
  3. 打包为zip文件:clash-config-windows.zip
  4. 通过U盘、网盘或网络传输到Mac
步骤2:在Mac上安装Clash客户端
  1. 下载Mac版Clash客户端(推荐Clash Verge Rev或FlClash)
  2. 安装并首次运行(让它自动创建配置目录结构)
  3. 运行后立即关闭客户端
步骤3:导入配置
  1. 解压Windows的配置文件
  2. config.yaml复制到Mac的配置目录~/.config/clash/
  3. 如果有外部规则文件,一并复制到对应位置
  4. 复制Country.mmdb等数据库文件
  5. 重新启动Clash客户端
步骤4:平台特定调整
  1. 检查端口配置是否与Mac上其他应用冲突
  2. 如果需要TUN模式,在Mac上需要安装额外的驱动(通常客户端会提示)
  3. 调整系统代理设置(Mac的系统代理设置路径与Windows不同)
  4. 重新设置开机自启动

需要注意的平台差异

配置项 Windows macOS
配置目录 ~\.config\clash\ ~/.config/clash/
TUN模式 需要管理员权限 需要安装utun驱动
系统代理 通过注册表设置 通过网络设置设置
路径分隔符 \(反斜杠) /(正斜杠)
路径差异注意

如果你的config.yaml中使用了绝对路径引用规则文件或其他资源,迁移后需要修改路径。建议始终使用相对路径或~(home目录)引用,这样跨平台迁移时无需修改。

跨平台迁移:手机到新手机

Android到Android

方法一:应用内导出
  1. 在旧手机上打开Clash客户端
  2. 进入设置 → 找到"导出配置"或"备份"选项
  3. 导出的文件保存到手机存储
  4. 将文件传输到新手机(通过蓝牙、文件传输、网盘等)
  5. 在新手机上安装相同客户端
  6. 进入设置 → 导入配置 → 选择传输过来的备份文件
方法二:重新导入订阅
  1. 在新手机上安装Clash客户端
  2. 直接粘贴你的订阅链接导入
  3. 如果之前的规则是在本地修改的,需要手动重新配置
  4. 如果你的自定义配置在云端(如通过URL引用的远程配置),则会自动获取
最佳实践

将自定义规则和配置放在远程服务器上(如GitHub Gist),然后在Clash中通过URL引用。这样换设备时只需要导入一个URL,所有配置自动获取,无需手动迁移。

从Clash for Windows迁移到Clash Verge Rev

由于Clash for Windows已经停止维护,越来越多的用户迁移到Clash Verge Rev。虽然两者都基于Clash内核,但配置格式有些差异。

步骤1:导出Clash for Windows的配置
  1. 关闭Clash for Windows
  2. 导航到C:\Users\你的用户名\.config\clash\
  3. 复制整个clash目录作为备份
  4. 记录config.yaml中的关键自定义内容(规则、策略组、DNS等)
步骤2:安装并配置Clash Verge Rev
  1. 从GitHub下载并安装Clash Verge Rev
  2. 首次运行时,它会在自己的目录创建默认配置
  3. 导入你的订阅链接
步骤3:迁移自定义配置
  1. Clash Verge Rev使用"覆盖(Override)"机制来修改配置
  2. 在"订阅"页面点击你的订阅 → 编辑 → 使用"脚本编辑"或"覆写编辑"
  3. 将Clash for Windows中自定义的规则、DNS配置等迁移到覆盖配置中

配置迁移对照表

CFW到Verge Rev的配置映射
  • System Proxy开关:CFW主界面 → Verge Rev主界面"系统代理"开关
  • TUN Mode:CFW的enable-tun: true → Verge Rev的TUN模式开关
  • Mixin配置:CFW的mixin功能 → Verge Rev的"覆写(Override)"功能
  • Profiles:CFW的配置文件管理 → Verge Rev的"订阅"页面
  • Script:CFW的预处理脚本 → Verge Rev的"脚本"功能(支持JavaScript/Lua)
# Verge Rev覆写示例 (YAML格式)
# 用于在订阅配置基础上追加自定义内容

prepend-rules:
  - "DOMAIN-SUFFIX,google.com,Proxy"
  - "DOMAIN-SUFFIX,youtube.com,Proxy"

prepend-proxies:
  - name: "自定义节点"
    type: vmess
    server: example.com
    port: 443
    uuid: your-uuid
    alterId: 0
    cipher: auto

mixin-config:
  dns:
    enable: true
    enhanced-mode: fake-ip
    nameserver:
      - 223.5.5.5
      - 119.29.29.29
    fallback:
      - tls://8.8.8.8:853

多设备同步配置方案

方案一:远程配置 + 本地覆写

这是最推荐的多设备同步方案:

# 核心配置放在远程服务器(GitHub Gist / 自建服务器)
# 通过订阅链接引用

proxy-providers:
  my-sub:
    type: http
    url: "https://your-server.com/config.yaml"
    interval: 3600
    path: ./proxy-providers/my-sub.yaml

# 本地覆写只保留设备特定的设置
# 如端口号、TUN模式开关等

工作原理:

方案二:云盘同步

使用云盘同步配置目录,适合个人多设备使用:

# 目录结构示例
CloudDrive/
└── clash-config/
    ├── config.yaml          # 主配置
    ├── rules/               # 规则文件
    │   ├── proxy-rules.yaml
    │   └── direct-rules.yaml
    ├── verge.yaml           # Verge Rev设备设置(每台设备不同)
    └── README.md            # 说明文件
云同步的坑

不同设备的客户端配置(如端口号、TUN模式开关)可能不同。如果直接同步整个配置目录,一台设备的设置变更会影响所有设备。建议将"共享配置"和"设备特定配置"分离。

方案三:Git管理(高级)

对于技术用户,使用Git管理配置是最强大的方案:

Git配置管理步骤
  1. 创建私有Git仓库(GitHub/GitLab私有仓库)
  2. 将Clash配置文件初始化到仓库中
  3. 每台设备clone仓库并创建符号链接到配置目录
  4. 修改配置后commit + push,其他设备pull获取更新
# 在Linux/Mac上创建符号链接
# 先备份原配置目录
mv ~/.config/clash ~/.config/clash.bak

# 创建符号链接指向Git仓库
ln -s ~/Projects/clash-config ~/.config/clash

# 同步更新
cd ~/Projects/clash-config && git pull

常见迁移问题与解决

问题1:迁移后节点全部超时

可能原因:

解决方案:手动更新订阅。检查DNS配置是否需要针对新平台调整。确认端口未被本地防火墙阻止。

问题2:规则不生效

可能原因:

解决方案:检查所有外部引用文件的路径是否正确。确保规则集文件已完整迁移。查看日志确认是否有规则解析错误。

问题3:TUN模式无法使用

可能原因:

解决方案:按新平台的要求设置TUN模式所需的环境。详见本站的TUN模式配置指南

问题4:部分应用不走代理

可能原因:

解决方案:开启TUN模式接管所有流量。或在新平台上配置分应用代理(Android支持)。

迁移后检查清单
  • 确认所有节点可正常连接
  • 确认规则模式下国内网站直连、国外网站走代理
  • 确认DNS解析正常(无泄漏)
  • 确认需要的应用都走代理
  • 确认TUN模式(如使用)正常工作
  • 确认开机自启动已设置