# 数据目录说明 FrpcPilot 以实际安装位置保存业务数据。安装目录中没有数据库或设置文件时,直接创建空数据库并使用默认设置。旧版系统应用数据目录中的文件不会被读取、复制或删除,需要使用的服务器与隧道请在新版中重新配置。 ## Windows 目录示例 安装在 `D:\software\FrpcPilot` 时: ```text D:\software\FrpcPilot\ ├── frpcpilot.exe ├── data\ │ ├── frpcpilot.db # 服务器、隧道、frp 记录 │ ├── preferences.json # 语言、外观、关闭行为等设置 │ └── storage.lock # 防止多个进程同时使用数据目录 ├── frp\versions\ # 各版本压缩包、解压文件和导入的程序 ├── run\frpc.toml # 启动穿透时根据数据库重新生成 ├── webview\ # Windows / Linux 浏览器数据与缓存 ├── cache\ # 应用缓存 ├── logs\ # 应用日志目录 └── tmp\ # 应用与更新器使用的临时目录 ``` SQLite 的 journal / WAL / SHM 文件随数据库保存在 `data` 中。frpc 的工作目录是 `run`,相对路径的运行产物留在这里;实时日志仍输出到界面,不额外保存日志文件。导入的 frpc / frps 会复制到安装目录,原文件不修改。 ## 各平台位置 | 平台 | 数据根目录 | | --- | --- | | Windows | `frpcpilot.exe` 所在目录 | | macOS `.app` | `.app` 同级的 `FrpcPilot-data` | | Linux AppImage | `APPIMAGE` 指向的实际文件所在目录 | | Linux 普通二进制 / deb | 实际可执行文件所在目录 | macOS 使用应用包同级目录,避免破坏签名或在更新器替换应用包时丢失数据。AppImage 的临时只读挂载目录不会用于存储业务数据。开发构建使用可执行文件旁的 `FrpcPilot-dev`,与正式版配置隔离。 安装目录必须允许当前用户写入。Windows `Program Files`、macOS `/Applications`、Linux deb 默认的 `/usr/bin` 等位置可能不可写,此时应用会显示错误并停止,不回退到系统默认的应用数据目录。建议使用当前用户可写的专用安装文件夹;Linux 推荐将 AppImage 放在自己的应用目录。 macOS WKWebView 不支持任意指定持久化目录,其系统管理的浏览器缓存仍可能写入用户 Library;应用设置保存在 `data/preferences.json`。操作系统、WebView 运行时安装、崩溃报告以及系统安装器自身生成的文件,也不能保证完全避开系统盘。 ## 备份与安装位置变更 备份当前数据时,先退出软件,再备份整个安装目录;macOS 需要备份同级的 `FrpcPilot-data`。数据库和 `run/frpc.toml` 含认证信息,请按私密文件保存。 程序不自动修正安装位置变更前保存的 frp 绝对路径。移动安装目录后,如原路径失效,请重新下载或导入 frpc。不同操作系统的二进制不兼容,需要使用目标平台的 frpc。